[
http://jira.jboss.com/jira/browse/JBCACHE-1165?page=comments#action_12387719 ]
Manik Surtani commented on JBCACHE-1165:
----------------------------------------
The fix is not absolute and will require pretty bug architectural changes.
There is an edge case where a NodeNotFoundException may occur, and this is due to parent
nodes not being
write locked when children are added/removed.
The problem is in the way READ_COMMITTED is implemented, i.e., writers are not blocked by
readers and this
allows a reader to hold a lock when a writer comes in and deletes the node in question.
Workaround is to use LockParentForChildInsertRemove OR to use REPEATABLE_READ.
Endless loop in PessimisticLockInterceptor, sometimes seen as a
NodeNotExistsException
--------------------------------------------------------------------------------------
Key: JBCACHE-1165
URL:
http://jira.jboss.com/jira/browse/JBCACHE-1165
Project: JBoss Cache
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 2.0.0.GA, 1.4.1.SP4
Environment: Windows XP, Sun jdk150_06
Solaris 10
Reporter: Jacek Halat
Assigned To: Manik Surtani
Fix For: 2.1.0.GA, 1.4.1.SP7
Attachments: ConcurentPutRemoveTest.java, ConsoleOut.log
See ConcurrentPutRemoveTest
This sometimes manifests itself as an endless loop, and sometimes as a
NodeNotExistsException (on the putter thread) when concurrent puts and removes are
involved.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira