Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [wtp-releng] Perf tests on M5 and later

I run with Sun JDK 1.5.0_14.
I run the org.eclipse.wtp.releng.wtpbuilder.perf.PerfBuilder to run the tests. VM arguments given to PerfBuilder are "-Xms256m -Xmx256m". I am not sure if they are tranferred to the target Eclipse IDE. I'd suggest not - the target Eclipse IDE should use the ones in its eclipse.ini file, which are "-Xms40 -Xmx256m" and "--launcher.XXMaxPermSize256m".
 
The OOM reported is "java.lang.OutOfMemoryError: Java heap space", which means that the memory is insufficient in the heap, not in the perm space.
 
I will try to run the tests on M5 again with increased heap.
 
About the stack overflow in M6. Well... the depth level of the recursion before blowing with StackOverflowError is 1,013. This is the number of "at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:958)" lines in the stack trace. I suspect that doubling the stack size (-Xss option) would just increase the agony of this recursion. I would suggest a bug in DeltaDataTree there. Maybe | can try to run the test seperately here.
 
Greetings,
Kaloyan


From: wtp-releng-bounces@xxxxxxxxxxx [mailto:wtp-releng-bounces@xxxxxxxxxxx] On Behalf Of David M Williams
Sent: Thursday, April 10, 2008 3:46 PM
To: Webtools releng discussion list
Subject: RE: [wtp-releng] Perf tests on M5 and later


I can only make some quick observations, now. Not as concrete as my last hint.

First, you're not running the tests in Bulgarian are you? Just kidding (well, half kidding, ... it should work fine in either, but surprised ICU comes into play, so there may be some odd bug that's causing too much work to go on).

Second, you might be hitting some new, real bugs in the platform. First, the out-of-memory might be that something about M5 just requires more memory than it used to? Are you running with a generous memory limit? Which JRE? (If Sun, it's max-perm space may need increasing). From a quick read of the stack trace, it appears the stack overflow might really be some deeply nested recursion, (as opposed to an infinite loop). If that's the case, doubling the stack size might help? Say, to -X1024k. If more memory _is_ being used, it'd be nice to find out why ... might be something in the platform. If we can narrow it down a bit, it'd be worth a bug report ... though, seems the server team should investigate :)

Third, and perhaps most concrete .... that  message "Do you want to exit the workbench > Yes/No" is not supposed to pop up if you use the Eclipse test framework, _and_ specify the test-ui type of test. So, not sure what that particular test uses, but you might check ... that'd at least stop the tests from blocking all the rest, even if it fails to run.

HTH




From: "Raev, Kaloyan" <kaloyan.raev@xxxxxxx>
To: "Webtools releng discussion list" <wtp-releng@xxxxxxxxxxx>
Date: 04/10/2008 07:15 AM
Subject: RE: [wtp-releng] Perf tests on M5 and later





Thanks, David,
 
This helped! The releng.wtpbuilder is in the workspace where I run the pert test script, so changes in this project are easy.
Now the xsd-runtime is extracted in we fall in the next problem :-)
 
Now the perf test procedure is blocked on the org.eclipse.jst.server.tomcat.tests.performance.tomcat50.AllTests test. An "Internal Error > Do you want to exit the workbench > Yes/No" message box pops up in the tested IDE. This effectively blocks the test to finish and therefore the whole procedure blocks.
 
This happens in both M5 and M6, but the reason (found in the logs) are different.
In M5 we have an OutOfMemoryError in com.ibm.icu (see stack trace below), while in M6 we have a StackOverflowError in org.eclipse.core (see stack trace below).
 
Any hints on these issues are warmly welcome and higly appreciated.
 
Greetings,
Kaloyan

 
M5: OutOfMemoryError
=========================
 
!ENTRY org.eclipse.core.jobs 4 2 2008-04-09 04:58:13.883
!MESSAGE An internal error occurred during: "Process resource updates".
!STACK 0
java.lang.OutOfMemoryError: Java heap space
at java.lang.String.<init>(String.java:174)
at com.ibm.icu.impl.ICUResourceBundle.getStringValue(ICUResourceBundle.java:1054)
at com.ibm.icu.impl.ICUResourceBundleImpl$ResourceString.<init>(ICUResourceBundleImpl.java:122)
at com.ibm.icu.impl.ICUResourceBundle.createBundleObject(ICUResourceBundle.java:948)
at com.ibm.icu.impl.ICUResourceBundleImpl$ResourceTable.handleGet(ICUResourceBundleImpl.java:204)
at com.ibm.icu.impl.ICUResourceBundle.getBundle(ICUResourceBundle.java:887)
at com.ibm.icu.impl.ICUResourceBundle.createBundle(ICUResourceBundle.java:848)
at com.ibm.icu.impl.ICUResourceBundle.instantiateBundle(ICUResourceBundle.java:751)
at com.ibm.icu.impl.ICUResourceBundle.getBundleInstance(ICUResourceBundle.java:719)
at com.ibm.icu.util.UResourceBundle.getRootType(UResourceBundle.java:465)
at com.ibm.icu.util.UResourceBundle.instantiateBundle(UResourceBundle.java:513)
at com.ibm.icu.util.UResourceBundle.getBundleInstance(UResourceBundle.java:137)
at com.ibm.icu.util.UResourceBundle.getBundleInstance(UResourceBundle.java:217)
at com.ibm.icu.text.RuleBasedCollator.<init>(RuleBasedCollator.java:1818)
at com.ibm.icu.text.CollatorServiceShim$1$CollatorFactory.handleCreate(CollatorServiceShim.java:112)
at com.ibm.icu.impl.ICULocaleService$LocaleKeyFactory.create(ICULocaleService.java:378)
at com.ibm.icu.impl.ICUService.getKey(ICUService.java:460)
at com.ibm.icu.impl.ICUService.getKey(ICUService.java:380)
at com.ibm.icu.impl.ICULocaleService.get(ICULocaleService.java:72)
at com.ibm.icu.impl.ICULocaleService.get(ICULocaleService.java:56)
at com.ibm.icu.text.CollatorServiceShim.getInstance(CollatorServiceShim.java:32)
at com.ibm.icu.text.Collator.getInstance(Collator.java:478)
at com.ibm.icu.text.Collator.getInstance(Collator.java:312)
at org.eclipse.ui.internal.views.markers.MarkerEntry.getCollationKey(MarkerEntry.java:150)
at org.eclipse.ui.internal.views.markers.MarkerDescriptionField.getDescriptionKey(MarkerDescriptionField.java:144)
at org.eclipse.ui.internal.views.markers.MarkerDescriptionField.compare(MarkerDescriptionField.java:124)
at org.eclipse.ui.internal.views.markers.MarkerProblemSeverityAndMessageField.compare(MarkerProblemSeverityAndMessageField.java:39)
at org.eclipse.ui.internal.views.markers.MarkerComparator.compare(MarkerComparator.java:99)
at java.util.Arrays.mergeSort(Arrays.java:1284)
at java.util.Arrays.mergeSort(Arrays.java:1295)
at java.util.Arrays.mergeSort(Arrays.java:1295)
at java.util.Arrays.mergeSort(Arrays.java:1295)

 
=========================
 
M6. StackOverflowError
=========================
 
!ENTRY org.eclipse.core.jobs 4 2 2008-04-10 13:11:03.296
!MESSAGE An internal error occurred during: "Compacting memory".
!STACK 0
java.lang.StackOverflowError
at java.util.HashMap.get(HashMap.java:343)
at org.eclipse.core.internal.utils.StringPool.add(StringPool.java:47)
at org.eclipse.core.internal.resources.MarkerAttributeMap.shareStrings(MarkerAttributeMap.java:274)
at org.eclipse.core.internal.resources.MarkerInfo.shareStrings(MarkerInfo.java:194)
at org.eclipse.core.internal.resources.MarkerSet.shareStrings(MarkerSet.java:241)
at org.eclipse.core.internal.resources.ResourceInfo.shareStrings(ResourceInfo.java:454)
at org.eclipse.core.internal.dtree.DataTreeNode.storeStrings(DataTreeNode.java:342)
at org.eclipse.core.internal.dtree.AbstractDataTreeNode.storeStrings(AbstractDataTreeNode.java:536)
at org.eclipse.core.internal.dtree.AbstractDataTreeNode.storeStrings(AbstractDataTreeNode.java:536)
at org.eclipse.core.internal.dtree.AbstractDataTreeNode.storeStrings(AbstractDataTreeNode.java:536)
at org.eclipse.core.internal.dtree.DataTreeNode.storeStrings(DataTreeNode.java:338)
at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:956)
at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:958)
at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:958)
at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:958)
at org.eclipse.core.internal.dtree.DeltaDataTree.storeStrings(DeltaDataTree.java:958)

........................................
 
=========================


From: wtp-releng-bounces@xxxxxxxxxxx [mailto:wtp-releng-bounces@xxxxxxxxxxx] On Behalf Of David M Williams
Sent:
Tuesday, April 08, 2008 7:52 AM
To:
Webtools releng discussion list
Subject:
RE: [wtp-releng] Perf tests on M5 and later



Yes, I can give some hints.
Assuming you use the "wtp.perf" distribution in releng.wtpbuilder ...
I see it using the dependancies in the releng map files.
When we switched to the split-up emf zips, the emf runtime was left with an ID of emf

and a new one added for the xsd info set with an ID of emfxsd ... so, the following needs to be
added to the "setup" target in the build.xml. I've released this change to head ... but not sure if/how/where you can version it to make it part of your M5 run.


     
<antcall target="getAndInstall">
         
<param
             
name="groupId"
             
value="emfxsd" />
         
<param
             
name="clean"
             
value="true" />
     
</antcall>

Thanks,



From: "Raev, Kaloyan" <kaloyan.raev@xxxxxxx>
To: "Webtools releng discussion list" <wtp-releng@xxxxxxxxxxx>
Date: 04/07/2008 11:47 AM
Subject: RE: [wtp-releng] Perf tests on M5 and later






One step ahead...

The described performance tests plugins cannot be started, because they
depend (indirectly) on the org.eclipse.xsd plugin, which is not
available in the target installation. It turns out that the perf test
procudure extracts only the emf-runtime.zip, but not the
xsd-runtime.zip.

As far as I remember the old emf-xsd-sdo.zip has been split to
emf-runtime.zip, xsd-runtime.zip, etc. starting M5. But the perf test
script does not reflect this change correctly.

David, can you give some hints on this?

Greetings,
Kaloyan


-----Original Message-----
From: wtp-releng-bounces@xxxxxxxxxxx
[
mailto:wtp-releng-bounces@xxxxxxxxxxx] On Behalf Of Raev, Kaloyan
Sent: Wednesday, April 02, 2008 7:38 PM
To: Webtools releng discussion list
Subject: [wtp-releng] Perf tests on M5 and later

Hello, this mail is a follow-up from the last status call:

http://wiki.eclipse.org/WTP_2008-03-27

There I mentioned that the perf test procedure experience problems (new
one) with M5 and later builds. Perf results can be seen here:

http://download.eclipse.org/webtools/downloads/drops/R3.0/S-3.0M5-200802
18021547/perfresults/graph/performance.php

There are some test groups that failed executing. Reasons:
               Could not find plugin "org.eclipse.wst.xsd.tests.performance"
               Could not find plugin "org.eclipse.wst.wsdl.tests.performance"
               Could not find plugin "org.eclipse.jst.ws.tests.performance"
               Could not find plugin
"org.eclipse.jst.j2ee.core.tests.performance"

It is strange that the above plugins are actually in the plug-in
directory of the installation and they should be found with no problem.

Another issue is that there are some tests that prints lots of messages
to System.out: total of ~1,500,000 lines or ~120 MB. The tests are:
               
org.eclipse.wst.common.tests.performance.internal.CleanBuildTestCase
               
org.eclipse.jst.server.tomcat.tests.performance.tomcat50.AllTests
               
org.eclipse.wst.html.ui.tests.performance.scalability.Validate1KBFileTes
tCase
I guess this is the reason that the perf test procedure takes three
times more than normal. The pattern of all of the dumps is: "<timestamp>
<some_id> TestValidator3 <something>".

Here is the console log (~120 MB) for reference:

http://download.eclipse.org/webtools/downloads/drops/R3.0/S-3.0M5-200802
18021547/perfresults/consolelogs/wtpperflog.txt

I hope someone have an idea why the above issues happen and give me a
hand on finding solution.

Greetings,
Kaloyan Raev
Eclipse WTP Committer
<
http://www.eclipse.org/webtools/people/person.php?name=raev>
Senior Developer
NW C JS TOOLS JEE (BG)
SAP Labs Bulgaria
T +359/2/9157-416

mailto:kaloyan.raev@xxxxxxx
www.sap.com

P Save a tree - please do not print this email unless you really need
to!

_______________________________________________
wtp-releng mailing list
wtp-releng@xxxxxxxxxxx

https://dev.eclipse.org/mailman/listinfo/wtp-releng
_______________________________________________
wtp-releng mailing list
wtp-releng@xxxxxxxxxxx

https://dev.eclipse.org/mailman/listinfo/wtp-releng
_______________________________________________
wtp-releng mailing list
wtp-releng@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-releng


Back to the top