I’ve read in multiple threads that missing a subscription event means a client can get out of sync, showing incorrect data in the UI, inconsistent with other clients that haven’t missed any events.
This makes me think that using Mongo instead of Apollo is better because when data syncs (no matter when), the client will gain a complete picture, and state will be consistent across clients.
Has anyone experienced inconsistency issues with GraphQL? And how did you deal with it?
Simply put: signals and effects (the name JS devs are using for dependency tracking reactivity in general these days, where ReactiveVar makes a signal, Tracker.autorun creates an effect) solve problems. One problem solved is inconsistent state (that you can get from a pull based approach when/if you miss an opportunity to pull).
With signals and effects, you describe what you need, your state starts correct, and always stays correct.