[teiid-issues] [JBoss JIRA] (TEIID-2359) BufferManager reserved thread local can keep buffermanager references alive

Steven Hawkins (JIRA) jira-events at lists.jboss.org
Fri Jan 25 12:40:47 EST 2013


     [ https://issues.jboss.org/browse/TEIID-2359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins resolved TEIID-2359.
-----------------------------------

    Fix Version/s: 8.3
       Resolution: Done


Switched the reserved by thread to a static class to remove the erroneous reference to a buffermanager instance.  Also changed the threadlocal pattern for buffer usage to just duplicating at the level of the InodeBlockManager.  This will have a higher gc overhead, but it removes the need for using a theadlocal - which would also require a reference queue to actually clean up the references (although I suspect that would still be less overhead as the queue will typically be empty and thus low cost to check).
                
> BufferManager reserved thread local can keep buffermanager references alive
> ---------------------------------------------------------------------------
>
>                 Key: TEIID-2359
>                 URL: https://issues.jboss.org/browse/TEIID-2359
>             Project: Teiid
>          Issue Type: Feature Request
>          Components: Query Engine
>    Affects Versions: 8.0
>            Reporter: Steven Hawkins
>            Assignee: Steven Hawkins
>             Fix For: 8.3
>
>
> The most common implementation of ThreadLocal holds does not garbarge collect ThreadLocal values when the ThreadLocal goes out of scope - only when the Thread stops.  Thus the BufferManager reserved threadlocal being a non-static inner class is inadvertently keeping a reference alive. 
> Marked as starting with Teiid 8.0 as selective Teiid restarts (which is how multiple instances are introduced) are not performed in the 7.x series.

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


More information about the teiid-issues mailing list