Bug 49109

GemStone/S 64 Bit

3.5.5, 3.5.4, 3.5.3, 3.5.2, 3.5.1, 3.5, 3.4.5, 3.4.4, 3.4.3, 3.4.2, 3.4.1, 3.4

3.6

Slow stone startup with large possibleDead

After a markForCollection, the possibleDead set holds objects that are candidates for garbage collection, until all sessions have voted and these objects are determined to be really dead (promoteToDead).  If the stone is shut down after the markForCollection, but before promoteToDead,  and the possibleDead set is very large, the restart of the stone may take a long time (30 minutes was observed with a 4 billion size possibleDead). This problem appears to be much less likely with possibleDead set sizes less than 2 billion.

To confirm this is the cause of a slow stone startup, execute pstack on the stone process.  If the code is in  StnLoopRemoveNonExistentFromPossDead, this bug is the cause of the slowness.

Workaround

Avoid shutting down while the possibleDead set is very large.  If shutdown is unavoidable, be prepared for the delay; the stone will start up correctly after the possibleDead are checked.


Last updated: 10/5/20