`IProjectSnapshotManager.Changed` handlers are unordered
Many services dependent on ProjectSnapshotManager are imported as IProjectSnapshotChangeTrigger and that is the order in which they'll receive change notifications from the manager. There isn't a good way to represent ordering, so services update in a non-deterministic way. For example, DocumentVersionCache might not update before another service needs an accurate value from it.
There is a mechanism for "high priority" triggers, which will receive a notification before all non-high-priority. Still not ordered within each set however.
I know that's there, but there's just one service using it. FWIW, I don't know that there are any issues relating to ordering today, but I can't be certain. This is probably just a really hard reliability bug waiting to happen. :smile: I'd like to deal with it as part of #9806.
@DustinCampbell I'm going to assign to you for now to help the health of our unassigned yet triaged bug list. Let me know if that's incorrect, and feel free to update the milestone as needed
This isn't a critical issue. Just something I noticed. This should be backlog tech debt.
@DustinCampbell given IProjectSnapshotChangeTrigger is no more, can this be closed? There still isn't ordering of notifications of course.
Closing out non-cohosting tech debt.