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

Daniel John Debrunner commented on DERBY-2884:
----------------------------------------------

Nice find. Is it even worth creating the read-only list lazily? It's going to 
be used for every commit so every connection will have to create one.

> CtxStack should only create unmodifiable view once per instance
> ---------------------------------------------------------------
>
>                 Key: DERBY-2884
>                 URL: https://issues.apache.org/jira/browse/DERBY-2884
>             Project: Derby
>          Issue Type: Improvement
>          Components: Performance, Services
>    Affects Versions: 10.4.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: ctxstack.diff
>
>
> Each time a transaction is committed or aborted, 
> GenericLanguageConnectionContext.resetSavepoints() goes through the stack of 
> statement contexts and invokes resetSavePoint() on them. Instead of 
> traversing the list in the CtxStack object directly, it fetches a read-only 
> view of the list. Since the lifetime of a CtxStack object and the list within 
> it can span multiple transactions, the read-only view only needs to be 
> created the first time CtxStack.getUnmodifiableList() is called on an object.

-- 
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