[jboss-jira] [JBoss JIRA] Commented: (JBCACHE-709) Out of memory problem

Sudhakar Pandey (JIRA) jira-events at jboss.com
Mon Jul 24 23:14:11 EDT 2006


    [ http://jira.jboss.com/jira/browse/JBCACHE-709?page=comments#action_12340001 ] 
            
Sudhakar Pandey commented on JBCACHE-709:
-----------------------------------------

That is true.

But my question is even after properly removing the cached object and the node from the TreeCache, why memory leak is happening?

And this does not happen if we do not configure the TreeCache. why?


> Out of memory problem
> ---------------------
>
>                 Key: JBCACHE-709
>                 URL: http://jira.jboss.com/jira/browse/JBCACHE-709
>             Project: JBoss Cache
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 1.2.4SP2
>         Environment: Windows NT, Ecliplse IDE and Pentium 4 processor.
>            Reporter: Sudhakar Pandey
>         Assigned To: Manik Surtani
>            Priority: Critical
>         Attachments: TreeCache.xml
>
>
> Problem:
> ~~~~~~~
> While running the following testcase after entering 66666 records my system program is getting hang.
> Following is the description of program:
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> I am putting some String object in TreeCache, accessing it and then removing it from the cache. I am doing this in a infinite loop. 
> Following is the eviction policy:
> ~~~~~~~~~~~~~~~~~~~~~~~
>         <attribute name="EvictionPolicyConfig">
>            <config>
>               <attribute name="wakeUpIntervalSeconds">72000</attribute>
>               <!-- Cache wide default -->
>               <region name="/_default_">
>               	<attribute name="maxNodes">500</attribute>
> 	          	<attribute name="timeToLiveSeconds">180</attribute>
> 			  	<!-- Maximum time an object is kept in cache regardless of idle time -->
> 			  	<attribute name="maxAgeSeconds">7200</attribute>
>               </region>
>               <!-- yodlee wide default -->
>               <region name="/com/yodlee">
>                 <attribute name="maxNodes">500</attribute>
> 	          	<attribute name="timeToLiveSeconds">180</attribute>
> 			  	<!-- Maximum time an object is kept in cache regardless of idle time -->
> 			  	<attribute name="maxAgeSeconds">7200</attribute>
>               </region>                          
>            </config>
>         </attribute>
> *IMPORTENT*: If I reduce the 'wakeUpIntervalSeconds' then there is no leak. However, I can reduce this time coz it eats up lots of CPU. 
> I have attached the Tree Cache Configuration xml file also.
> Program:
> ~~~~~~~
> public void testTreeCache(){
> 		TreeCache treeCache;
> 		try {
> 			treeCache = new TreeCache();
> 			treeCache.setCacheMode(TreeCache.LOCAL);
> 			
> 			// configure TreeCache
> 			PropertyConfigurator config = new PropertyConfigurator();  
> 			config.configure(treeCache, "com/yodlee/core/system/services/cacheservice/TreeCache.xml");
> 			
> 			treeCache.startService();			
> 			String identifier = "Test/MemoryLeak/";
> 			String key = "key";
> 			String value = "JBoss Cache is a product designed to cache frequently accessed Java objects in order to dramatically improve the performance of e-business applications. By eliminating unnecessary database access, JBoss Cache decreases network traffic and increases the scalability of applications.";
> 			for(int i=0;;i++)
> 			{
> 				System.out.println("Putting key=" + (key +i));
> 				treeCache.put(identifier, key +i, value);
> 				System.out.println(treeCache.get(identifier, key + i));
> 				System.out.println("Removing key=" + (key+i));
> 				treeCache.remove(identifier, key + i);			
> 				
> 			}
> 			//treeCache.stopService();
> 		} catch (Exception e) {
> 			MessageController.log(JBossCacheServiceImpl.class.getName(), 1,
> 					ExceptionHelper.getExceptionStackTrace(e),
> 					MessageController.FATAL);
> 			throw new CoreException(ExceptionHelper.getExceptionStackTrace(e));
> 		}
> 	}

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

        



More information about the jboss-jira mailing list