Hi,
We've been tracking a bug where a thread on one of our PRD instances will all of a sudden start stack tracing. The section of code is always random, but invariably, it is always on a webnode object which for whatever reason no longer has the core method associated with it, i.e. Webnode.BrowseableVolumes(). Almost always, the stack trace will keep on repeating on a particular thread (meaning that the stack trace is not causing the thread to simply die) but only that thread.
In this particular case, I traced the failure to $NGD.PresentationUtils.GetRootNode(), and the highlighted line:
In the stack trace, the prgCtx is defined as is obj. From the stack trace:
Local: obj (6) = #7a00c9f0
Local: s (7) = ''
Local: status (8) = ?
Local: contents (9) = ?
Local: i (10) = 0
Local: viewName (11) = 'DTree'
Args: prgCtx (0) = #423ce07
My theory is that something is corrupting $Webnode.Webnodes.fRegistry and one of the objects is getting messed up (although I cannot think how - we're running only OpenText, i.e. no 3rd party code whatsoever - this is a Shared Services Canada instance). My question is this: Does each thread have its own cache of Oscript objects like $Webnode.Webnodes? If so, that would explain why this is always occurring on just one thread and not the others (although I've seen up to 3 threads exhibiting this behaviour at any time). Our recourse is always the same. We take the server out of the load balancer and restart it and the problem goes away for a while.
We've opened tickets on this but haven't so far got any resolution, so I'm reaching out to the development community to see if others have encountered this sort of behaviour and what you've done about it.
-Hugh Ferguson