Hi,
I ran into strange issue w/ JR 2.4.0.
On shutdown sessions are being closed twice which lead to the exception being
logged as shown below. As far as I can tell RepositoryImpl has system sessions
in the list of active sessions which is why it tries to close them twice -
first time when closing all active sessions (RepositoryImpl.java:1078) and
second time when disposing workspace (RepositoryImpl.java:1090).
However I have no idea if the system session is supposed to be on the list of
active sessions or not.
Also it seems to be related to timing - I have troubles reproducing the issue
with debugger attached to the server.
Is this known issue? Any pointers to what to look for when preventing this
issue from occurring?
Thanks,
Jan
2012-02-28 10:36:00,614 WARN org.apache.jackrabbit.core.session.SessionState
: Attempt to close session-31 after it has already been closed. Please review
your code for proper session management.
java.lang.Exception: Stack trace of the duplicate attempt to close session-31
at
org.apache.jackrabbit.core.session.SessionState.close(SessionState.java:280)
at org.apache.jackrabbit.core.SessionImpl.logout(SessionImpl.java:943)
at
org.apache.jackrabbit.core.XASessionImpl.logout(XASessionImpl.java:392)
at
org.apache.jackrabbit.core.security.user.UserManagerImpl.loggedOut(UserManagerImpl.java:1115)
at
org.apache.jackrabbit.core.SessionImpl.notifyLoggedOut(SessionImpl.java:565)
at org.apache.jackrabbit.core.SessionImpl.logout(SessionImpl.java:979)
at
org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doDispose(RepositoryImpl.java:2200)
at
org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.dispose(RepositoryImpl.java:2154)
at
org.apache.jackrabbit.core.RepositoryImpl.doShutdown(RepositoryImpl.java:1090)
at
org.apache.jackrabbit.core.RepositoryImpl.shutdown(RepositoryImpl.java:1041)
at
org.apache.jackrabbit.core.jndi.BindableRepository.shutdown(BindableRepository.java:259)
at
org.apache.jackrabbit.core.jndi.RegistryHelper.unregisterRepository(RegistryHelper.java:94)
...
2012-02-28 10:36:00,617 WARN org.apache.jackrabbit.core.session.SessionState
: session-31 has already been closed. See the attached exception for a trace of
where this session was closed.
java.lang.Exception: Stack trace of where session-31 was originally closed
at
org.apache.jackrabbit.core.session.SessionState.close(SessionState.java:275)
at org.apache.jackrabbit.core.SessionImpl.logout(SessionImpl.java:943)
at
org.apache.jackrabbit.core.XASessionImpl.logout(XASessionImpl.java:392)
at
org.apache.jackrabbit.core.RepositoryImpl.doShutdown(RepositoryImpl.java:1078)
at
org.apache.jackrabbit.core.RepositoryImpl.shutdown(RepositoryImpl.java:1041)
at
org.apache.jackrabbit.core.jndi.BindableRepository.shutdown(BindableRepository.java:259)
at
org.apache.jackrabbit.core.jndi.RegistryHelper.unregisterRepository(RegistryHelper.java:94)
...