You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Anthony Baker (JIRA)" <ji...@apache.org> on 2016/08/22 16:57:22 UTC
[jira] [Closed] (GEODE-1517) Transaction could still proceed after
TXManagerImpl is closing during cache close.
[ https://issues.apache.org/jira/browse/GEODE-1517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anthony Baker closed GEODE-1517.
--------------------------------
> Transaction could still proceed after TXManagerImpl is closing during cache close.
> ----------------------------------------------------------------------------------
>
> Key: GEODE-1517
> URL: https://issues.apache.org/jira/browse/GEODE-1517
> Project: Geode
> Issue Type: Bug
> Components: transactions
> Reporter: Eric Shu
> Assignee: Eric Shu
> Fix For: 1.0.0-incubating.M3
>
>
> In GemFireCacheImpl.close method, TXManagerImpl.close() is invoked. It will try to cleanup the TXState.
> public void close() {
> if (isClosed()) {
> return;
> }
> this.closed = true;
> for (TXStateProxy proxy: this.hostedTXStates.values()) {
> proxy.close();
> }
> for (TXStateProxy proxy: this.localTxMap.values()) {
> proxy.close();
> }
> {
> TransactionListener[] listeners = getListeners();
> for (int i=0; i < listeners.length; i++) {
> closeListener(listeners[i]);
> }
> }
> }
> However, this close() method could be invoked while other p2p thread is still performing tx ops. And it could resurrect a closed TXStateProxy. With offheap enabled, this could cause offheap memory leak once cache is closed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)