[Glass] External tasks do not recognize new methods after commit - only after restart !?!?!?!?!
Dale Henrichs
dale.henrichs at gemtalksystems.com
Sun Nov 1 11:19:19 PST 2020
Marten,
I'm glad that you were able to determine that something had perturbed
`TransactionBoundaryDefaultPolicy current` and yes,
`SessionMethodTransactionBoundaryPolicy install` will set things right
again ...
Of course, the million dollar question is "how did that happen?" and in
your HR you note that the only db that exhibits this problem is one that
had been upgraded and that is an interesting observation.
At this moment I don't have a smoking gun, but it is worth noting that I
also don't have a test that confirms that the
SessionMethodTransactionBoundaryPolicy is properly installed, so a
regression in this area during upgrade could certainly fall between the
cracks. So thanks, Marten for this information. I've opened issue #129
"Kernel class modifications not propagated to other sessions on
transaction boundaries as expected"[1] with the first step of adding a
test
case(SessionMethodTransactionBoundaryPolicyTests>>testConfirmSessionMethodTransactionBoundaryPolicyInstalled):
self
assert:
(TransactionBoundaryDefaultPolicy current
isKindOf: SessionMethodTransactionBoundaryPolicy)
Once, I've merged the new testcase into the glassdb/glass[2] master
branch, I'll trigger the GsDevKit/GsDevKit_home travis tests[3], which
has a coverage for upgrades for GemStone 2.4.4.1, 3.1.0.6, 3.3.9, 3.4.5,
3.5.0 and 3.5.4. The coverage is not a full matrix of possible upgrade
combinations, but should be enough to get a read on the possible extent
of the problems, if any.
Of course at this point in time, if any of you listening in on this
conversation haven't already done so, I'd suggest that it would be
prudent to go ahead and confirm that the
SessionMethodTransactionBoundaryPolicy in your db's are properly installed:
TransactionBoundaryDefaultPolicy current isKindOf: SessionMethodTransactionBoundaryPolicy
and if it is not a SessionMethodTransactionBoundaryPolicy, use the
following to do the repair:
SessionMethodTransactionBoundaryPolicy install
I would encourage any of you to report results/observations on Issue
#129[1] going forward.
I'll report back the test results here when they become available ...
travis has been overloaded recently so it might take a while for the
full set of tests to run:)
Dale
[1] https://github.com/GsDevKit/GsDevKit/issues/129
[2] https://github.com/glassdb/glass
[3] https://travis-ci.org/github/GsDevKit/GsDevKit_home
On 10/31/20 8:36 AM, Marten Feldtmann wrote:
> SessionMethodTransactionBoundaryPolicy install
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gemtalksystems.com/mailman/private/glass/attachments/20201101/91aad53e/attachment.htm>
More information about the Glass
mailing list