Repository: incubator-trafodion
Updated Branches:
  refs/heads/master 7fec7ad3d -> 17412358d


[TRAFODION-1784]remove closed statement from HashMap

[TRAFDOION-1784][MTDCS]statement shoud be removed from HashMap when it's closed.
TrafConnection uses a HashMap to store the statements in MTDCS code.
When a statement is closed, it should be removed from the HashMap,
otherwise the JVM garbage collection couldn't delete the unused objects.


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/a4a2a33a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/a4a2a33a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/a4a2a33a

Branch: refs/heads/master
Commit: a4a2a33abfb48da0527c52af4f7c230ac495a02f
Parents: 53d586b
Author: Weiqing Xu <[email protected]>
Authored: Wed Jan 27 02:14:20 2016 +0000
Committer: Weiqing Xu <[email protected]>
Committed: Wed Jan 27 02:14:20 2016 +0000

----------------------------------------------------------------------
 .../java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java   | 1 +
 .../java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java    | 1 +
 2 files changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/a4a2a33a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java
----------------------------------------------------------------------
diff --git 
a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java 
b/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java
index 55ff24d..7ef9acc 100644
--- a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java
+++ b/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafConnection.java
@@ -364,6 +364,7 @@ public class TrafConnection {
                 LOG.debug(serverWorkerName + ". closeTrafStatement.containsKey 
[" + stmtLabel + "] is found ");
             trafStatement = getTrafStatement(stmtLabel, 0);
             trafStatement.closeTStatement();
+            statements.remove(stmtLabel);
         }
         return trafStatement;
     }

http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/a4a2a33a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java
----------------------------------------------------------------------
diff --git 
a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java 
b/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java
index 045ddff..1c0d934 100644
--- a/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java
+++ b/dcs/src/main/java/org/trafodion/dcs/servermt/serverSql/TrafStatement.java
@@ -119,6 +119,7 @@ public class TrafStatement {
         try {
             if (curKey != 0){
                 resultSetList.get(curKey).closeTResultSet();
+                resultSetList.remove(curKey);
              }
         } catch (Exception e){}
     }

Reply via email to