ibatis-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "kevinliu (JIRA)" <ibatis-...@incubator.apache.org>
Subject [jira] Commented: (IBATIS-171) Possible Memory Leak
Date Mon, 18 Jul 2005 08:31:14 GMT
    [ http://issues.apache.org/jira/browse/IBATIS-171?page=comments#action_12316023 ] 

kevinliu commented on IBATIS-171:
---------------------------------

Thx For Your Best Help...I will check my program..

> Possible Memory Leak
> --------------------
>
>          Key: IBATIS-171
>          URL: http://issues.apache.org/jira/browse/IBATIS-171
>      Project: iBatis for Java
>         Type: Bug
>   Components: Build/Deployment
>     Versions: 2.1.0
>  Environment: OS:Solars10.5
> Hardware:P3 128M RAM,40G HD
>     Reporter: kevinliu
>     Priority: Critical

>
> 	I'm a China programer.It's very happy for writing this letter to u.
> 	When i had used ibatis 2.0.9b,i met a trouble:my program take a lot of memory for work
to make my solaris halt by memory leak..And then i checked my program and use profiler to
test it,i found some ibatis class maybe has memory leak at the "hashMap" class.
> 	So i opened the ibatis source code,and found some code as "\com\ibatis\sqlmap\engine\builder\xml\BaseParser.java"
and "SqlMapExecutorDelegate.java" etc which used one or one more hashmap to store some data,But
they didn't release these hashmap by "remove" or "clear" statement.I think them take my program
to death and eat too many memory.
> 	Please help us who using and loving iBatis..:-) Waiting for your reply.THX!
> 	
> 	This is the list that some trouble java file in iBatis 2.10 with this problem:
> ----------------------------------------
> \com\ibatis\sqlmap\engine\builder\xml\BaseParser.java' :
> \com\ibatis\sqlmap\engine\builder\xml\BaseParser.java(22): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\builder\xml\BaseParser.java(130):     public Map sqlIncludes
= new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\cache\CacheModel.java' :
> \com\ibatis\sqlmap\engine\cache\CacheModel.java(31):   private static final Map lockMap
= new HashMap();
> Found 'hashmap' 1 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\cache\fifo\FifoCacheController.java' :
> \com\ibatis\sqlmap\engine\cache\fifo\FifoCacheController.java(19): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\cache\fifo\FifoCacheController.java(42):     this.cache = Collections.synchronizedMap(new
HashMap());
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\cache\lru\LruCacheController.java' :
> \com\ibatis\sqlmap\engine\cache\lru\LruCacheController.java(19): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\cache\lru\LruCacheController.java(42):     this.cache = Collections.synchronizedMap(new
HashMap());
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheController.java' :
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheController.java(24): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheController.java(34):   private Map
cache = Collections.synchronizedMap(new HashMap());
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheLevel.java' :
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheLevel.java(20): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\cache\memory\MemoryCacheLevel.java(28):   private static Map
cacheLevelMap = new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\exchange\MapDataExchange.java' :
> \com\ibatis\sqlmap\engine\exchange\MapDataExchange.java(25): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\exchange\MapDataExchange.java(61):       map = new HashMap();
> \com\ibatis\sqlmap\engine\exchange\MapDataExchange.java(79):       map = new HashMap();
> Found 'hashmap' 3 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java' :
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(47): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(82):   private HashMap mappedStatements;
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(83):   private HashMap cacheModels;
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(84):   private HashMap resultMaps;
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(85):   private HashMap parameterMaps;
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(98):     mappedStatements
= new HashMap();
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(99):     cacheModels = new
HashMap();
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(100):     resultMaps = new
HashMap();
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(101):     parameterMaps =
new HashMap();
> \com\ibatis\sqlmap\engine\impl\SqlMapExecutorDelegate.java(698):     Map map = new HashMap();
> Found 'hashmap' 10 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\parameter\BasicParameterMap.java' :
> \com\ibatis\sqlmap\engine\mapping\parameter\BasicParameterMap.java(30): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\mapping\parameter\BasicParameterMap.java(44):   private Map
parameterMappingIndex = new HashMap();
> \com\ibatis\sqlmap\engine\mapping\parameter\BasicParameterMap.java(89):     Map props
= new HashMap();
> Found 'hashmap' 3 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\result\AutoResultMap.java' :
> \com\ibatis\sqlmap\engine\mapping\result\AutoResultMap.java(29): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\mapping\result\AutoResultMap.java(75):       Map propertyMap
= new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\result\BasicResultMap.java' :
> \com\ibatis\sqlmap\engine\mapping\result\BasicResultMap.java(253):     Map props = new
HashMap();
> \com\ibatis\sqlmap\engine\mapping\result\BasicResultMap.java(329):           uniqueKeys
= new HashMap();
> \com\ibatis\sqlmap\engine\mapping\result\BasicResultMap.java(505):       parameterObject
= new HashMap();
> Found 'hashmap' 3 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\result\Discriminator.java' :
> \com\ibatis\sqlmap\engine\mapping\result\Discriminator.java(6): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\mapping\result\Discriminator.java(37):       subMaps = new
HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagContext.java' :
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagContext.java(21): import
java.util.HashMap;
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagContext.java(32):   private
HashMap attributes;
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagContext.java(45):     attributes
= new HashMap();
> Found 'hashmap' 3 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagHandlerFactory.java' :
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagHandlerFactory.java(18):
import java.util.HashMap;
> \com\ibatis\sqlmap\engine\mapping\sql\dynamic\elements\SqlTagHandlerFactory.java(23):
  private static final Map HANDLER_MAP = new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\scope\BaseScope.java' :
> \com\ibatis\sqlmap\engine\scope\BaseScope.java(18): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\scope\BaseScope.java(25):   private HashMap map = new HashMap(0);
> Found 'hashmap' 3 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\scope\RequestScope.java' :
> \com\ibatis\sqlmap\engine\scope\RequestScope.java(25): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\scope\RequestScope.java(207):       uniqueKeys = new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\type\JdbcTypeRegistry.java' :
> \com\ibatis\sqlmap\engine\type\JdbcTypeRegistry.java(19): import java.util.HashMap;
> \com\ibatis\sqlmap\engine\type\JdbcTypeRegistry.java(32):   private static final Map
TYPE_MAP = new HashMap();
> Found 'hashmap' 2 time(s).
> ----------------------------------------
> \com\ibatis\sqlmap\engine\type\TypeHandlerFactory.java' :
> \com\ibatis\sqlmap\engine\type\TypeHandlerFactory.java(28):   private final Map typeHandlerMap
= new HashMap();
> \com\ibatis\sqlmap\engine\type\TypeHandlerFactory.java(30):   private final HashMap typeAliases
= new HashMap();
> \com\ibatis\sqlmap\engine\type\TypeHandlerFactory.java(104):     putTypeAlias("hashmap",
HashMap.class.getName());
> \com\ibatis\sqlmap\engine\type\TypeHandlerFactory.java(186):       map = new HashMap();
> Found 'hashmap' 6 time(s).
> Search complete, found 'hashmap' 52 time(s). (18 files.)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message