Production applications need to occasionally "clean up" persistent dirty set
In GemEnterprise, an RcIdentityBag is used as a persistent dirty set
for modified primary objects. During a 'refresh' operation, the
dirty set is emptied. However, for RcIdentityBags, the removeAll:
operation does not actually empty subcomponent 'add' bags. Instead,
it adds the elements to the subcomponent 'removal' bags. Over time,
as sessions are modifying primary objects, and the remote object
space is refreshing, the subcomponent 'removal' bags continue to grow.
Even though the persistent dirty set is logically getting emptied,
the RcIdentityBag itself is actually growing. For production
applications, the persistent dirty set needs to be occasionally
'cleaned up' to keep subcomponent bags at a reasonable size.
Use the following code in your application to perform the necessary
'GemStoneFederation _sessionState localObjectSpace dirtyObjects cleanupBag'