[ 
https://issues.apache.org/jira/browse/DERBY-2817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Matrigali updated DERBY-2817:
----------------------------------

    Derby Info: [Patch Available, Regression]  (was: [Regression, Patch 
Available])

Good catch, I think fix for this should go into 10.3 -- this is critical for 
supporting customers who get these errors (actually most often customers can 
help themselves given this info).  

Has anyone checked the error for a lock timeout where we print the entire lock 
list.  

Also has anyone written a junit test to look at actual text of error message, I 
agree in most cases that is a bad idea, but some test that verifies the above
information seems like we won't miss this kind of bug.  Unfortunately it is not 
straight forward as the message includes some transactions id's and I think 
there is also a problem in that the order of locks is JVM specific.


> Error messages for deadlocks contain less information than in 10.2
> ------------------------------------------------------------------
>
>                 Key: DERBY-2817
>                 URL: https://issues.apache.org/jira/browse/DERBY-2817
>             Project: Derby
>          Issue Type: Bug
>          Components: Services
>    Affects Versions: 10.3.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>             Fix For: 10.3.0.0
>
>         Attachments: deadlock.diff
>
>
> In 10.2, an error message for a deadlock would look like this:
> ERROR 40001: A lock could not be obtained due to a deadlock, cycle of locks 
> and waiters is:
> Lock : ROW, T, (1,8)
>   Waiting XID : {235, S} , APP, select * from t where id = 2
>   Granted XID : {238, X} 
> Lock : ROW, T, (1,7)
>   Waiting XID : {238, S} , APP, select * from t where id = 1
>   Granted XID : {235, X} 
> . The selected victim is XID : 235.
> On trunk, the same deadlock would be reported as
> java.sql.SQLException: A lock could not be obtained due to a deadlock, cycle 
> of locks and waiters is:
> Lock : ROW, T, (1,8)
>   Waiting XID : [EMAIL PROTECTED], S} 
>   Granted XID : [EMAIL PROTECTED], X} 
> Lock : ROW, T, (1,7)
>   Waiting XID : [EMAIL PROTECTED], S} 
>   Granted XID : [EMAIL PROTECTED], X} 
> . The selected victim is XID : [EMAIL PROTECTED]
> That is, the transaction id and the failing statement are not shown.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to