Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Standard Widget Toolkit (SWT) » GTK 2.22.0 (Ubuntu 10.10) Eclipse 3.5.2 performance problem
GTK 2.22.0 (Ubuntu 10.10) Eclipse 3.5.2 performance problem [message #638189] Wed, 10 November 2010 11:59
Francis Upton IV is currently offline Francis Upton IVFriend
Messages: 472
Registered: July 2009
Location: Oakland, CA
Senior Member
I have about 2500 Junit tests which run all together as plugin tests and use the same Eclipse IDE instance. When I upgraded from Ubuntu Jaunty (9.04) to Meerkat (10.10) the time it took to run the tests pretty much doubled.

I have tracked it down using the debugger to spending a lot of time in the following two stack traces below. (Using the technique of just pausing with the debugger and looking at the stack trace).

The tests are run output to a xvfb and the pretty much keep the Eclipse window non-visible (originally they ran without the xvfb and the window was kept non-visible in order to allow normal working on the computer running the tests.

It looks like there is some kind of issue with this new version of GTK.

I will try 3.6.1 shortly, but wonder if anyone knows what's going on.


Thread [main] (Suspended)
OS._g_object_unref(long) line: not available [native method]
OS.g_object_unref(long) line: 2399
ScrolledComposite(Composite).releaseWidget() line: 1198
ScrolledComposite(Widget).release(boolean) line: 1056
ScrolledComposite(Control).release(boolean) line: 3293
Composite.releaseChildren(boolean) line: 1185
Composite(Widget).release(boolean) line: 1047
Composite(Control).release(boolean) line: 3293
CTabFolder(Composite).releaseChildren(boolean) line: 1185
CTabFolder(Widget).release(boolean) line: 1047
CTabFolder(Control).release(boolean) line: 3293
Composite.releaseChildren(boolean) line: 1185
Composite(Widget).release(boolean) line: 1047
Composite(Control).release(boolean) line: 3293
Composite.releaseChildren(boolean) line: 1185
Composite(Widget).release(boolean) line: 1047
Composite(Control).release(boolean) line: 3293
SashForm(Composite).releaseChildren(boolean) line: 1185
SashForm(Widget).release(boolean) line: 1047
SashForm(Control).release(boolean) line: 3293
Composite.releaseChildren(boolean) line: 1185
Composite(Widget).release(boolean) line: 1047
Composite(Control).release(boolean) line: 3293
Composite.releaseChildren(boolean) line: 1185
Composite(Widget).release(boolean) line: 1047
Composite(Control).release(boolean) line: 3293
Composite(Widget).dispose() line: 446
EditorPane(PartPane).dispose() line: 180
EditorReference(WorkbenchPartReference).dispose() line: 681
WorkbenchPage.disposePart(WorkbenchPartReference) line: 1715
WorkbenchPage.handleDeferredEvents() line: 1422
WorkbenchPage.deferUpdates(boolean) line: 1406
WorkbenchPage.closeEditors(IEditorReference[], boolean) line: 1380
WorkbenchPage.closeAllEditors(boolean) line: 1184
Editor.closeWorkspace() line: 923
MapRefTest(TransformTestBase).closeWorkspace() line: 933
MapRefTest(TransformTestBase).tearDown() line: 1076
MapRefTest(TestCase).runBare() line: 136
TestResult$1.protect() line: 106
TestResult.runProtected(Test, Protectable) line: 124
TestResult.run(TestCase) line: 109
MapRefTest(TestCase).run(TestResult) line: 120
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
JUnit3TestReference.run(TestExecution) line: 130
TestExecution.run(ITestReference[]) line: 38
RemotePluginTestRunner(RemoteTestRunner).runTests(String[], String, TestExecution) line: 467
RemotePluginTestRunner(RemoteTestRunner).runTests(TestExecut ion) line: 683
RemotePluginTestRunner(RemoteTestRunner).run() line: 390
RemotePluginTestRunner.main(String[]) line: 62
UITestApplication$1.run() line: 114
RunnableLock.run() line: 35
UISynchronizer(Synchronizer).runAsyncMessages(boolean) line: 134
Display.runAsyncMessages(boolean) line: 3468
Display.readAndDispatch() line: 3115
Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2405
Workbench.runUI() line: 2369
Workbench.access$4(Workbench) line: 2221
Workbench$5.run() line: 500
Realm.runWithDefault(Realm, Runnable) line: 332
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 493
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
Standalone.start(IApplicationContext) line: 67
UITestApplication.start(IApplicationContext) line: 46
EclipseAppHandle.run(Object) line: 194
EclipseAppLauncher.runApplication(Object) line: 110
EclipseAppLauncher.start(Object) line: 79
EclipseStarter.run(Object) line: 368
EclipseStarter.run(String[], Runnable) line: 179
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 48
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 600
Main.invokeFramework(String[], URL[]) line: 559
Main.basicRun(String[]) line: 514
Main.run(String[]) line: 1311
Main.main(String[]) line: 1287



Thread [main] (Suspended)
OS._gtk_widget_destroy(long) line: not available [native method]
OS.gtk_widget_destroy(long) line: 11924
Composite(Widget).destroyWidget() line: 412
Composite(Widget).release(boolean) line: 1054
Composite(Control).release(boolean) line: 3293
Composite(Widget).dispose() line: 446
EditorPane(PartPane).dispose() line: 180
EditorReference(WorkbenchPartReference).dispose() line: 681
WorkbenchPage.disposePart(WorkbenchPartReference) line: 1715
WorkbenchPage.handleDeferredEvents() line: 1422
WorkbenchPage.deferUpdates(boolean) line: 1406
WorkbenchPage.closeEditors(IEditorReference[], boolean) line: 1380
WorkbenchPage.closeAllEditors(boolean) line: 1184
Editor.closeWorkspace() line: 923
MapRefTest(TransformTestBase).closeWorkspace() line: 933
MapRefTest(TransformTestBase).tearDown() line: 1076
MapRefTest(TestCase).runBare() line: 136
TestResult$1.protect() line: 106
TestResult.runProtected(Test, Protectable) line: 124
TestResult.run(TestCase) line: 109
MapRefTest(TestCase).run(TestResult) line: 120
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
TestSuite.runTest(Test, TestResult) line: 230
TestSuite.run(TestResult) line: 225
JUnit3TestReference.run(TestExecution) line: 130
TestExecution.run(ITestReference[]) line: 38
RemotePluginTestRunner(RemoteTestRunner).runTests(String[], String, TestExecution) line: 467
RemotePluginTestRunner(RemoteTestRunner).runTests(TestExecut ion) line: 683
RemotePluginTestRunner(RemoteTestRunner).run() line: 390
RemotePluginTestRunner.main(String[]) line: 62
UITestApplication$1.run() line: 114
RunnableLock.run() line: 35
UISynchronizer(Synchronizer).runAsyncMessages(boolean) line: 134
Display.runAsyncMessages(boolean) line: 3468
Display.readAndDispatch() line: 3115
Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2405
Workbench.runUI() line: 2369
Workbench.access$4(Workbench) line: 2221
Workbench$5.run() line: 500
Realm.runWithDefault(Realm, Runnable) line: 332
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 493
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
Standalone.start(IApplicationContext) line: 67
UITestApplication.start(IApplicationContext) line: 46
EclipseAppHandle.run(Object) line: 194
EclipseAppLauncher.runApplication(Object) line: 110
EclipseAppLauncher.start(Object) line: 79
EclipseStarter.run(Object) line: 368
EclipseStarter.run(String[], Runnable) line: 179
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 48
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 600
Main.invokeFramework(String[], URL[]) line: 559
Main.basicRun(String[]) line: 514
Main.run(String[]) line: 1311
Main.main(String[]) line: 1287





Previous Topic:Expand Mac application menu with custom MenuItem
Next Topic:Browser local html with ESWT
Goto Forum:
  


Current Time: Fri Mar 29 15:49:14 GMT 2024

Powered by FUDForum. Page generated in 0.03060 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top