Hi all,

I am starting to get another locking exception, shortly after switching to 5.4. Could be that the update changed something, or that I simply never managed to trigger this before (race condition). So, the exception is:

java.lang.IllegalMonitorStateException
at java.util.concurrent.locks.ReentrantLock $Sync.tryRelease(ReentrantLock.java:125) at java .util .concurrent .locks .AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java: 1137) at java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java: 431) at com .webobjects .eodistribution .client.EODistributedObjectStore.unlock(EODistributedObjectStore.java: 107) at com .webobjects .eocontrol.EOEditingContext.unlockObjectStore(EOEditingContext.java: 4668)
        at org.wojc.client.JCEC.unlockObjectStore(JCEC.java:280)
at com .webobjects .eocontrol.EOCustomObject.willReadRelationship(EOCustomObject.java:1281) at com.webobjects.eocontrol._EOMutableKnownKeyDictionary$Initializer $ _LazyGenericRecordBinding .valueInObject(_EOMutableKnownKeyDictionary.java:614) at com .webobjects .eocontrol.EOCustomObject.storedValueForKey(EOCustomObject.java:1634) at com.havaso.dvis.client.eof.eo._Account.debitBookings(_Account.java: 168)
...


This happens while I have two threads doing some work. One is performing calculations, the other is updating the GUI. Both of them are accessing the same EOs, asking them for data.

So, a few questions:
1. Does anyone know if ReentrantLock is only used since 5.4? I don't recall seeing WO use any java.util.concurrent stuff before... 2. EOCustomObject.willReadRelationship is calling "unlockObjectStore(...)" while the thread this is happening on does not actually own the lock in the EODistributedObjectStore... To me this looks like a bug outside the scope of my code. Or am I missing something?
3. Ideas, suggestions (bug reporting aside)?

Thanks,
F
_______________________________________________
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