[GemStone-Smalltalk] Delegate GCed before client object
David Shaffer
shaffer at shaffer-consulting.com
Tue Nov 16 21:48:57 PST 2021
This is the same application described in my previous email (the one that restarts every 2 hours). I’m now dead in the water with the following error occurring on the VW client within a couple minutes of startup each time. I’m at a loss as to where to look for root causes for this…I’m guessing I’m doing something that I shouldn’t. My first guess was threading…but I’ve gone to great lengths to avoid any DB objects ending up in the other threads. If that seems like a likely culprit, I’ll dig deeper. Any hints? :)
-David
Unhandled exception: GBS Error - Delegate GCed before client object
----------------------------------------------------------------------
GbxMessageDispatcher>>basicRaise:message:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
errorSignal = GemStone.Gbs.GbsInterfaceError
errorString = 'GBS Error - Delegate GCed before client object'
Context PC = 4
----------------------------------------------------------------------
GbxMessageDispatcher>>raise:message:withArguments:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
errorSignal = GemStone.Gbs.GbsInterfaceError
aString = 'GBS Error - Delegate GCed before client object'
args = an Array[0]
Temporaries:
string = 'GBS Error - Delegate GCed before client object'
Context PC = 12
----------------------------------------------------------------------
GbxMessageDispatcher>>raise:message:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
errorSignal = GemStone.Gbs.GbsInterfaceError
aString = 'GBS Error - Delegate GCed before client object'
Context PC = 7
----------------------------------------------------------------------
GbxMessageDispatcher>>basicError:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
aString = 'Delegate GCed before client object'
Context PC = 14
----------------------------------------------------------------------
GbxMessageDispatcher(CstMessageDispatcher)>>error:withArguments:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
aString = 'Delegate GCed before client object'
args = an Array[0]
Temporaries:
string = 'Delegate GCed before client object'
Context PC = 11
----------------------------------------------------------------------
GbxMessageDispatcher(CstMessageDispatcher)>>error:
Receiver:
a GbxMessageDispatcher
Instance Variables:
handler = a CstMessageHandlerVw
Arguments:
aString = 'Delegate GCed before client object'
Context PC = 6
----------------------------------------------------------------------
GemStone.Gbs.GbxServerMapTableSegment>>beStrongAndFinalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Receiver:
a GemStone.Gbs.GbxServerMapTableSegment
Instance Variables:
upperBytes = 0
parent = a GemStone.Gbs.GbxServerMapNode
parentIndex = 153
needFinalization = true
Arguments:
noLongerReplicatedBuffer = GbxL8OopArray()
gcedBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
Temporaries:
tombstoneIndex = 729
offsetFromKey = 2
key = 6080341
delegate = nil
clientObj = November 17, 2021 0:00:00.000
Context PC = 168
----------------------------------------------------------------------
GemStone.Gbs.GbxServerMapNode>>beStrongAndFinalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Receiver:
a GemStone.Gbs.GbxServerMapNode
Instance Variables:
upperBytes = 0
notCachedToken = 'Not cached'
owningMap = a GemStone.Gbs.GbxServerMap
parentIndex = 1
tableSize = 221813
tally = 128835
Arguments:
noLongerReplicatedBuffer = GbxL8OopArray()
gcedBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
Temporaries:
minimumTableSize = nil
i = 153
Context PC = 20
----------------------------------------------------------------------
optimized [] in GemStone.Gbs.GbxServerMap>>beStrongAndFinalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Receiver:
an UndefinedObject
Arguments:
node = a GemStone.Gbs.GbxServerMapNode
Temporaries:
.noLongerReplicatedBuffer = GbxL8OopArray()
.gcedBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
Context PC = 7
----------------------------------------------------------------------
GemStone.Gbs.GbxServerMap(GemStone.Gbs.GbxOopKeyedDictionary)>>nodesDo:
Receiver:
a GemStone.Gbs.GbxServerMap
Instance Variables:
numNodeSlots = 64
notCachedToken = 'Not cached'
session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
isWeak = false
Arguments:
aBlock = BlockClosure [] in GemStone.Gbs.GbxServerMap>>beStrongAndFinalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Temporaries:
i = 1
node = a GemStone.Gbs.GbxServerMapNode
Context PC = 23
----------------------------------------------------------------------
GemStone.Gbs.GbxServerMap>>beStrongAndFinalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Receiver:
a GemStone.Gbs.GbxServerMap
Instance Variables:
numNodeSlots = 64
notCachedToken = 'Not cached'
session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
isWeak = false
Arguments:
noLongerReplicatedBuffer = GbxL8OopArray()
gcedBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
Context PC = 15
----------------------------------------------------------------------
GemStone.Gbs.GbxGciSingleTripInterface(GemStone.Gbs.GbxServerInterface)>>finalizeIntoNoLongerReplicatedBuffer:gcedBuffer:
Receiver:
a GemStone.Gbs.GbxGciSingleTripInterface
Instance Variables:
alteredOopBuffer = nil
byteFetchBuffer = nil
callSequencer = a GemStone.Gbs.GbxNonBlockingGciCallSequencer
clampedTravArgsBuffer = GbxGciClampedTravArgsSType with:
clampSpec = 1560322305
travBuff = 140394453450832
level = 4
retrievalFlags = 272
resultOop = 1101174273
dirtyOopBuffer = nil
eventDetector = a GbxWaitingEventDetector
gcedOopBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
longHolderBuffer = nil
longHolderBuffer2 = nil
needMoreTraversal = false
oopFetchBuffer = GbxL8OopArray(16r5CF83501 16r11A01 16r5D00A101 16r5D00A001 16r5D009F01 16r5D009E01 16r5D009D01 16r5D009C01 16r5D009B01 16r5D009A01 16r5D009901 16r5D009801 16r5D009701 16r5D009601 16r5D009501 16r5D009401 16r5D009301 16r5D009201 16r5D009101 16r5D009001 16r5D008F01 16r5D008E01 16r5D008D01 16r5D008C01 16r5D008B01 16r5D008A01 16r5D008901 16r5D008801 16r5D008701 16r5D008601 16r5D008501 16r5D008401 16r5D008301 16r5D008201 16r5D008101 16r5D008001 16r5D007F01 16r5D007E01 16r5D007D01 16r5D007C01 16r5D007B01 16r5D007A01 16r5D007901 16r5D007801 16r5D007701 16r5D007601 16r5D007501 16r5D007401 16r5D007301 16r5D007201 16r5D007101 16r5D007001 16r5D006F01 16r5D006E01 16r5D006D01 16r5D006C01 16r5D006B01 16r5D006A01 16r5D006901 16r5D006801 16r5D006701 16r5D006601 16r5D006501 16r5D006401 16r5D006301 16r5D006201 16r5D006101 16r5D006001 16r5D005F01 )
oopsNoLongerReplicatedBuffer = GbxL8OopArray()
singleStepIsRequested = false
storeTravDoArgsBuffer = GbxGciStoreTravDoArgsSType64v31 with:
doPerform = 3
doFlags = 0
alteredNumOops = 0
alteredCompleted = false
receiver = 1101174273
selector = a CPointer {invalid} (const char * )
args = a CPointer {invalid} (const OopType * )
numArgs = 0
environmentId = 0
storeTravBuff = a CPointer {039E31C8} (ByteType * )
alteredTheOops = a CPointer {invalid} (OopType * )
storeTravFlags = 11
noLongerReplicatedOops = a Set[0]
thisSession = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
traversalBufferManager = a GemStone.Gbs.GbxTraversalBufferManager
Arguments:
noLongerReplicatedBuffer = GbxL8OopArray()
gcedBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
Temporaries:
cache = a GemStone.Gbs.GbxServerMap
Context PC = 15
----------------------------------------------------------------------
GemStone.Gbs.GbxGciSingleTripInterface(GemStone.Gbs.GbxServerInterface)>>makeCacheStrongAndFinalizeIntoBuffers
Receiver:
a GemStone.Gbs.GbxGciSingleTripInterface
Instance Variables:
alteredOopBuffer = nil
byteFetchBuffer = nil
callSequencer = a GemStone.Gbs.GbxNonBlockingGciCallSequencer
clampedTravArgsBuffer = GbxGciClampedTravArgsSType with:
clampSpec = 1560322305
travBuff = 140394453450832
level = 4
retrievalFlags = 272
resultOop = 1101174273
dirtyOopBuffer = nil
eventDetector = a GbxWaitingEventDetector
gcedOopBuffer = GbxL8OopArray(16r4BD60E01 16r5CF78E01 16r4BD61001 16r5CF79001 16r4BD5E601 16r4BD5E801 16r5CFC4F01 16r5CFC5101 16r5CFBEE01 16r5CFBF001 16r5CF77101 16r55F26901 16r5CFC2C01 16r4BD60701 16r5CF78D01 16r4BD60F01 16r5CF78F01 16r4BD5E701 16r5CFBA501 16r5CFC4E01 16r5CFC5001 )
longHolderBuffer = nil
longHolderBuffer2 = nil
needMoreTraversal = false
oopFetchBuffer = GbxL8OopArray(16r5CF83501 16r11A01 16r5D00A101 16r5D00A001 16r5D009F01 16r5D009E01 16r5D009D01 16r5D009C01 16r5D009B01 16r5D009A01 16r5D009901 16r5D009801 16r5D009701 16r5D009601 16r5D009501 16r5D009401 16r5D009301 16r5D009201 16r5D009101 16r5D009001 16r5D008F01 16r5D008E01 16r5D008D01 16r5D008C01 16r5D008B01 16r5D008A01 16r5D008901 16r5D008801 16r5D008701 16r5D008601 16r5D008501 16r5D008401 16r5D008301 16r5D008201 16r5D008101 16r5D008001 16r5D007F01 16r5D007E01 16r5D007D01 16r5D007C01 16r5D007B01 16r5D007A01 16r5D007901 16r5D007801 16r5D007701 16r5D007601 16r5D007501 16r5D007401 16r5D007301 16r5D007201 16r5D007101 16r5D007001 16r5D006F01 16r5D006E01 16r5D006D01 16r5D006C01 16r5D006B01 16r5D006A01 16r5D006901 16r5D006801 16r5D006701 16r5D006601 16r5D006501 16r5D006401 16r5D006301 16r5D006201 16r5D006101 16r5D006001 16r5D005F01 )
oopsNoLongerReplicatedBuffer = GbxL8OopArray()
singleStepIsRequested = false
storeTravDoArgsBuffer = GbxGciStoreTravDoArgsSType64v31 with:
doPerform = 3
doFlags = 0
alteredNumOops = 0
alteredCompleted = false
receiver = 1101174273
selector = a CPointer {invalid} (const char * )
args = a CPointer {invalid} (const OopType * )
numArgs = 0
environmentId = 0
storeTravBuff = a CPointer {039E31C8} (ByteType * )
alteredTheOops = a CPointer {invalid} (OopType * )
storeTravFlags = 11
noLongerReplicatedOops = a Set[0]
thisSession = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
traversalBufferManager = a GemStone.Gbs.GbxTraversalBufferManager
Context PC = 14
----------------------------------------------------------------------
GemStone.Gbs.GbxServerInterfaceWithStats>>makeCacheStrongAndFinalizeIntoBuffers
Receiver:
a GemStone.Gbs.GbxServerInterfaceWithStats
Instance Variables:
statResource = a GbxSessionStatResource:
bytesSentByStoreTraversal: 213624
bytesTraversed: 7671328
changedObjNotifications: 0
classesMapped: 1970
dirtyPoolSize: 0
freeOopsFetched: 2000
gciCallsToGem: 754
gciCallsToGemTime: 9550798
gciErrors: 0
lostOtRoots: 0
nbEndResultNoProgress: 292
nbEndResultProgressed: 0
nbEndResultReady: 418
objectsStoredByTraversal: 1461
objectsTraversed: 126237
serverMapSize: 128835
sessionProtectInvocations: 153517
sessionSignals: 0
sigAborts: 0
storeTraversals: 101
traversalUnpackingTime: 0
traverseCallTime: 0
traverseCalls: 418
serverInterface = a GemStone.Gbs.GbxGciSingleTripInterface
Context PC = 3
----------------------------------------------------------------------
GemStone.Gbs.GbsSessionWithStats(GbsSession)>>startingFirstInteraction:
Receiver:
a GemStone.Gbs.GbsSessionWithStats
Instance Variables:
activeInteractions = an IdentitySet[0]
causeOfDeath = nil
clientTimeZone = a CompositeTimeZone
configuration = (GbsConfiguration default
alwaysUseGemCursor: false;
confirm: false;
generateClassConnectors: false;
libraryName: './libgcirpc-3.6.2-64.so';
removeInvalidConnectors: true;
verbose: false;
yourself)
copyReplicationClamp = nil
dependents = nil
dirtyPool = a GemStone.Gbs.GbxDirtyPool
eventHandlers = an IdentityDictionary[6]
eventDetectorErrorHandler = nil
freeOops = a GemStone.Gbs.GbxFreeOopStream
gbsm = a GemStone.Gbs.GbsSessionManagerWithStats
gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r1A11A01}
gsClassOrganizer = nil
isRemote = true
isUnwindingAsyncAbort = false
nestingLevel = 0
notCachedToken = 'Not cached'
parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
procBalancer = nil
replicatorManager = a GemStone.Gbs.GbxReplicatorManager
serverInterface = a GemStone.Gbs.GbxServerInterfaceWithStats
serverMap = a GemStone.Gbs.GbxServerMap
sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''
sessionId = 1
sessionProtect = a GemStone.Gbs.GbxSemaphoreWithStats
specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64
stats = a GbxSessionStatResource:
bytesSentByStoreTraversal: 213624
bytesTraversed: 7671328
changedObjNotifications: 0
classesMapped: 1970
dirtyPoolSize: 0
freeOopsFetched: 2000
gciCallsToGem: 754
gciCallsToGemTime: 9550798
gciErrors: 0
lostOtRoots: 0
nbEndResultNoProgress: 292
nbEndResultProgressed: 0
nbEndResultReady: 418
objectsStoredByTraversal: 1461
objectsTraversed: 126237
serverMapSize: 128835
sessionProtectInvocations: 153518
sessionSignals: 0
sigAborts: 0
storeTraversals: 101
traversalUnpackingTime: 0
traverseCallTime: 0
traverseCalls: 418
asyncAbortStartAction = nil
asyncAbortFinishAction = nil
Arguments:
anInteraction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Context PC = 7
----------------------------------------------------------------------
optimized [] in GbsSession>>startingInteraction:
Receiver:
an UndefinedObject
Temporaries:
.self = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
.anInteraction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Context PC = 13
----------------------------------------------------------------------
optimized [] in GbsSession>>sessionCritical:
Receiver:
an UndefinedObject
Temporaries:
.self = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
.aBlock = BlockClosure [] in GbsSession>>startingInteraction:
Context PC = 8
----------------------------------------------------------------------
GbxSessionRecursionLock(GbxRecursionLock)>>critical:
Receiver:
a GbxSessionRecursionLock
Instance Variables:
firstLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal
lastLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal
excessSignals = 0
lockingProcess = a Process in nil
eventDetectorThread = a Process in GemStone.Gbs.GbxCPrimInterface64v32>>gciPollSocket:forRead:
Arguments:
mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:
Temporaries:
terminationProtectionBlock = nil
activeProcess = a Process in nil
Context PC = 10
----------------------------------------------------------------------
GemStone.Gbs.GbxSemaphoreWithStats>>critical:
Receiver:
a GemStone.Gbs.GbxSemaphoreWithStats
Instance Variables:
semaphore = a GbxSessionRecursionLock[1]
statAdaptor = a GemStone.Gbs.GbxStatAdaptor
Arguments:
aBlock = BlockClosure [] in GbsSession>>sessionCritical:
Temporaries:
result = nil
start = a GemStone.Gbs.GbxStatAdaptor
Context PC = 8
----------------------------------------------------------------------
GemStone.Gbs.GbsSessionWithStats(GbsSession)>>sessionCritical:
Receiver:
a GemStone.Gbs.GbsSessionWithStats
Instance Variables:
activeInteractions = an IdentitySet[0]
causeOfDeath = nil
clientTimeZone = a CompositeTimeZone
configuration = (GbsConfiguration default
alwaysUseGemCursor: false;
confirm: false;
generateClassConnectors: false;
libraryName: './libgcirpc-3.6.2-64.so';
removeInvalidConnectors: true;
verbose: false;
yourself)
copyReplicationClamp = nil
dependents = nil
dirtyPool = a GemStone.Gbs.GbxDirtyPool
eventHandlers = an IdentityDictionary[6]
eventDetectorErrorHandler = nil
freeOops = a GemStone.Gbs.GbxFreeOopStream
gbsm = a GemStone.Gbs.GbsSessionManagerWithStats
gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r1A11A01}
gsClassOrganizer = nil
isRemote = true
isUnwindingAsyncAbort = false
nestingLevel = 0
notCachedToken = 'Not cached'
parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
procBalancer = nil
replicatorManager = a GemStone.Gbs.GbxReplicatorManager
serverInterface = a GemStone.Gbs.GbxServerInterfaceWithStats
serverMap = a GemStone.Gbs.GbxServerMap
sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''
sessionId = 1
sessionProtect = a GemStone.Gbs.GbxSemaphoreWithStats
specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64
stats = a GbxSessionStatResource:
bytesSentByStoreTraversal: 213624
bytesTraversed: 7671328
changedObjNotifications: 0
classesMapped: 1970
dirtyPoolSize: 0
freeOopsFetched: 2000
gciCallsToGem: 754
gciCallsToGemTime: 9550798
gciErrors: 0
lostOtRoots: 0
nbEndResultNoProgress: 292
nbEndResultProgressed: 0
nbEndResultReady: 418
objectsStoredByTraversal: 1461
objectsTraversed: 126237
serverMapSize: 128835
sessionProtectInvocations: 153519
sessionSignals: 0
sigAborts: 0
storeTraversals: 101
traversalUnpackingTime: 0
traverseCallTime: 0
traverseCalls: 418
asyncAbortStartAction = nil
asyncAbortFinishAction = nil
Arguments:
aBlock = BlockClosure [] in GbsSession>>startingInteraction:
Context PC = 14
----------------------------------------------------------------------
GemStone.Gbs.GbsSessionWithStats(GbsSession)>>startingInteraction:
Receiver:
a GemStone.Gbs.GbsSessionWithStats
Instance Variables:
activeInteractions = an IdentitySet[0]
causeOfDeath = nil
clientTimeZone = a CompositeTimeZone
configuration = (GbsConfiguration default
alwaysUseGemCursor: false;
confirm: false;
generateClassConnectors: false;
libraryName: './libgcirpc-3.6.2-64.so';
removeInvalidConnectors: true;
verbose: false;
yourself)
copyReplicationClamp = nil
dependents = nil
dirtyPool = a GemStone.Gbs.GbxDirtyPool
eventHandlers = an IdentityDictionary[6]
eventDetectorErrorHandler = nil
freeOops = a GemStone.Gbs.GbxFreeOopStream
gbsm = a GemStone.Gbs.GbsSessionManagerWithStats
gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r1A11A01}
gsClassOrganizer = nil
isRemote = true
isUnwindingAsyncAbort = false
nestingLevel = 0
notCachedToken = 'Not cached'
parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
procBalancer = nil
replicatorManager = a GemStone.Gbs.GbxReplicatorManager
serverInterface = a GemStone.Gbs.GbxServerInterfaceWithStats
serverMap = a GemStone.Gbs.GbxServerMap
sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''
sessionId = 1
sessionProtect = a GemStone.Gbs.GbxSemaphoreWithStats
specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64
stats = a GbxSessionStatResource:
bytesSentByStoreTraversal: 213624
bytesTraversed: 7671328
changedObjNotifications: 0
classesMapped: 1970
dirtyPoolSize: 0
freeOopsFetched: 2000
gciCallsToGem: 754
gciCallsToGemTime: 9550798
gciErrors: 0
lostOtRoots: 0
nbEndResultNoProgress: 292
nbEndResultProgressed: 0
nbEndResultReady: 418
objectsStoredByTraversal: 1461
objectsTraversed: 126237
serverMapSize: 128835
sessionProtectInvocations: 153520
sessionSignals: 0
sigAborts: 0
storeTraversals: 101
traversalUnpackingTime: 0
traverseCallTime: 0
traverseCalls: 418
asyncAbortStartAction = nil
asyncAbortFinishAction = nil
Arguments:
anInteraction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Context PC = 9
----------------------------------------------------------------------
optimized [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
Receiver:
an UndefinedObject
Temporaries:
.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
resultOrError = nil
completeResult = nil
Context PC = 7
----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
outerContext = nil
copiedValues = an Array[3]
Arguments:
aBlock = BlockClosure [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
Temporaries:
result = nil
Context PC = 4
----------------------------------------------------------------------
optimized [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
Receiver:
an UndefinedObject
Temporaries:
completeResult = nil
.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
resultOrError = nil
Context PC = 18
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
outerContext = nil
copiedValues = an Array[2]
Arguments:
anExceptionSelector = GemStone.Gbs.GbxReturnNotification
handlerBlock = BlockClosure [] in [] in GemStone.Gbs.GbxServerInteraction>>execute
Context PC = 18
----------------------------------------------------------------------
optimized [] in GemStone.Gbs.GbxServerInteraction>>execute
Receiver:
an UndefinedObject
Temporaries:
.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
resultOrError = nil
Context PC = 15
----------------------------------------------------------------------
BlockClosure>>ifCurtailed:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in GemStone.Gbs.GbxServerInteraction>>execute
outerContext = nil
copiedValues = an Array[2]
Arguments:
terminationBlock = BlockClosure [] in GemStone.Gbs.GbxServerInteraction>>execute
Context PC = 4
----------------------------------------------------------------------
GemStone.Gbs.GbxSingleTripServerTraversal(GemStone.Gbs.GbxServerInteraction)>>execute
Receiver:
a GemStone.Gbs.GbxSingleTripServerTraversal
Instance Variables:
argumentDelegates = nil
arguments = an Array[0]
fetchTraversal = nil
interactionState = a GemStone.Gbs.GbxInteractionState
replicationClampDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r5D00A101}
replication = nil
replicationLevel = 4
replicationScheme = Replication Scheme replicationSpec
resultDelegateOrError = nil
serverInterface = a GemStone.Gbs.GbxServerInterfaceWithStats
session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
shouldReplicateResultBodyAsDelegates = false
shouldReplicateResult = true
shouldSynchronize = true
statResource = nil
stopForBreakpoints = true
storeTraversal = nil
rootDelegate = a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Temporaries:
resultOrError = nil
Context PC = 19
----------------------------------------------------------------------
GbxPointerStub(GbxObjectStub)>>faultToLevel:session:delegate:
Receiver:
a GbxPointerStub
Arguments:
levelOrNil = nil
session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
delegate = a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Temporaries:
serverTraversal = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1
replicationSpecSelector: replicationSpec
, traversal root: a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
level = 4
Context PC = 22
----------------------------------------------------------------------
[] in GbxPointerStub(GbxObjectStub)>>faultToLevel:
Receiver:
a GbxPointerStub
Temporaries:
.self = a GbxPointerStub
.levelOrNil = nil
.session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
.delegate = a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
Context PC = 17
----------------------------------------------------------------------
optimized [] in GbsSession>>sessionCritical:
Receiver:
an UndefinedObject
Temporaries:
.self = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
.aBlock = BlockClosure [] in GbxObjectStub>>faultToLevel:
Context PC = 8
----------------------------------------------------------------------
optimized [] in GbxRecursionLock>>critical:
Receiver:
an UndefinedObject
Temporaries:
.activeProcess = a Process in nil
.self = a GbxSessionRecursionLock[1]
.mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:
Context PC = 8
----------------------------------------------------------------------
BlockClosure>>ensure:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in GbxRecursionLock>>critical:
outerContext = nil
copiedValues = an Array[3]
Arguments:
aBlock = BlockClosure [] in GbxRecursionLock>>critical:
Temporaries:
result = nil
Context PC = 4
----------------------------------------------------------------------
GbxSessionRecursionLock(GbxRecursionLock)>>critical:
Receiver:
a GbxSessionRecursionLock
Instance Variables:
firstLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal
lastLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal
excessSignals = 0
lockingProcess = a Process in nil
eventDetectorThread = a Process in GemStone.Gbs.GbxCPrimInterface64v32>>gciPollSocket:forRead:
Arguments:
mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:
Temporaries:
terminationProtectionBlock = BlockClosure [] in GbxRecursionLock>>critical:
activeProcess = a Process in nil
Context PC = 27
----------------------------------------------------------------------
GemStone.Gbs.GbxSemaphoreWithStats>>critical:
Receiver:
a GemStone.Gbs.GbxSemaphoreWithStats
Instance Variables:
semaphore = a GbxSessionRecursionLock[1]
statAdaptor = a GemStone.Gbs.GbxStatAdaptor
Arguments:
aBlock = BlockClosure [] in GbsSession>>sessionCritical:
Temporaries:
result = nil
start = a GemStone.Gbs.GbxStatAdaptor
Context PC = 8
----------------------------------------------------------------------
GemStone.Gbs.GbsSessionWithStats(GbsSession)>>sessionCritical:
Receiver:
a GemStone.Gbs.GbsSessionWithStats
Instance Variables:
activeInteractions = an IdentitySet[0]
causeOfDeath = nil
clientTimeZone = a CompositeTimeZone
configuration = (GbsConfiguration default
alwaysUseGemCursor: false;
confirm: false;
generateClassConnectors: false;
libraryName: './libgcirpc-3.6.2-64.so';
removeInvalidConnectors: true;
verbose: false;
yourself)
copyReplicationClamp = nil
dependents = nil
dirtyPool = a GemStone.Gbs.GbxDirtyPool
eventHandlers = an IdentityDictionary[6]
eventDetectorErrorHandler = nil
freeOops = a GemStone.Gbs.GbxFreeOopStream
gbsm = a GemStone.Gbs.GbsSessionManagerWithStats
gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r1A11A01}
gsClassOrganizer = nil
isRemote = true
isUnwindingAsyncAbort = false
nestingLevel = 0
notCachedToken = 'Not cached'
parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
procBalancer = nil
replicatorManager = a GemStone.Gbs.GbxReplicatorManager
serverInterface = a GemStone.Gbs.GbxServerInterfaceWithStats
serverMap = a GemStone.Gbs.GbxServerMap
sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''
sessionId = 1
sessionProtect = a GemStone.Gbs.GbxSemaphoreWithStats
specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64
stats = a GbxSessionStatResource:
bytesSentByStoreTraversal: 213624
bytesTraversed: 7671328
changedObjNotifications: 0
classesMapped: 1970
dirtyPoolSize: 0
freeOopsFetched: 2000
gciCallsToGem: 754
gciCallsToGemTime: 9550798
gciErrors: 0
lostOtRoots: 0
nbEndResultNoProgress: 292
nbEndResultProgressed: 0
nbEndResultReady: 418
objectsStoredByTraversal: 1461
objectsTraversed: 126237
serverMapSize: 128835
sessionProtectInvocations: 153521
sessionSignals: 0
sigAborts: 0
storeTraversals: 101
traversalUnpackingTime: 0
traverseCallTime: 0
traverseCalls: 418
asyncAbortStartAction = nil
asyncAbortFinishAction = nil
Arguments:
aBlock = BlockClosure [] in GbxObjectStub>>faultToLevel:
Context PC = 14
----------------------------------------------------------------------
GbxPointerStub(GbxObjectStub)>>faultToLevel:
Receiver:
a GbxPointerStub
Arguments:
levelOrNil = nil
Temporaries:
delegate = a GbxL8Delegate sess: 1 flags: 0 {16r1E80701}
session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'
Context PC = 35
----------------------------------------------------------------------
GbxPointerStub(GbxObjectStub)>>fault
Receiver:
a GbxPointerStub
Context PC = 5
----------------------------------------------------------------------
GbxPointerStub(GbxObjectStub)>>=
Receiver:
a GbxPointerStub
Arguments:
anObject = 15 minutes
Context PC = 16
More information about the GemStone-Smalltalk
mailing list