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 "Olav Sandstaa (JIRA)" <ji...@apache.org> on 2007/05/16 02:09:16 UTC

[jira] Created: (DERBY-2657) Performance regression after check-in of svn 531971

Performance regression after check-in of svn 531971
---------------------------------------------------

                 Key: DERBY-2657
                 URL: https://issues.apache.org/jira/browse/DERBY-2657
             Project: Derby
          Issue Type: Bug
          Components: Store
    Affects Versions: 10.3.0.0
         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
            Reporter: Olav Sandstaa


After check-in of svn 531971 on DERBY-2537 it seems like there for
some loads are a performance regression of about 10-15 percent.

For more info about this issue see the following mail thread:

http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html



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


[jira] Updated: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Olav Sandstaa (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Olav Sandstaa updated DERBY-2657:
---------------------------------

    Attachment: TestClient2.java

Test client that can be used to show that there has been a performance regression.

This test is  based on a slightly modified version of the test client found in
DERBY-1961. The main change is to add a secondary index to
it that is used for the queries.

To run this client do:

1. Create and initialize database:

    java  TestClient2 -a initdb -u "jdbc:derby:/tmp/tulldb;create=true"

2. Run test (which does SELECT * FROM ... WHERE SEC_ID= X) with two
client threads:

    java TestClient2 -a select -r 60 -c 2 -u "jdbc:derby:/tmp/tulldb"



> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>         Attachments: TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Updated: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Mike Matrigali (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mike Matrigali updated DERBY-2657:
----------------------------------


Thanks knut, this is definitely the right fix.  I had done the changes to get the dataValueFactory into the class and then forgot to use it rather than looking it up.  It is interesting that looking up the factory made such a big difference.  I had wondered when I made the change whether it was worth passing the factory down on Xact initialization was worth it - seems it was.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>            Assignee: Knut Anders Hatlen
>             Fix For: 10.3.0.0
>
>         Attachments: d2657.diff, TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Commented: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12503786 ] 

Knut Anders Hatlen commented on DERBY-2657:
-------------------------------------------

I ran Olav's test client against revision 531970 and revision 531971, and used DTrace to monitor object allocations. What jumped out, was that revision 531971 allocated a large number of ProtocolKey objects. It turns out this is caused by Xact.getDataValueFactory() which was introduced in that revision. Instead of returning the value of its dataValueFactory field, it invokes Monitor.findServiceModule() which creates a ProtocolKey object that is used in a Hashtable look-up. When I changed that method so that it just returned dataValueFactory, I didn't see the difference in performance between the two revisions any more.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>             Fix For: 10.3.0.0
>
>         Attachments: TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Commented: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12503792 ] 

Knut Anders Hatlen commented on DERBY-2657:
-------------------------------------------

By the way, the number of allocations of ProtocolKey objects is much smaller on head of trunk, because the DERBY-827 patch started reusing some of them. Still, I think it would be good to have this fixed.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>            Assignee: Knut Anders Hatlen
>             Fix For: 10.3.0.0
>
>         Attachments: TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Resolved: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen resolved DERBY-2657.
---------------------------------------

    Resolution: Fixed

Committed revision 546440.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>            Assignee: Knut Anders Hatlen
>             Fix For: 10.3.0.0
>
>         Attachments: d2657.diff, TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Updated: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-2657:
---------------------------------

          Urgency: Blocker
    Fix Version/s: 10.3.0.0

Marking this issue as a blocker for 10.3. We are caught between 2 major focus areas for the 10.3 release: performance improvements and language senstitive ordering. A performance regression is serious enough by itself, but it is particularly serious for a release which is trying to boost Derby performance.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>             Fix For: 10.3.0.0
>
>         Attachments: TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Updated: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen updated DERBY-2657:
--------------------------------------

    Attachment: d2657.diff

Attaching a patch (d2657.diff) which makes Xact.getDataValueFactory() return the field value directly instead of going through the Hashtable in BaseMonitor. Derbyall and suites.All ran cleanly.

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>            Assignee: Knut Anders Hatlen
>             Fix For: 10.3.0.0
>
>         Attachments: d2657.diff, TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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


[jira] Assigned: (DERBY-2657) Performance regression after check-in of svn 531971

Posted by "Knut Anders Hatlen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen reassigned DERBY-2657:
-----------------------------------------

    Assignee: Knut Anders Hatlen

> Performance regression after check-in of svn 531971
> ---------------------------------------------------
>
>                 Key: DERBY-2657
>                 URL: https://issues.apache.org/jira/browse/DERBY-2657
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.3.0.0
>         Environment: Solaris/Linux, Sun JDK 5 & 6, IBM 1.5
>            Reporter: Olav Sandstaa
>            Assignee: Knut Anders Hatlen
>             Fix For: 10.3.0.0
>
>         Attachments: TestClient2.java
>
>
> After check-in of svn 531971 on DERBY-2537 it seems like there for
> some loads are a performance regression of about 10-15 percent.
> For more info about this issue see the following mail thread:
> http://www.nabble.com/Performance-regression-after-check-in-on-DERBY-2537-(SVN-531971)-t3651494.html

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