Do I need to disable GC?


I’m confused about when GC needs to be enabled or disabled. In my setup I have n clients that are syncing with a backend client which persists to the database. My understanding is that if I send a state vector from the server to the client (initial load) and then send all of the updates since that state vector was created then everything will go well.

However, let’s say a web client gets disconnected for a minute and comes back online. By then I would have dropped some of the updates that it would need to catch up. In this situation, would it suffice to send the client’s state vector to the server and let the server compute a diff of updates to get the client up to date and vice versa for propagating the client updates to the server? Does GC have anything to do with this issue?


Based on my rough understanding, gc only clears the content of deletes.

So I believe it’s only relevant if you are using snapshots and trying to restore deleted items. Since you’re just talking about syncing to the latest version, gc is not relevant.