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

Mamta A. Satoor commented on DERBY-6011:
----------------------------------------

Knut, please correct me if my following understanding of this jira is wrong. I 
am also looking forward to your "some kind of systematic description of the 
changes we should expect."

The proposed fix adjusts the estimated cost for the query plan such that unique 
index will be favored over non-unique index if there is equality predicate for 
all the index columns of the unique index. In a table with enough data, even 
without the proposed changes, the unique index would have weighted higher 
automatically because of the number of rows in the table but for edge case with 
very few rows, non-unique index will appear better without the proposed change. 
Also, if I understand the change correctly, this change will in theory impact 
only edge case queries where the table in question has only couple rows. The 
behavior of all the other queries will remain unchanged.

                
> 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, force-specific-index.diff, manifoldcf.log, 
> prefer-unique-index-v1.diff
>
>
> 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

Reply via email to