<div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jun 2, 2024 at 9:28 PM David Shaffer via GemStone-Smalltalk <<a href="mailto:gemstone-smalltalk@lists.gemtalksystems.com">gemstone-smalltalk@lists.gemtalksystems.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Hey folks…killed a whole day on this one and I’m stuck.  I’m running an application on VW9.4/GBS8.7.1/GS3.6.5 where I have some (a lot of) class connectors in my session parameters.  Among them: <div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:medium;padding:0px">GbsClassConnector stName: #'Trader.LevelTriggersOrderSignal' gsName: 'Trader_LevelTriggersOrderSignal' dictionary: #TraderClasses</blockquote><br><div>I am able to access objects in my repository replicated into GBS on my desktop image.  When I package it up and run it headless in my docker container I get:</div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:medium;padding:0px"><div>Unhandled exception: No client class Trader_LevelTriggersOrderSignal, class generation is disabled.</div><div><br></div></blockquote><span style="color:rgb(0,0,0)">when loading objects in my repository of the aforementioned type.  </span>I’ve verified that the Smalltalk class Trader.LevelTriggersOrderSignal is in the deployed image.  I’ve also checked that there is only one class with that name in my repo (the class history has 1 element in it) and that the class of the object in the repository that is causing the problem has the same OOP as the class in TraderClasses.</div><div><br></div><div>Full stack trace is pasted below.  I’ve tried poking around quite a bit including adding some tracing to GbsSession>>connectClassConnectorsTypeNoneIn:addFailedConnectorsTo:addMessagesTo: to double-check that the connector is indeed being connected and everything looks OK.  I’ve tried all kinds of things but I’m pretty much stuck on this one.  Sorry for the lack of details…not expecting anyone to be able to sort this out from my vague description…just hoping for some debugging suggestions.  GBS is complicated.</div></div></blockquote><div><br></div><div>Let's start with verifying that the connector really was established. Add some diagnostic code to iterate through your connectors after logging in and find that particular one. Then report the value of each instance variable. Also, report the result of sending the GbsConnector>>isConnectedInSession: message for the connector.</div><div><br></div><div>The fact that it is executing GbxUnmappedClassReplicator>>findOrGenerateClientClass strongly suggests the class is NOT connected (yet). But, if that were the case, I would have expected to see the same problem in an image with a GUI.</div><div><br></div><div>Are any of the connectors defining a class hierarchy? In particular, is the missing one a subclass of another that's also in the connectors list?<br></div><div>If so, the problem could be the fact that the connectors in the Session Parameters is a Set. The order is effectively random so an attempt to connect a subclass before its superclass, might be problematic. I would have expected an error if that had happened, but your investigation showed everything connected fine.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div><br></div><div>BTW: In order to get my application to run under GBS8.7.1 I had to patch GbsRuntime parcel to include GbsSessionManager>>connectorList (which is in GbsTools but is sent from GbsSession>>mapCrucialClasses) since I don’t load GbsTools in my deployed image.  I think this is a GBS packaging bug but I could be wrong.</div></div></blockquote><div><br></div><div>Definitely an error. It's been like that since at least 2014! I will fix it for GBS 8.8. I have created bug #51015 for it.</div><div><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div><br></div><div>Best,</div><div><br></div><div>David</div><div><br></div><div><br></div><div><div>Unhandled exception: No client class Trader_LevelTriggersOrderSignal, class generation is disabled.</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxMessageDispatcher>>basicRaise:message:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">   </span>a GbxMessageDispatcher</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>handler = a CstMessageHandlerVw</div><div>Arguments:</div><div><span style="white-space:pre-wrap"> </span>errorSignal = GemStone.Gbs.GbsClassGenerationError</div><div><span style="white-space:pre-wrap">       </span>errorString = 'No client class Trader_LevelT...lass generation is disabled.'</div><div>Context PC = 4</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxMessageDispatcher>>raise:message:withArguments:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">   </span>a GbxMessageDispatcher</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>handler = a CstMessageHandlerVw</div><div>Arguments:</div><div><span style="white-space:pre-wrap"> </span>errorSignal = GemStone.Gbs.GbsClassGenerationError</div><div><span style="white-space:pre-wrap">       </span>aString = 'No client class %1, class generation is disabled.'</div><div><span style="white-space:pre-wrap">    </span>args = an Array[1]</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>string = 'No client class Trader_LevelT...lass generation is disabled.'</div><div>Context PC = 12</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxMessageDispatcher>>raise:message:with:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>a GbxMessageDispatcher</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>handler = a CstMessageHandlerVw</div><div>Arguments:</div><div><span style="white-space:pre-wrap"> </span>errorSignal = GemStone.Gbs.GbsClassGenerationError</div><div><span style="white-space:pre-wrap">       </span>aString = 'No client class %1, class generation is disabled.'</div><div><span style="white-space:pre-wrap">    </span>arg1 = 'Trader_LevelTriggersOrderSignal'</div><div>Context PC = 10</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxUnmappedClassReplicator>>generateClientClass</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>a GemStone.Gbs.GbxUnmappedClassReplicator</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>manager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">    </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>serverClass = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">      </span>classDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r2E79C01}</div><div><span style="white-space:pre-wrap">   </span>classProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">        </span>clientClass = nil</div><div><span style="white-space:pre-wrap">        </span>metaclassDelegate = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">        </span>metaclassProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>report = <span style="white-space:pre-wrap">      </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">     </span>aClientClass = nil</div><div><span style="white-space:pre-wrap">       </span>cname = 'Trader_LevelTriggersOrderSignal'</div><div>Context PC = 27</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxUnmappedClassReplicator>>findOrGenerateClientClass</div><div>Receiver:</div><div><span style="white-space:pre-wrap">     </span>a GemStone.Gbs.GbxUnmappedClassReplicator</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>manager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">    </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>serverClass = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">      </span>classDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r2E79C01}</div><div><span style="white-space:pre-wrap">   </span>classProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">        </span>clientClass = nil</div><div><span style="white-space:pre-wrap">        </span>metaclassDelegate = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">        </span>metaclassProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>report = <span style="white-space:pre-wrap">      </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Context PC = 12</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxUnmappedClassReplicator>>replicateClassItself</div><div>Receiver:</div><div><span style="white-space:pre-wrap">  </span>a GemStone.Gbs.GbxUnmappedClassReplicator</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>manager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">    </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>serverClass = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">      </span>classDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r2E79C01}</div><div><span style="white-space:pre-wrap">   </span>classProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">        </span>clientClass = nil</div><div><span style="white-space:pre-wrap">        </span>metaclassDelegate = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">        </span>metaclassProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>report = <span style="white-space:pre-wrap">      </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Context PC = 13</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxUnmappedClassReplicator>>forReplication:replicateFromDeferredReport:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">   </span>a GemStone.Gbs.GbxUnmappedClassReplicator</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>manager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">    </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>serverClass = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">      </span>classDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r2E79C01}</div><div><span style="white-space:pre-wrap">   </span>classProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">        </span>clientClass = nil</div><div><span style="white-space:pre-wrap">        </span>metaclassDelegate = a GbxL8Delegate sess: 1 flags: 0 {16r2E79E01}</div><div><span style="white-space:pre-wrap">        </span>metaclassProxy = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>report = <span style="white-space:pre-wrap">      </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Arguments:</div><div><span style="white-space:pre-wrap">       </span>replication = a GemStone.Gbs.GbxReplication</div><div><span style="white-space:pre-wrap">      </span>aReport = <span style="white-space:pre-wrap">     </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Context PC = 26</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxReplication>>replicateFromDeferredReport:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a GemStone.Gbs.GbxReplication</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">  </span>interaction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>objectsWithDeferredAssignments = an OrderedCollection[40]</div><div><span style="white-space:pre-wrap">        </span>reportsWithDeferredElements = an OrderedCollection[0]</div><div><span style="white-space:pre-wrap">    </span>reportsWithNoMappedClass = an OrderedCollection[3]</div><div><span style="white-space:pre-wrap">       </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div>Arguments:</div><div><span style="white-space:pre-wrap">   </span>report = <span style="white-space:pre-wrap">      </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">     </span>replicator = a GemStone.Gbs.GbxUnmappedClassReplicator</div><div>Context PC = 10</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GemStone.Gbs.GbxReplication>>resolveUnmappedClasses</div><div>Receiver:</div><div><span style="white-space:pre-wrap">       </span>an UndefinedObject</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>aReport = <span style="white-space:pre-wrap">     </span>GbxL8v3ObjectReport with:</div><div><span style="white-space:pre-wrap">                </span>valueBuffSize = 8</div><div><span style="white-space:pre-wrap">                </span>namedSize = 1</div><div><span style="white-space:pre-wrap">            </span>idxSize = 0</div><div><span style="white-space:pre-wrap">              </span>firstOffset = 1</div><div><span style="white-space:pre-wrap">          </span>objId = GbxL8BufferOop{16r2E79C01}</div><div><span style="white-space:pre-wrap">               </span>objClass = GbxL8BufferOop{16r2E79E01}</div><div><span style="white-space:pre-wrap">            </span>segment = 0</div><div><span style="white-space:pre-wrap">              </span>objSize = 1</div><div><span style="white-space:pre-wrap">              </span>objImpl = 0</div><div><span style="white-space:pre-wrap">              </span>isIndexable = false</div><div><span style="white-space:pre-wrap">              </span>isInvariant = true</div><div><span style="white-space:pre-wrap">               </span>isOverlayed = false</div><div><span style="white-space:pre-wrap">              </span>isPartial = false</div><div><span style="white-space:pre-wrap">                </span>lacksReadAuth = false</div><div><span style="white-space:pre-wrap">            </span>isClamped = false</div><div><span style="white-space:pre-wrap">        </span>oops = GbxL8OopArray(16r7FE2101 )</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">     </span>.self = a GemStone.Gbs.GbxReplication</div><div>Context PC = 18</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection>>do:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">     </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 3</div><div>Arguments:</div><div><span style="white-space:pre-wrap">   </span>aBlock = BlockClosure [] in GemStone.Gbs.GbxReplication>>resolveUnmappedClasses</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>index = 1</div><div>Context PC = 17</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxReplication>>resolveUnmappedClasses</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>a GemStone.Gbs.GbxReplication</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">  </span>interaction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>objectsWithDeferredAssignments = an OrderedCollection[40]</div><div><span style="white-space:pre-wrap">        </span>reportsWithDeferredElements = an OrderedCollection[0]</div><div><span style="white-space:pre-wrap">    </span>reportsWithNoMappedClass = an OrderedCollection[3]</div><div><span style="white-space:pre-wrap">       </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GemStone.Gbs.GbxReplication>>resolve</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = a GemStone.Gbs.GbxReplication</div><div>Context PC = 7</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GbxRecursionLock>>critical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap"> </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.activeProcess = a Process in nil</div><div><span style="white-space:pre-wrap">        </span>.self = a GbxRecursionLock[0]</div><div><span style="white-space:pre-wrap">    </span>.mutuallyExcludedBlock = BlockClosure [] in GemStone.Gbs.GbxReplication>>resolve</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>BlockClosure>>ensure:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a BlockClosure</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>method = CompiledBlock [] in GbxRecursionLock>>critical:</div><div><span style="white-space:pre-wrap">   </span>outerContext = nil</div><div><span style="white-space:pre-wrap">       </span>copiedValues = an Array[3]</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>aBlock = BlockClosure [] in GbxRecursionLock>>critical:</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>result = nil</div><div>Context PC = 4</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxRecursionLock>>critical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">  </span>a GbxRecursionLock</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">     </span>firstLink = nil</div><div><span style="white-space:pre-wrap">  </span>lastLink = nil</div><div><span style="white-space:pre-wrap">   </span>excessSignals = 0</div><div><span style="white-space:pre-wrap">        </span>lockingProcess = a Process in nil</div><div>Arguments:</div><div><span style="white-space:pre-wrap">       </span>mutuallyExcludedBlock = BlockClosure [] in GemStone.Gbs.GbxReplication>>resolve</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>terminationProtectionBlock = BlockClosure [] in GbxRecursionLock>>critical:</div><div><span style="white-space:pre-wrap">        </span>activeProcess = a Process in nil</div><div>Context PC = 27</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxClientObjDictionary64(GemStone.Gbs.GbxClientObjDictionary)>>writeCritical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a GemStone.Gbs.GbxClientObjDictionary64</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">        </span>finalizationLatch = a GemStone.Gbs.GbxFinalizationLatch</div><div><span style="white-space:pre-wrap">  </span>cachedClassStats = nil</div><div><span style="white-space:pre-wrap">   </span>finalizer = a GemStone.Gbs.GbxClientObjDictionaryFinalizer</div><div><span style="white-space:pre-wrap">       </span>writeProtect = a GbxRecursionLock[0]</div><div><span style="white-space:pre-wrap">     </span>keys = a WeakArray[60077]</div><div><span style="white-space:pre-wrap">        </span>values = an Array[60077]</div><div><span style="white-space:pre-wrap"> </span>tally = 26816</div><div><span style="white-space:pre-wrap">    </span>capacity = 30038</div><div><span style="white-space:pre-wrap"> </span>tableSize = 60077</div><div><span style="white-space:pre-wrap">        </span>rehashInProgress = false</div><div><span style="white-space:pre-wrap"> </span>rehashCount = 0</div><div><span style="white-space:pre-wrap">  </span>deletionCount = 7</div><div>Arguments:</div><div><span style="white-space:pre-wrap">       </span>criticalBlock = BlockClosure [] in GemStone.Gbs.GbxReplication>>resolve</div><div>Context PC = 5</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxReplication>>resolve</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>a GemStone.Gbs.GbxReplication</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">  </span>interaction = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>objectsWithDeferredAssignments = an OrderedCollection[40]</div><div><span style="white-space:pre-wrap">        </span>reportsWithDeferredElements = an OrderedCollection[0]</div><div><span style="white-space:pre-wrap">    </span>reportsWithNoMappedClass = an OrderedCollection[3]</div><div><span style="white-space:pre-wrap">       </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GemStone.Gbs.GbxServerInteraction>>completeResult:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">  </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap"> </span>.delegateOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">        </span>result = nil</div><div>Context PC = 18</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GbsSession>>sessionCritical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">      </span>.aBlock = BlockClosure [] in GemStone.Gbs.GbxServerInteraction>>completeResult:</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxSessionRecursionLock(GbxRecursionLock)>>critical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>a GbxSessionRecursionLock</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>firstLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div><span style="white-space:pre-wrap"> </span>lastLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div><span style="white-space:pre-wrap">  </span>excessSignals = 0</div><div><span style="white-space:pre-wrap">        </span>lockingProcess = a Process in nil</div><div><span style="white-space:pre-wrap">        </span>eventDetectorThread = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>terminationProtectionBlock = nil</div><div><span style="white-space:pre-wrap"> </span>activeProcess = a Process in nil</div><div>Context PC = 10</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbsSession>>sessionCritical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>a GbsSession</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>activeInteractions = an IdentitySet[1]</div><div><span style="white-space:pre-wrap">   </span>causeOfDeath = nil</div><div><span style="white-space:pre-wrap">       </span>clientTimeZone = a CompositeTimeZone  -04:00</div><div><span style="white-space:pre-wrap">    </span>configuration = (GbsConfiguration default</div><div><span style="white-space:pre-wrap">        </span>alwaysUseGemCursor: false;</div><div><span style="white-space:pre-wrap">       </span>confirm: false;</div><div><span style="white-space:pre-wrap">  </span>generateClassConnectors: false;</div><div><span style="white-space:pre-wrap">  </span>libraryName: './<a href="http://libgcirpc-3.6.5-64.so/" target="_blank">libgcirpc-3.6.5-64.so</a>';</div><div><span style="white-space:pre-wrap">      </span>yourself)</div><div><span style="white-space:pre-wrap">        </span>dependents = nil</div><div><span style="white-space:pre-wrap"> </span>dirtyPool = a GemStone.Gbs.GbxDirtyPool</div><div><span style="white-space:pre-wrap">  </span>eventHandlers = an IdentityDictionary[6]</div><div><span style="white-space:pre-wrap"> </span>eventDetectorErrorHandler = nil</div><div><span style="white-space:pre-wrap">  </span>freeOops = a GemStone.Gbs.GbxFreeOopStream</div><div><span style="white-space:pre-wrap">       </span>gbsm = a GbsSessionManager</div><div><span style="white-space:pre-wrap">       </span>gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r14}</div><div><span style="white-space:pre-wrap">   </span>gsClassOrganizer = nil</div><div><span style="white-space:pre-wrap">   </span>isRemote = true</div><div><span style="white-space:pre-wrap">  </span>isUnwindingAsyncAbort = false</div><div><span style="white-space:pre-wrap">    </span>nestingLevel = 0</div><div><span style="white-space:pre-wrap"> </span>notCachedToken = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">        </span>procBalancer = nil</div><div><span style="white-space:pre-wrap">       </span>replicatorManager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">  </span>serverInterface = a GemStone.Gbs.GbxGciSingleTripInterface</div><div><span style="white-space:pre-wrap">       </span>serverMap = a GemStone.Gbs.GbxServerMap</div><div><span style="white-space:pre-wrap">  </span>sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''</div><div><span style="white-space:pre-wrap">        </span>sessionId = 1</div><div><span style="white-space:pre-wrap">    </span>sessionProtect = a GbxSessionRecursionLock[1]</div><div><span style="white-space:pre-wrap">    </span>specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64</div><div><span style="white-space:pre-wrap">      </span>stats = a GbxSessionStatResource:</div><div><span style="white-space:pre-wrap">        </span>bytesSentByStoreTraversal: 0</div><div><span style="white-space:pre-wrap">     </span>bytesTraversed: 0</div><div><span style="white-space:pre-wrap">        </span>changedObjNotifications: 0</div><div><span style="white-space:pre-wrap">       </span>classesMapped: 1694</div><div><span style="white-space:pre-wrap">      </span>dirtyPoolSize: 0</div><div><span style="white-space:pre-wrap"> </span>freeOopsFetched: 0</div><div><span style="white-space:pre-wrap">       </span>gciCallsToGem: 0</div><div><span style="white-space:pre-wrap"> </span>gciCallsToGemTime: 0</div><div><span style="white-space:pre-wrap">     </span>gciErrors: 0</div><div><span style="white-space:pre-wrap">     </span>lostOtRoots: 0</div><div><span style="white-space:pre-wrap">   </span>nbEndResultNoProgress: 0</div><div><span style="white-space:pre-wrap"> </span>nbEndResultProgressed: 0</div><div><span style="white-space:pre-wrap"> </span>nbEndResultReady: 0</div><div><span style="white-space:pre-wrap">      </span>objectsStoredByTraversal: 0</div><div><span style="white-space:pre-wrap">      </span>objectsTraversed: 0</div><div><span style="white-space:pre-wrap">      </span>serverMapSize: 28002</div><div><span style="white-space:pre-wrap">     </span>sessionProtectInvocations: 0</div><div><span style="white-space:pre-wrap">     </span>sessionSignals: 0</div><div><span style="white-space:pre-wrap">        </span>sigAborts: 0</div><div><span style="white-space:pre-wrap">     </span>storeTraversals: 0</div><div><span style="white-space:pre-wrap">       </span>traversalUnpackingTime: 0</div><div><span style="white-space:pre-wrap">        </span>traverseCallTime: 0</div><div><span style="white-space:pre-wrap">      </span>traverseCalls: 0</div><div><span style="white-space:pre-wrap"> </span>asyncAbortStartAction = nil</div><div><span style="white-space:pre-wrap">      </span>asyncAbortFinishAction = nil</div><div>Arguments:</div><div><span style="white-space:pre-wrap">    </span>aBlock = BlockClosure [] in GemStone.Gbs.GbxServerInteraction>>completeResult:</div><div>Context PC = 14</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxSingleTripServerTraversal(GemStone.Gbs.GbxServerInteraction)>>completeResult:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">       </span>a GemStone.Gbs.GbxSingleTripServerTraversal</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">    </span>argumentDelegates = an Array[0]</div><div><span style="white-space:pre-wrap">  </span>arguments = an Array[0]</div><div><span style="white-space:pre-wrap">  </span>fetchTraversal = a GemStone.Gbs.GbxFetchTraversal</div><div><span style="white-space:pre-wrap">        </span>interactionState = a GemStone.Gbs.GbxInteractionState</div><div><span style="white-space:pre-wrap">    </span>replicationClampDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r7F81601}</div><div><span style="white-space:pre-wrap">        </span>replication = a GemStone.Gbs.GbxReplication</div><div><span style="white-space:pre-wrap">      </span>replicationLevel = 4</div><div><span style="white-space:pre-wrap">     </span>replicationScheme = Replication Scheme replicationSpec</div><div><span style="white-space:pre-wrap">   </span>resultDelegateOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>serverInterface = a GemStone.Gbs.GbxGciSingleTripInterface</div><div><span style="white-space:pre-wrap">       </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>shouldReplicateResultBodyAsDelegates = false</div><div><span style="white-space:pre-wrap">     </span>shouldReplicateResult = true</div><div><span style="white-space:pre-wrap">     </span>shouldSynchronize = true</div><div><span style="white-space:pre-wrap"> </span>statResource = nil</div><div><span style="white-space:pre-wrap">       </span>stopForBreakpoints = true</div><div><span style="white-space:pre-wrap">        </span>storeTraversal = a GemStone.Gbs.GbxStoreTraversal</div><div><span style="white-space:pre-wrap">        </span>rootDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Arguments:</div><div><span style="white-space:pre-wrap">   </span>delegateOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">      </span>result = nil</div><div>Context PC = 17</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap"> </span>resultOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>completeResult = nil</div><div>Context PC = 17</div><div><br></div><div>----------------------------------------------------------------------</div><div>BlockClosure>>ensure:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">       </span>a BlockClosure</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>method = CompiledBlock [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div><span style="white-space:pre-wrap">        </span>outerContext = nil</div><div><span style="white-space:pre-wrap">       </span>copiedValues = an Array[3]</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>aBlock = BlockClosure [] in [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">      </span>result = nil</div><div>Context PC = 4</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Receiver:</div><div><span style="white-space:pre-wrap">     </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>completeResult = nil</div><div><span style="white-space:pre-wrap">     </span>.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap"> </span>resultOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Context PC = 18</div><div><br></div><div>----------------------------------------------------------------------</div><div>BlockClosure>>on:do:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a BlockClosure</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>method = CompiledBlock [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div><span style="white-space:pre-wrap">      </span>outerContext = nil</div><div><span style="white-space:pre-wrap">       </span>copiedValues = an Array[2]</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>anExceptionSelector = GemStone.Gbs.GbxReturnNotification</div><div><span style="white-space:pre-wrap"> </span>handlerBlock = BlockClosure [] in [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Context PC = 18</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap"> </span>resultOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Context PC = 15</div><div><br></div><div>----------------------------------------------------------------------</div><div>BlockClosure>>ifCurtailed:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">        </span>a BlockClosure</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>method = CompiledBlock [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div><span style="white-space:pre-wrap">    </span>outerContext = nil</div><div><span style="white-space:pre-wrap">       </span>copiedValues = an Array[2]</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>terminationBlock = BlockClosure [] in GemStone.Gbs.GbxServerInteraction>>execute</div><div>Context PC = 4</div><div><br></div><div>----------------------------------------------------------------------</div><div>GemStone.Gbs.GbxSingleTripServerTraversal(GemStone.Gbs.GbxServerInteraction)>>execute</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a GemStone.Gbs.GbxSingleTripServerTraversal</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">    </span>argumentDelegates = an Array[0]</div><div><span style="white-space:pre-wrap">  </span>arguments = an Array[0]</div><div><span style="white-space:pre-wrap">  </span>fetchTraversal = a GemStone.Gbs.GbxFetchTraversal</div><div><span style="white-space:pre-wrap">        </span>interactionState = a GemStone.Gbs.GbxInteractionState</div><div><span style="white-space:pre-wrap">    </span>replicationClampDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r7F81601}</div><div><span style="white-space:pre-wrap">        </span>replication = a GemStone.Gbs.GbxReplication</div><div><span style="white-space:pre-wrap">      </span>replicationLevel = 4</div><div><span style="white-space:pre-wrap">     </span>replicationScheme = Replication Scheme replicationSpec</div><div><span style="white-space:pre-wrap">   </span>resultDelegateOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">   </span>serverInterface = a GemStone.Gbs.GbxGciSingleTripInterface</div><div><span style="white-space:pre-wrap">       </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>shouldReplicateResultBodyAsDelegates = false</div><div><span style="white-space:pre-wrap">     </span>shouldReplicateResult = true</div><div><span style="white-space:pre-wrap">     </span>shouldSynchronize = true</div><div><span style="white-space:pre-wrap"> </span>statResource = nil</div><div><span style="white-space:pre-wrap">       </span>stopForBreakpoints = true</div><div><span style="white-space:pre-wrap">        </span>storeTraversal = a GemStone.Gbs.GbxStoreTraversal</div><div><span style="white-space:pre-wrap">        </span>rootDelegate = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>resultOrError = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Context PC = 19</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection(GbxObjectStub)>>unboundMethodwith:with:with:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Arguments:</div><div><span style="white-space:pre-wrap">  </span>levelOrNil = nil</div><div><span style="white-space:pre-wrap"> </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">    </span>delegate = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">     </span>serverTraversal = a GemStone.Gbs.GbxSingleTripServerTraversal for session 1</div><div>replicationSpecSelector: #replicationSpec</div><div>, traversal root: a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">       </span>level = 4</div><div>Context PC = 22</div><div><br></div><div>----------------------------------------------------------------------</div><div>[] in OrderedCollection(GbxObjectStub)>>unboundMethodwith:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">     </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">        </span>.self = an OrderedCollection[40]</div><div><span style="white-space:pre-wrap"> </span>.levelOrNil = nil</div><div><span style="white-space:pre-wrap">        </span>.session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">   </span>.delegate = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div>Context PC = 17</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GbsSession>>sessionCritical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">  </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.self = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">      </span>.aBlock = BlockClosure [] in GbxObjectStub>>faultToLevel:</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>optimized [] in GbxRecursionLock>>critical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">       </span>an UndefinedObject</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">    </span>.activeProcess = a Process in nil</div><div><span style="white-space:pre-wrap">        </span>.self = a GbxSessionRecursionLock[1]</div><div><span style="white-space:pre-wrap">     </span>.mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:</div><div>Context PC = 8</div><div><br></div><div>----------------------------------------------------------------------</div><div>BlockClosure>>ensure:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>a BlockClosure</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap"> </span>method = CompiledBlock [] in GbxRecursionLock>>critical:</div><div><span style="white-space:pre-wrap">   </span>outerContext = nil</div><div><span style="white-space:pre-wrap">       </span>copiedValues = an Array[3]</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>aBlock = BlockClosure [] in GbxRecursionLock>>critical:</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>result = nil</div><div>Context PC = 4</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbxSessionRecursionLock(GbxRecursionLock)>>critical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap"> </span>a GbxSessionRecursionLock</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>firstLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div><span style="white-space:pre-wrap"> </span>lastLink = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div><span style="white-space:pre-wrap">  </span>excessSignals = 0</div><div><span style="white-space:pre-wrap">        </span>lockingProcess = a Process in nil</div><div><span style="white-space:pre-wrap">        </span>eventDetectorThread = a Process in GbxSessionRecursionLock(Semaphore)>>waitIfCurtailedSignal</div><div>Arguments:</div><div><span style="white-space:pre-wrap">      </span>mutuallyExcludedBlock = BlockClosure [] in GbsSession>>sessionCritical:</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>terminationProtectionBlock = BlockClosure [] in GbxRecursionLock>>critical:</div><div><span style="white-space:pre-wrap">        </span>activeProcess = a Process in nil</div><div>Context PC = 27</div><div><br></div><div>----------------------------------------------------------------------</div><div>GbsSession>>sessionCritical:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>a GbsSession</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>activeInteractions = an IdentitySet[1]</div><div><span style="white-space:pre-wrap">   </span>causeOfDeath = nil</div><div><span style="white-space:pre-wrap">       </span>clientTimeZone = a CompositeTimeZone  -04:00</div><div><span style="white-space:pre-wrap">    </span>configuration = (GbsConfiguration default</div><div><span style="white-space:pre-wrap">        </span>alwaysUseGemCursor: false;</div><div><span style="white-space:pre-wrap">       </span>confirm: false;</div><div><span style="white-space:pre-wrap">  </span>generateClassConnectors: false;</div><div><span style="white-space:pre-wrap">  </span>libraryName: './<a href="http://libgcirpc-3.6.5-64.so/" target="_blank">libgcirpc-3.6.5-64.so</a>';</div><div><span style="white-space:pre-wrap">      </span>yourself)</div><div><span style="white-space:pre-wrap">        </span>dependents = nil</div><div><span style="white-space:pre-wrap"> </span>dirtyPool = a GemStone.Gbs.GbxDirtyPool</div><div><span style="white-space:pre-wrap">  </span>eventHandlers = an IdentityDictionary[6]</div><div><span style="white-space:pre-wrap"> </span>eventDetectorErrorHandler = nil</div><div><span style="white-space:pre-wrap">  </span>freeOops = a GemStone.Gbs.GbxFreeOopStream</div><div><span style="white-space:pre-wrap">       </span>gbsm = a GbsSessionManager</div><div><span style="white-space:pre-wrap">       </span>gemTimeZone = a GbxL8Delegate sess: 1 flags: 0 {16r14}</div><div><span style="white-space:pre-wrap">   </span>gsClassOrganizer = nil</div><div><span style="white-space:pre-wrap">   </span>isRemote = true</div><div><span style="white-space:pre-wrap">  </span>isUnwindingAsyncAbort = false</div><div><span style="white-space:pre-wrap">    </span>nestingLevel = 0</div><div><span style="white-space:pre-wrap"> </span>notCachedToken = 'Not cached'</div><div><span style="white-space:pre-wrap">    </span>parameters = 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div><span style="white-space:pre-wrap">        </span>procBalancer = nil</div><div><span style="white-space:pre-wrap">       </span>replicatorManager = a GemStone.Gbs.GbxReplicatorManager</div><div><span style="white-space:pre-wrap">  </span>serverInterface = a GemStone.Gbs.GbxGciSingleTripInterface</div><div><span style="white-space:pre-wrap">       </span>serverMap = a GemStone.Gbs.GbxServerMap</div><div><span style="white-space:pre-wrap">  </span>sessionDisplayString = 'Session 1 (remote) for ''Trade...0055!gs64stone'' @ ''gemstone'''</div><div><span style="white-space:pre-wrap">        </span>sessionId = 1</div><div><span style="white-space:pre-wrap">    </span>sessionProtect = a GbxSessionRecursionLock[1]</div><div><span style="white-space:pre-wrap">    </span>specialConverter = a GemStone.Gbs.GbxSpecialConverter64Vw64</div><div><span style="white-space:pre-wrap">      </span>stats = a GbxSessionStatResource:</div><div><span style="white-space:pre-wrap">        </span>bytesSentByStoreTraversal: 0</div><div><span style="white-space:pre-wrap">     </span>bytesTraversed: 0</div><div><span style="white-space:pre-wrap">        </span>changedObjNotifications: 0</div><div><span style="white-space:pre-wrap">       </span>classesMapped: 1694</div><div><span style="white-space:pre-wrap">      </span>dirtyPoolSize: 0</div><div><span style="white-space:pre-wrap"> </span>freeOopsFetched: 0</div><div><span style="white-space:pre-wrap">       </span>gciCallsToGem: 0</div><div><span style="white-space:pre-wrap"> </span>gciCallsToGemTime: 0</div><div><span style="white-space:pre-wrap">     </span>gciErrors: 0</div><div><span style="white-space:pre-wrap">     </span>lostOtRoots: 0</div><div><span style="white-space:pre-wrap">   </span>nbEndResultNoProgress: 0</div><div><span style="white-space:pre-wrap"> </span>nbEndResultProgressed: 0</div><div><span style="white-space:pre-wrap"> </span>nbEndResultReady: 0</div><div><span style="white-space:pre-wrap">      </span>objectsStoredByTraversal: 0</div><div><span style="white-space:pre-wrap">      </span>objectsTraversed: 0</div><div><span style="white-space:pre-wrap">      </span>serverMapSize: 28002</div><div><span style="white-space:pre-wrap">     </span>sessionProtectInvocations: 0</div><div><span style="white-space:pre-wrap">     </span>sessionSignals: 0</div><div><span style="white-space:pre-wrap">        </span>sigAborts: 0</div><div><span style="white-space:pre-wrap">     </span>storeTraversals: 0</div><div><span style="white-space:pre-wrap">       </span>traversalUnpackingTime: 0</div><div><span style="white-space:pre-wrap">        </span>traverseCallTime: 0</div><div><span style="white-space:pre-wrap">      </span>traverseCalls: 0</div><div><span style="white-space:pre-wrap"> </span>asyncAbortStartAction = nil</div><div><span style="white-space:pre-wrap">      </span>asyncAbortFinishAction = nil</div><div>Arguments:</div><div><span style="white-space:pre-wrap">    </span>aBlock = BlockClosure [] in GbxObjectStub>>faultToLevel:</div><div>Context PC = 14</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection(GbxObjectStub)>>unboundMethodwith:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">      </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Arguments:</div><div><span style="white-space:pre-wrap">  </span>levelOrNil = nil</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">      </span>delegate = a GbxL8Delegate sess: 1 flags: 32 {16r288AF01}</div><div><span style="white-space:pre-wrap">        </span>session = Session 1 (remote) for 'Trader' on '!@gemstone#netldi:40055!gs64stone' @ 'gemstone'</div><div>Context PC = 35</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection(GbxObjectStub)>>unboundMethod</div><div>Receiver:</div><div><span style="white-space:pre-wrap">    </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Context PC = 5</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection(GbxObjectStub)>>unboundMethodwith:with:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">  </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Arguments:</div><div><span style="white-space:pre-wrap">  </span>selector = #do:</div><div><span style="white-space:pre-wrap">  </span>anArray = an Array[1]</div><div>Temporaries:</div><div><span style="white-space:pre-wrap"> </span>delegate = nil</div><div>Context PC = 21</div><div><br></div><div>----------------------------------------------------------------------</div><div>OrderedCollection(GbxAbstractProxy)>>unboundMethodwith:</div><div>Receiver:</div><div><span style="white-space:pre-wrap">   </span>an OrderedCollection</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">   </span>firstIndex = 1</div><div><span style="white-space:pre-wrap">   </span>lastIndex = 40</div><div>Arguments:</div><div><span style="white-space:pre-wrap">  </span>aMessage = a Message with selector: #do: and arguments: #(BlockClosure [] in Trader.WrappingSignalConfiguration>>instrumentDurations)</div><div>Context PC = 9</div><div><br></div><div>----------------------------------------------------------------------</div><div>Trader.AllSignalsEnsembleConfiguration(Trader.WrappingSignalConfiguration)>>instrumentDurations</div><div>Receiver:</div><div><span style="white-space:pre-wrap">       </span>an Trader.AllSignalsEnsembleConfiguration</div><div>Instance Variables:</div><div><span style="white-space:pre-wrap">      </span>signalId = '1ab265a8-fada-49bb-b734-03c855966bce'</div><div><span style="white-space:pre-wrap">        </span>instrumentDurations = nil</div><div><span style="white-space:pre-wrap">        </span>signalClass = a GbxPointerStub</div><div><span style="white-space:pre-wrap">   </span>stopPolicies = a GbxPointerStub</div><div><span style="white-space:pre-wrap">  </span>recordChartData = nil</div><div><span style="white-space:pre-wrap">    </span>positionSizePolicy = a GbxPointerStub</div><div><span style="white-space:pre-wrap">    </span>primingDaysRequired = nil</div><div><span style="white-space:pre-wrap">        </span>pendingPositionSizePolicy = nil</div><div><span style="white-space:pre-wrap">  </span>coreSignalConfigurations = an OrderedCollection[40]</div><div><span style="white-space:pre-wrap">      </span>enabledSignalIds = a GbxPointerStub</div><div>Temporaries:</div><div><span style="white-space:pre-wrap">   </span>r = a Set[0]</div><div>Context PC = 13</div></div></div>_______________________________________________<br>
GemStone-Smalltalk mailing list<br>
<a href="mailto:GemStone-Smalltalk@lists.gemtalksystems.com" target="_blank">GemStone-Smalltalk@lists.gemtalksystems.com</a><br>
<a href="https://lists.gemtalksystems.com/mailman/listinfo/gemstone-smalltalk" rel="noreferrer" target="_blank">https://lists.gemtalksystems.com/mailman/listinfo/gemstone-smalltalk</a><br>
</blockquote></div></div>