In my production app with millions of Y.Docs, we have a certain type of domain model entity that uses Yjs with garbage collection turned OFF because we utilize version snapshotting.
This tradeoff has not been a great one. While the snapshots are nice, the GC is far more useful. We’re finding docs with GC disabled are pretty awful for performance, disk space, and network throughput. I would advise anyone thinking about doing the same to strongly reconsider.
If I just turn GC back on for all these docs, anyone using the snapshots will get screwed over, but the ramifications of turning GC off have been bad enough that I’m considering it. Does anyone have any ideas for using these features together gracefully? There was talk of being able to use both, but I can’t find the example, and from what I remember it seemed like an “off the books” kind of thing.