DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=31907>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=31907 DB2 deadlocks retrieving "/actions" object when creating collection under a locked collection Summary: DB2 deadlocks retrieving "/actions" object when creating collection under a locked collection Product: Slide Version: 2.1 Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: Other Component: Core AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The problem was that some of the action related methods in the SecurityImpl class were not "enlisted" to the current transaction when they made db calls. The "Uri" object instance that was being used to call the store's retrieve interface didn't have the current SlideToken set because the Uri was being created with getUri(String) and not getUri(SlideToken, String). Without the current token set the Uri assumes that there is no current transaction going on and gets another connection to make its requests on. It seems that it was eventually blocking waiting for the transaction to complete but the transaction could not complete until it had performed its db reads. So I modified the path to loadActions() called from the matchAction() method which takes a SlideToken and passed this token through to loadActions() setting Uri's with the getUri(String) with getUri(SlideToken, String) when I found it. I also fixed the call path to loadActions() that came from the PropertyHelper classes. TEST CASE: this was easy to reproduce for me using the DB2 client on the 2.1b2 Slide server release I have. From a fresh Slide installation with an empty DB and Slide just started, simply lock a collection like "/files" then attempt to create a collection under it. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
