I have seen that before, but not since I started to use the MultiECLockManager. I will guess that some exception is raised which caused the session to terminate without unlocking and (the default?) editing context. When it gets finalized, this result. The solution is to ensure that all editing contexts are unlocked before being discarded.

Chuck


On Dec 5, 2005, at 8:51 AM, Helge Staedtler wrote:

Hi all Debugging Experts on EditingContexts,

I have some weird locking-problem which on an irregular basis leads to
following exception:

ERROR #1:
[2005-12-05 10:14:18 CET] <Finalizer> Unable to release locks held by a
deallocated EOEditingContext.
[2005-12-05 10:14:18 CET] <Finalizer> java.lang.IllegalStateException:
Illegal Lock usage: unlock() called without a lock().
    at
com.webobjects.foundation.NSRecursiveLock.unlock (NSRecursiveLock.java:210)
    at
com.webobjects.eocontrol.EOEditingContext.unlock (EOEditingContext.java:4660)
    at
com.webobjects.eocontrol.EOEditingContext.unlock (EOEditingContext.java:4658)
    at
com.webobjects.eocontrol.EOEditingContext._dispose (EOEditingContext.java:109
5)
    at
com.webobjects.eocontrol.EOEditingContext.finalize (EOEditingContext.java:111
3)
    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)

ERROR #2:
[2005-12-05 12:09:02 CET] <Finalizer> Unable to release locks held by a
deallocated EOEditingContext.
[2005-12-05 12:09:02 CET] <Finalizer> java.lang.IllegalStateException:
Illegal Lock usage: unlock() called without a lock().
    at
com.webobjects.foundation.NSRecursiveLock.unlock (NSRecursiveLock.java:210)
    at
com.webobjects.eocontrol.EOEditingContext.unlock (EOEditingContext.java:4660)
    at
com.webobjects.eocontrol.EOEditingContext.unlock (EOEditingContext.java:4658)
    at
com.webobjects.eocontrol.EOEditingContext._dispose (EOEditingContext.java:109
5)
    at
com.webobjects.eocontrol.EOEditingContext.finalize (EOEditingContext.java:111
3)
    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)

Does anyone know which error might be behind this obscure message? I did not
see any reference to my code in the stacktraces. Anyone experienced
something similar?

Some backgroundinfo: This is a WO-app with usually about 10000 requests per day. Several users (up to 60 in parallel) are using the app which is running
with one instance in concurrent request handling mode.

regards,
Helge

--
Momo was there and joined in, that was all, but for some reason her mere presence put bright ideas into their heads. -- from Michael Ende's "Momo"

Expect and Respect.


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/chill% 40global-village.net

This email sent to [EMAIL PROTECTED]

--
Coming in 2006 - an introduction to web applications using WebObjects and Xcode http://www.global-village.net/wointro

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects




_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to