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 "Bryan Pendleton (JIRA)" <ji...@apache.org> on 2010/01/12 15:51:54 UTC

[jira] Commented: (DERBY-4512) Avoid unnecessary lookup in transaction table when adding transaction

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

Bryan Pendleton commented on DERBY-4512:
----------------------------------------

+1 to removing the unnecessary check *and* leaving the SanityManager assertion as a verification.


> Avoid unnecessary lookup in transaction table when adding transaction
> ---------------------------------------------------------------------
>
>                 Key: DERBY-4512
>                 URL: https://issues.apache.org/jira/browse/DERBY-4512
>             Project: Derby
>          Issue Type: Improvement
>          Components: Store
>    Affects Versions: 10.6.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: assert.diff
>
>
> TransactionTable.add() first checks if the Hashtable trans contains a transaction with the same id as the one being added. If it does, add() does nothing. If there is no such transaction, a new TransactionTableEntry is created and put into the Hashtable.
> I believe that TransactionTable.add() is never called on a transaction that has already been added to the table. If this is the case, there's no point in checking the Hashtable first. Instead, we could just create a new TransactionTableEntry and add it unconditionally. This would reduce the number of (synchronized) Hashtable calls and could improve the performance in scenarios like the one described in DERBY-3092.

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