I've came across the following issue while trying to execute a memory
intensive task in a new object store coordinator.
I have two OSCs. OSC1 is app default. OSC2 is created to run the task.
I fetch a large bunch of objects in batches to OSC2, make changes to
them and save them. I dispose the EC after doing that. By now, I
expect the snapshots to be cleared from the EODatabse. And indeed,
they are cleared from EOF stack with OSC2 but before that
ERXObjectStoreCoordinatorSynchronizer syncs the snapshots to
EODatabase of OSC1 although they were absent there in the first place.
The syncing is done by UpdateSnapshotProcessor by calling
Is this a bug or a feature? If latter, how do I prevent the syncing
happening if I want to reduce memory consumption?
Right now, I'm using the following hack:
1. After creating an OSC2 I make a dummy fetch in it to force it's
addition to ERXObjectStoreCoordinatorSynchronizer coordinators.
2. I call ERXObjectStoreCoordinatorSynchronizer.synchronizer().removeObjectStore(osc)
It there a better way? Or do I miss something?
Get latest updates about Open Source Projects, Conferences and News.