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