Bug 41504

GemStone/S 64 Bit

3.1.0.2, 3.1.0.1, 3.1, 3.0.1, 3.0, 2.4.5.1, 2.4.5, 2.4.4.8, 2.4.4.7, 2.4.4.6, 2.4.4.5, 2.4.4.4, 2.4.4.3, 2.4.4, 2.4.3, 2.4.2.1, 2.4.2, 2.4.1, 2.4, 2.4, 2.3.1.6, 2.3.1, 2.3, 2.3, 2.2.5.4, 2.2.5.3, 2.2.5.2, 2.2.5.1, 2.2.5

All platforms

3.1.0.3, 2.4.6, 2.2.6.2

Zombie gem can hold commit record, cause CR backlog

When a session has logged out or been terminated, the stone normally waits
until it receives confirmation that the associated process is gone before
clearing the session's reference to a commit record.  Under rare conditions
it is possible for the stone to miss this confirmation, causing the
"zombie" gem to continue holding the commit record and causing a commit
record backlog to develop that cannot be cleared.

You can confirm you have a zombie session causing a commit record backlog
when  "System sessionsReferencingOldestCr" returns an array containing
a session ID that does not appear in "System currentSessions". Using System>>descriptionOfSession:
on this ID returns an array of nils.

Workaround

For version 2.3 and earlier, you will need to shutdown and restart the
stone to clear the condition.  For version 2.3.1 and later, login as SystemUser
and execute:

    System _cleanupZombieSession: <sessionId>

Warning:  make sure that this session really is a zombie.  Use of this
command on a session that is still alive will cause that session's current
transaction to fail.


Last updated: 5/5/14