jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig <mdue...@apache.org>
Subject Propagation of Session auto refresh behaviour to e.g. UserManager
Date Tue, 06 Aug 2013 08:24:47 GMT


With OAK-938 [1] Antonio uncovered another consequence of introducing 
auto refreshing sessions [2]:

Acquiring a UserManager from a auto refreshing session, that UserManager 
instance would not "inherit" the auto refresh setting. That is, although 
the session itself might after a while see a newer revision due to an 
automatic refresh, the UserManager will still stay on the revision the 
session had when it was acquired. See 

for a test case.

We might have similar issues with other entities tied to a session like 
PrincipalManager, VersionManager, ... Basically all (indirect) callers 
of SessionDelegate#getRoot() are suspect... and that's quite a list.

To me the cleanest solution seems to be changing 
SessionDelegate#getRoot() to SessionDelegate#getRootProvider() thus 
signalling to clients they need to acquire the root on an as need basis.



[1] https://issues.apache.org/jira/browse/OAK-938
[2] https://issues.apache.org/jira/browse/OAK-803

View raw message