You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Karl Wright (JIRA)" <ji...@apache.org> on 2013/01/02 08:16:13 UTC

[jira] [Commented] (DERBY-6011) Derby performs very badly (seems to deadlock and timeout) in very simple multi-threaded tests

    [ https://issues.apache.org/jira/browse/DERBY-6011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13542038#comment-13542038 ] 

Karl Wright commented on DERBY-6011:
------------------------------------

Any further comment on this ticket?

FWIW, the situation as I understand it is:

- Derby is reporting a deadlock on a transaction that locks records always in a specific order, so there should be no deadlock occurring in the first place AFAICT
- Even with the given test that uses only runt database tables of max size 100 rows, and with derby.locks.deadlockTimeout=0, I see huge waits of 50 seconds or so on some queries
- All other supported databases perform fine on this test with *no* reported deadlocks (or deadlock-derived failbacks/retries)


                
> Derby performs very badly (seems to deadlock and timeout) in very simple multi-threaded tests
> ---------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6011
>                 URL: https://issues.apache.org/jira/browse/DERBY-6011
>             Project: Derby
>          Issue Type: Bug
>    Affects Versions: 10.7.1.1, 10.8.2.2, 10.9.1.0
>         Environment: Lenovo laptop with SSD's, Windows 7, 64-bit, Sun JDK 1.6.xx
>            Reporter: Karl Wright
>         Attachments: derby.log, manifoldcf.log
>
>
> The Apache ManifoldCF project supports Derby as one of its underlying databases.  Simple tests, however, demonstrate that Derby is apparently deadlocking and timing out repeatedly under multi-thread conditions.  This problem is long-standing, and is not exhibited by any other database ManifoldCF supports, and makes a simple test take between 6x and 12x as long.
> There is a trivial test with demonstrates the problem vs. other databases.  Please do the following (once you have java 1.6+, svn 1.7+, and ant 1.7+ available):
> (1) Check out https://svn.apache.org/repos/asf/manifoldcf/trunk
> (2) Run the following ant target to download the dependencies: "ant make-core-deps"
> (3) Run the Derby test: "ant run-rss-tests-derby" . Note the time required - at least 180 seconds, can be up to 360 seconds.
> (4) Run the equivalent HSQLDB test: "ant run-rss-tests-HSQLDB".  This test takes about 31 seconds to run.
> The output of the Derby test can be found in the directory "tests/rss/test-derby-output".  Have a look at manifoldcf.log, where all long-running queries are reported.  Derby.log is also included, which shows only that during the test's cleanup phase the database is deleted before it is shutdown, which is not pertinent to the performance issue.
> I am available to assist with ManifoldCF, if that seems to be required.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira