-
1. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Mar 21, 2013 8:03 AM (in response to jskovjyskebankdk)The above is suspect #2.
Suspect #3 is this:
6.044 instances of "org.jboss.tools.common.model.filesystems.impl.JarSystemImpl", loaded by "org.jboss.tools.common.model" occupy 37.818.184 (10,02%) bytes.
Both hang off the same org.eclipse.jdt.core.IElementChangedListener[]
So that's 28% of used memory :|
-
2. Re: JBoss 4.1.0.Alpha1 memory leak?
maxandersen Mar 21, 2013 8:53 AM (in response to jskovjyskebankdk)Hej Jesper,
Thanks for reporting this - it does looks bad so much appreciated.
Can you provide some details on what you are loading - i.e. how big a workspace ? type of projects etc. ?
-
3. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Mar 21, 2013 9:10 AM (in response to maxandersen)It's a pretty big workspace:
21-03-2013 13:04 <DIR> .
21-03-2013 13:04 <DIR> ..
15-03-2013 10:31 <DIR> .ivy.V01-04+
20-03-2013 10:18 <DIR> .metadata
18-12-2012 10:52 <DIR> eclipse-dictionary
26-02-2013 14:34 <DIR> envers
15-03-2013 10:31 <DIR> jb.tes.appmeta
15-03-2013 10:29 <DIR> jb.tes.appmeta.cfg
15-03-2013 10:31 <DIR> jb.tes.appmeta.ejb
15-03-2013 10:30 <DIR> jb.tes.appmeta.service.web
15-03-2013 10:30 <DIR> jb.tes.appmeta.web
14-12-2012 13:46 <DIR> jb.tes.dbtest
14-12-2012 13:45 <DIR> jb.tes.dbtest.cfg
14-12-2012 13:45 <DIR> jb.tes.dbtest.ejb
14-12-2012 13:45 <DIR> jb.tes.dbtest.web
17-12-2012 09:56 <DIR> jb.tes.ee.utilities.ejb.java
11-01-2013 12:47 <DIR> jb.tes.errorserver
11-01-2013 12:45 <DIR> jb.tes.errorserver.cfg
11-01-2013 12:45 <DIR> jb.tes.errorserver.docs
11-01-2013 12:47 <DIR> jb.tes.errorserver.ejb
11-01-2013 12:47 <DIR> jb.tes.errorserver.prime.web
14-12-2012 12:10 <DIR> jb.tes.extauthprovider
28-11-2012 13:32 <DIR> jb.tes.extauthprovider.cfg
13-12-2012 09:39 <DIR> jb.tes.extauthprovider.client.java
13-12-2012 09:44 <DIR> jb.tes.extauthprovider.ejb
13-12-2012 09:39 <DIR> jb.tes.extauthprovider.ejbrestclient.java
07-12-2012 12:12 <DIR> jb.tes.extauthprovider.frontend.demo
28-11-2012 13:33 <DIR> jb.tes.extauthprovider.frontend.demo.ejb
07-12-2012 12:12 <DIR> jb.tes.extauthprovider.frontend.demo.web
13-12-2012 09:39 <DIR> jb.tes.extauthprovider.nemid.jsf.java
13-12-2012 09:44 <DIR> jb.tes.extauthprovider.service.web
13-12-2012 09:44 <DIR> jb.tes.extauthprovider.web
29-11-2012 12:43 <DIR> jb.tes.extauthprovider.web.java
28-11-2012 13:32 <DIR> jb.tes.externallogin
28-11-2012 13:31 <DIR> jb.tes.externallogin.cfg
28-11-2012 13:31 <DIR> jb.tes.externallogin.ejb
28-11-2012 13:32 <DIR> jb.tes.externallogin.jsf.java
28-11-2012 13:32 <DIR> jb.tes.externallogin.web
20-12-2012 14:00 <DIR> jb.tes.fsaccess.cfg
15-01-2013 10:03 <DIR> jb.tes.fsaccess.ra
13-03-2013 15:34 <DIR> jb.tes.fstest
05-12-2012 16:39 <DIR> jb.tes.fstest.cfg
23-01-2013 13:13 <DIR> jb.tes.fstest.ejb
05-12-2012 16:37 <DIR> jb.tes.fstest.service.web
13-03-2013 15:34 <DIR> jb.tes.fstest.web
07-01-2013 08:58 <DIR> jb.tes.heuristicexception
07-01-2013 08:58 <DIR> jb.tes.heuristicexception.cfg
07-01-2013 08:58 <DIR> jb.tes.heuristicexception.ejb
07-01-2013 08:58 <DIR> jb.tes.heuristicexception.web
14-01-2013 15:20 <DIR> jb.tes.jboss.configuration.cfg
15-01-2013 09:09 <DIR> jb.tes.jboss.loginmodule.java
28-11-2012 14:03 <DIR> jb.tes.jdma.login
28-11-2012 13:31 <DIR> jb.tes.jdma.login.cfg
28-11-2012 14:03 <DIR> jb.tes.jdma.login.web
14-01-2013 14:38 <DIR> jb.tes.jee.core
11-02-2013 14:19 <DIR> jb.tes.jee.core.cfg
04-01-2013 15:02 <DIR> jb.tes.jee.core.docs
14-01-2013 14:38 <DIR> jb.tes.jee.core.ejb
14-01-2013 14:38 <DIR> jb.tes.jee.core.ejbclient
05-03-2013 10:26 <DIR> jb.tes.jee.core.faces.java
05-03-2013 10:26 <DIR> jb.tes.jee.core.faces.prime.java
14-01-2013 14:37 <DIR> jb.tes.jee.core.guap.java
11-02-2013 14:19 <DIR> jb.tes.jee.core.java
13-03-2013 13:54 <DIR> jb.tes.jee.core.jaxrs.java
11-02-2013 14:19 <DIR> jb.tes.jee.core.jboss.java
14-01-2013 14:37 <DIR> jb.tes.jee.core.jdbc.java
05-03-2013 10:26 <DIR> jb.tes.jee.core.pki.java
20-03-2013 14:09 <DIR> jb.tes.jee.core.sol
04-03-2013 08:59 <DIR> jb.tes.jee.core.test
11-03-2013 13:39 <DIR> jb.tes.jee.core.test.cfg
04-03-2013 08:59 <DIR> jb.tes.jee.core.test.ejb
04-03-2013 08:59 <DIR> jb.tes.jee.core.test.ejbclient
04-03-2013 08:59 <DIR> jb.tes.jee.core.test.web
04-03-2013 08:58 <DIR> jb.tes.jee.core.test.ws.encrypted.ejb
04-03-2013 08:59 <DIR> jb.tes.jee.core.test.ws.provider.ejb
13-03-2013 13:54 <DIR> jb.tes.jee.core.web
13-03-2013 13:54 <DIR> jb.tes.jee.core.web.java
21-03-2013 13:04 <DIR> jb.tes.jms.heuristic
21-03-2013 13:04 <DIR> jb.tes.jms.heuristic.ejb
21-03-2013 13:04 <DIR> jb.tes.jms.heuristic.web
28-11-2012 14:03 <DIR> jb.tes.jyskedistance.login
29-11-2012 12:22 <DIR> jb.tes.jyskedistance.login.cfg
28-11-2012 14:03 <DIR> jb.tes.jyskedistance.login.web
07-03-2013 14:45 <DIR> jb.tes.ldapaccess
07-03-2013 14:45 <DIR> jb.tes.ldapaccess.cfg
07-03-2013 14:46 <DIR> jb.tes.ldapaccess.ejb
07-03-2013 14:45 <DIR> jb.tes.ldapaccess.services.web
07-03-2013 14:46 <DIR> jb.tes.ldapaccess.web
07-01-2013 09:00 <DIR> jb.tes.participator
07-01-2013 08:59 <DIR> jb.tes.participator.cfg
07-01-2013 08:59 <DIR> jb.tes.participator.ejb
07-01-2013 08:59 <DIR> jb.tes.participator.web
28-02-2013 14:57 <DIR> jb.tes.small
07-03-2013 11:48 <DIR> jb.tes.small.cfg
28-02-2013 14:54 <DIR> jb.tes.small.ejb
28-02-2013 14:54 <DIR> jb.tes.small.web
03-12-2012 09:44 <DIR> jb.tes.smsexchange
03-12-2012 09:42 <DIR> jb.tes.smsexchange.cfg
03-12-2012 09:44 <DIR> jb.tes.smsexchange.ejb
03-12-2012 09:44 <DIR> jb.tes.smsexchange.web
03-12-2012 09:16 <DIR> jb.tes.smsgateway
03-12-2012 09:15 <DIR> jb.tes.smsgateway.cfg
03-12-2012 09:15 <DIR> jb.tes.smsgateway.docs
03-12-2012 09:16 <DIR> jb.tes.smsgateway.ejb
03-12-2012 09:15 <DIR> jb.tes.smsgateway.java
03-12-2012 09:16 <DIR> jb.tes.smsgateway.web
29-11-2012 13:18 <DIR> jb.tes.smssender
29-11-2012 13:18 <DIR> jb.tes.smssender.cfg
29-11-2012 13:18 <DIR> jb.tes.smssender.ejb
29-11-2012 13:18 <DIR> jb.tes.smssender.service.web
29-11-2012 13:18 <DIR> jb.tes.smssender.web
05-03-2013 13:04 <DIR> jfadaptor
13-12-2012 09:26 <DIR> RemoteSystemsTempFiles
22-01-2013 09:19 <DIR> sd.atp
25-01-2013 10:40 <DIR> sd.atp.cfg
24-01-2013 13:51 <DIR> sd.atp.ejb
22-01-2013 09:19 <DIR> sd.atp.published.java
22-01-2013 09:19 <DIR> sd.atp.web
12-12-2012 14:56 <DIR> sd.common.ali
12-12-2012 14:55 <DIR> sd.common.ali.cfg
12-12-2012 14:56 <DIR> sd.common.ali.client.ejb
12-12-2012 14:56 <DIR> sd.common.ali.ejb
12-12-2012 14:56 <DIR> sd.common.ali.ejbclient
12-12-2012 14:56 <DIR> sd.common.ali.web
12-12-2012 14:56 <DIR> sd.common.ali.ws.ejb
25-02-2013 08:35 <DIR> sd.quicksearch
25-02-2013 08:33 <DIR> sd.quicksearch.cfg
25-02-2013 08:34 <DIR> sd.quicksearch.ejb
25-02-2013 08:33 <DIR> sd.quicksearch.loadtest
25-02-2013 08:35 <DIR> sd.quicksearch.web
25-01-2013 08:59 <DIR> sd.sd1595.ctgtest
25-01-2013 11:58 <DIR> sd.sd1595.ctgtest.cfg
25-01-2013 08:58 <DIR> sd.sd1595.ctgtest.ejb
25-01-2013 08:59 <DIR> sd.sd1595.ctgtest.web
18-02-2013 15:27 <DIR> sd.teeasy.java
05-03-2013 13:04 <DIR> sdadaptor
05-03-2013 13:04 <DIR> smsexchange
05-03-2013 13:04 <DIR> smsgateway
15-01-2013 12:24 <DIR> txtimemout.ejb
15-01-2013 12:24 <DIR> txtimemout.ejbClient
15-01-2013 12:22 <DIR> txtimeout
15-01-2013 12:25 <DIR> txtimeout.web
Only about half the projects are open though.
Projects without a suffix are EAR projects (if that is not obvious).
Some of the projects are pretty big.
It's a bit hard to be much more specific than that. Hope it helps.
-
4. Re: JBoss 4.1.0.Alpha1 memory leak?
scabanovich Mar 21, 2013 2:15 PM (in response to jskovjyskebankdk)KB and CDI model use data from jars, so that they are loaded at first request. If there are dependencies between projects in workspace then a request from one project loads all related projects. There should be only one JarAccess object for a jar. If several projects use the same Maven dependencies and/or Runtime, they should use same JarAccess object for each jar. Now, a single new Java EE Web project created from JBoss Central has in Maven Dependences and JBoss AS 7.1 Runtime as many as 170 jars. So, it is probable that your workspace does reference 900 or more distinct jars. Could you please check that? If the number of distinct jars in your workspace is much less, then there is a memory leak with JarAccess. Instances of JarSystemImpl are created for each jar in each project, but they are sharing data if they reference the same jar, so that if there are 6.044 instances of JarSystemImpl but only 900 distinct jar files, then only 900 of JarSystemImpl instances will be loaded, the other will be lightweight references to them. These objects are lazy-loaded that is they load only as much data as requested. However, KB builder now searches through the entire jar for files myfaces-metadata.xml and facelet taglib files; and in this way results in complete loading of data which cannot be easily released being shared between projects. So, I think that we have to check if we can avoid scanning through the entire jar.
-
5. Re: JBoss 4.1.0.Alpha1 memory leak?
scabanovich Mar 21, 2013 7:31 PM (in response to jskovjyskebankdk)Issue is created https://issues.jboss.org/browse/JBIDE-13837
-
6. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Mar 22, 2013 4:06 AM (in response to jskovjyskebankdk)I have tried loading a workspace with around 40 open projects that have some 500 jars in build classpaths.
Both 4.0.0.Final and 4.1.0.Alpha1 have the same amount of "leaks" when started and all projects have been built.
So the problem with Eclipse slowing down is *probably* not related to what I reported above.
At least that specific "leak" is probably not what causes the slowdown over time.
I'm not sure how to provide better input at this time.
We have just switched back to 4.0.0.Final (and Eclipse M6) to make sure the problem goes away when not using Alpha1.
-
7. Re: JBoss 4.1.0.Alpha1 memory leak?
maxandersen Mar 22, 2013 4:44 PM (in response to jskovjyskebankdk)Jesper,
Eclipse M6 core has a known memory leak problem: https://bugs.eclipse.org/bugs/show_bug.cgi?id=402912
If eclipse is used for a while it will run out of memory because of a leak in the saving of workspace state.
Any chance that is what you are seeing ?
They will fix this in M7, but until then the following is the workaround:
"The workaround for M6 is to set the Preferences>General>"Workbench save interval" to 0, which disables it."
Does that help you or is it something else ?
-
8. Re: JBoss 4.1.0.Alpha1 memory leak?
scabanovich Mar 22, 2013 8:28 PM (in response to jskovjyskebankdk)One more issue is created https://issues.jboss.org/browse/JBIDE-13844 "JarAccess should ignore .class entries in jar files". All tools get info about classes from JDT, we scan jars for .xml, .properties, .xhtml, etc. but not for .class entries. They can be just ignored by JarAccess. After that its memory load will drop from 68Mb to 10Mb or less.
-
9. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Apr 2, 2013 2:00 AM (in response to maxandersen)No, we were on M5 when testing the JBossTools alpha.
We just upgraded to M6 - but reverting to the earlier JBossTools release. We'll let M6 settle for a week or so before we'll try anything new.
But then I think I convince my team to try out a nightly to see if matters have improved.
-
10. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Apr 10, 2013 3:59 AM (in response to jskovjyskebankdk)We've been on B6241 since Monday morning, and it looks much better with M6. Yes, possibly premature to declare it fixed, but I thought you would like to know
There may still be a leak issue, but I only hear it from the developer doing web stuff. I'll see if we can get a bit sharper on the problem.
PS: Forum tells me I can only post content once every 900 seconds. Why is that? Major pain!
-
11. Re: JBoss 4.1.0.Alpha1 memory leak?
maxandersen Apr 11, 2013 1:25 PM (in response to jskovjyskebankdk)Thanks Jesper - glad it is working.
Let me know if I can help with respect to "the developer doing web stuff" ...would be great to know what areas are troubling him.
About the forum - 900 seconds/15m sounds a bit limiting; I've pinged help@jboss.org for an explanation
-
12. Re: JBoss 4.1.0.Alpha1 memory leak?
jskovjyskebankdk Apr 30, 2013 7:20 AM (in response to maxandersen)Web developer has been doing mostly java for a while, so we have nothing specific at the moment.
We'll let all y'all know if he gets into the rough again...
-
13. Re: JBoss 4.1.0.Alpha1 memory leak?
virtualdatabase Apr 30, 2013 10:15 AM (in response to maxandersen). but any reasonable answer to the " 900 seconds" issue..
-
14. Re: JBoss 4.1.0.Alpha1 memory leak?
maxandersen Apr 30, 2013 10:30 AM (in response to virtualdatabase)1 of 1 people found this helpfulyes - sorry for not responding.
I asked help@jboss.org and their answer was that new users has this throttle limit to avoid spam attacks.
It gets reduced the more and longer you participate.