History | Log In     View a printable version of the current page. Get help!  
Issue Details [XML]

Key: SES-667
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Peter Ansell
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Sesame

Sesame Sail tries to load a class from within its finalize method which causes dataloss bug if used in tomcat

Created: 15/Apr/09 01:17 AM   Updated: 15/Apr/09 01:17 AM
Component/s: None
Affects Version/s: 2.2.4
Fix Version/s: None

Environment: Tomcat/6.0.18


 Description   
The following exception regularly appears in my logs when I try to restart Tomcat. If I was actually using Sail for data storage this would create data loss as the write lock attempt is rejected and the final write will never occur. If possible the method should do the write without requiring a class to be loaded at this point.

Apr 15, 2009 9:08:06 AM org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already. Could not load info.aduna.concurrent.locks.AbstractReadWriteLockManager$WriteLock. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1273)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
at info.aduna.concurrent.locks.AbstractReadWriteLockManager.createWriteLock(AbstractReadWriteLockManager.java:164)
at info.aduna.concurrent.locks.WritePrefReadWriteLockManager.getWriteLock(WritePrefReadWriteLockManager.java:116)
at org.openrdf.sail.helpers.SailConnectionBase.getExclusiveConnectionLock(SailConnectionBase.java:497)
at org.openrdf.sail.helpers.SailConnectionBase.close(SailConnectionBase.java:137)
at org.openrdf.sail.helpers.SailConnectionBase.finalize(SailConnectionBase.java:205)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)


 All   Comments   Change History      Sort Order:
There are no comments yet on this issue.