Bug 140244 - Eclipse 3.2 gtk RC2 dumps core on Solaris 9
Eclipse 3.2 gtk RC2 dumps core on Solaris 9
Status: RESOLVED FIXED
Product: Platform
Classification: Eclipse
Component: SWT
3.2
PC Solaris-GTK
: P3 major (vote)
: 3.2.1
Assigned To: Grant Gayed CLA Friend
:
: 149960 150162 152307 152698 153104 153602 154722 154801 155750 158931 (view as bug list)
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2006-05-04 16:20 EDT by John P. Petrakis CLA Friend
Modified: 2007-05-08 12:56 EDT (History)
16 users (show)

See Also:


Attachments
initial patch (2.21 KB, patch)
2006-05-09 17:36 EDT, Grant Gayed CLA Friend
no flags Details | Diff
replacement swt plug-in (1.43 MB, application/x-zip-compressed)
2006-06-28 11:48 EDT, Grant Gayed CLA Friend
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description John P. Petrakis CLA Friend 2006-05-04 16:20:10 EDT
Eclipse 3.2 RC2 dumps core on Solaris 9 at startup.... the following traceback is generated:


An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0xDFD1557C
Function=gtk_tooltips_force_window+0xB8
Library=/usr/lib/libgtk-x11-2.0.so.0.100.0

Current Java thread:
	at org.eclipse.swt.internal.gtk.OS._gtk_tooltips_force_window(Native Method)
	at org.eclipse.swt.internal.gtk.OS.gtk_tooltips_force_window(OS.java:6684)
	at org.eclipse.swt.widgets.Shell.setToolTipText(Shell.java:1638)
	at org.eclipse.swt.widgets.ToolItem.setToolTipText(ToolItem.java:1009)
	at org.eclipse.swt.widgets.ToolItem.setToolTipText(ToolItem.java:1003)
	at org.eclipse.jface.action.ActionContributionItem.update(ActionContributionItem.java:720)
	at org.eclipse.jface.action.ActionContributionItem.fill(ActionContributionItem.java:330)
	at org.eclipse.jface.action.ToolBarManager.update(ToolBarManager.java:317)
	at org.eclipse.jface.action.ToolBarManager.createControl(ToolBarManager.java:101)
	at org.eclipse.jface.action.ToolBarContributionItem.fill(ToolBarContributionItem.java:190)
	at org.eclipse.jface.action.CoolBarManager.update(CoolBarManager.java:919)
	at org.eclipse.jface.action.CoolBarManager.createControl(CoolBarManager.java:244)
	at org.eclipse.jface.internal.provisional.action.CoolBarManager2.createControl2(CoolBarManager2.java:76)
	at org.eclipse.jface.window.ApplicationWindow.createCoolBarControl(ApplicationWindow.java:513)
	at org.eclipse.ui.internal.WorkbenchWindow.createDefaultContents(WorkbenchWindow.java:952)
	at org.eclipse.ui.internal.WorkbenchWindowConfigurer.createDefaultContents(WorkbenchWindowConfigurer.java:610)
	at org.eclipse.ui.application.WorkbenchWindowAdvisor.createWindowContents(WorkbenchWindowAdvisor.java:267)
	at org.eclipse.ui.internal.WorkbenchWindow.createContents(WorkbenchWindow.java:898)
	at org.eclipse.jface.window.Window.create(Window.java:426)
	at org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:789)
	at org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1437)
	at org.eclipse.ui.internal.Workbench.access$10(Workbench.java:1435)
	at org.eclipse.ui.internal.Workbench$16.run(Workbench.java:1399)
	at org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1421)
	at org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1397)
	at org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190)
	at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:708)
	at org.eclipse.ui.internal.Workbench.init(Workbench.java:1085)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1847)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
	at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
	at org.eclipse.core.launcher.Main.run(Main.java:977)
	at org.eclipse.core.launcher.Main.main(Main.java:952)

I was using Sun JVM 1.4.2_08 but I also tried _04 and 1.5.0_06 with the same result.
Comment 1 Steve Northover CLA Friend 2006-05-05 13:44:12 EDT
Do we have a Solaris 9 box around?
Comment 2 Sten Feldman CLA Friend 2006-05-09 07:09:25 EDT
I have confirmed this with Solaris 8 and Java 1.4.2_08, 1.5.0_02 and 1.5.0_06. With Eclipse 3.2RC3. This must be something specific to 3.2 as Eclipse 3.1.2 works nicely.
Comment 3 Grant Gayed CLA Friend 2006-05-09 11:38:07 EDT
SN, I was able to reproduce this with UI's solaris 8 box.
Comment 4 Grant Gayed CLA Friend 2006-05-09 12:24:11 EDT
The gtk that I am able to reproduce this problem with here is only 2.1.0; the minimum supported gtk version is supposed to be 2.2.1.  John, what version of gtk is installed on your solaris box?

I've confirmed that we're not passing a bad value to gtk_tooltips_force_window, so it's not clear why this invocation is crashing.
Comment 5 John P. Petrakis CLA Friend 2006-05-09 13:56:12 EDT
It seems to be version 2.1.x... I am *exceedingly sorry* about this.  I just figured out how to tell what the installed version is...  My system upgrades evidently did not include the 2.2.x libs.
Comment 6 Grant Gayed CLA Friend 2006-05-09 14:23:30 EDT
I suspect that UI's and John's boxes both had gtk 2.1.x because this was a common package for pre-Solaris-10 users to download and install until recently (note that sunfreeware.com does now offer a packaged gtk-2.2.4).

It's unfortunate that many pre-Solaris-10 users will run into this crash if they haven't upgraded their gtk installation recently.  SN what do you think about the previously-mused version check on this call?  Or alternatively, at least a README entry?  Now that solaris-motif builds have been discontinued, a pre-Solaris-10 user that gets stuck on this won't have an Eclipse > 3.1.2 that they can run.
Comment 7 Steve Northover CLA Friend 2006-05-09 14:41:57 EDT
GG, please attach a patch to this bug report.
Comment 8 Grant Gayed CLA Friend 2006-05-09 17:36:02 EDT
Created attachment 40883 [details]
initial patch

Here's the initial patch.  Still need to investigate whether this happens in older linux-gtk's or not, and hopefully narrow down the version check.
Comment 9 Mike Wilson CLA Friend 2006-05-09 18:18:23 EDT
This fix seems reasonable, since the problem version is older than our minimum supported version. +1.

Q: Will the user understand that this is what is causing his tooltips to not appear? 
Comment 10 Grant Gayed CLA Friend 2006-05-10 11:26:53 EDT
I've confirmed that gtk_tooltips_force_window does not crash on linux-gtk 2.2.1 and on solaris-gtk 2.2.4, so this crash seems to be a result of using a dev release of gtk.  Doing a version of check of >= 2.2.1 should be safe because this will not exclude tooltip positioning from happening on typical proper installations that can handle it, but will ensure that eclipse comes up for users with older gtk installations on solaris.

I think that the patch is good, except that singling out Solaris in the comment is not appropriate since it's possible that this would happen with a 2.1.x linux-gtk install as well.

McQ: Tooltips will still appear without gtk_tooltips_force_window, but in some cases like setting a tooltip on a Shell, its position will not be near the pointer but below the widget.
Comment 11 Steve Northover CLA Friend 2006-05-10 13:07:32 EDT
I think we WONTFIX this.  It works in stable versions of GTK.  GG, do you agree?
Comment 12 Grant Gayed CLA Friend 2006-05-10 14:08:43 EDT
We typically would not fix this.  Though I think that the patch is safe, it is fixing an invalid case, and it's quite likely that there will be other problems encountered by a gtk 2.1.x user.  I'm fine with WONTFIX for this.  A FAQ entry is probably a good idea though since there seem to be a few users hitting it.
Comment 13 Chris McGee CLA Friend 2006-06-08 13:04:52 EDT
I am encountering this problem with Solaris 9 SPARC with the version of GTK that comes with the Sun packaged GNOME desktop environment available on their website. I can imagine that alot of people using Solaris 9 SPARC will be using this version of the GTK library. Should this be fixed in eclipse to prevent alot of headaches?
Comment 14 Steven Wasleski CLA Friend 2006-06-23 14:05:39 EDT
Has anyone suceeded at upgrading the level of GTK on Solaris 9 and getting eclipse 3.2 to run there recently?  We really need this to work.  We know it work a few months ago since some globalization testing was done in Japan on Solaris 9 and 10.  However, lately we only seem to be able to get it to run on 10.  If a pointer to a good GTK library for Solaris 9 could be provided, it would be greatly appreciated.
Comment 15 Steve Northover CLA Friend 2006-06-23 15:56:19 EDT
Grant, are we sure that this is the same crash?  If so, since the work around is easy, we could apply it and hope that there are no other fatal Solaris GTK 2.1.x problems.
Comment 16 Grant Gayed CLA Friend 2006-06-26 16:00:59 EDT
re: Comment 14

UI's Solaris 8 box is running gtk-2.2.4 downloaded from sunfreeware.com.  It runs fine but visually looks very strange.  It's good enough for us to do simple testing on, but I would not call it usable.  I'm not sure if this is a problem with the gtk libraries or with the Solaris 8 box.

We used to have a Solaris 9 that was running it and it looked fine, but the gtk on there was compiled from source.  I believe there may have been a previous attempt to install the gtk package from sunfreeware.com on that machine, but it failed with a "missing gtk_font symbol" error of some sort (even gtk-demo failed with this).
Comment 17 Grant Gayed CLA Friend 2006-06-26 16:03:00 EDT
re: Comment 15

I'm assuming it's the same crash, since it's stated to be (comment 13).  Reopening the report for consideration for inclusion in 3.3 and/or 3.2.1.
Comment 18 Chris McGee CLA Friend 2006-06-26 17:38:43 EDT
(In reply to comment #16)
> re: Comment 14

Hi Grant,

I was just wondering what version(s) of Solaris that eclipse is planning to support. I looked recently at the eclipse download page and it has a download link for both Solaris x86/GTK and Solaris 8/SPARC/GTK while the "supported versions" link says only Solaris 10/SPARC/GTK.

I tried to compile the latest stable version of GTK/Pango/ATK/FreeType/etc. from the GNOME website on Solaris 9 and found it to be pretty difficult and eventually it gave me problems because I wasn't using x.org or XFree86. If you're planning to support Solaris 9/SPARC/GTK could you put a HOWTO document on the eclipse.org website giving precise information on how to set up a plain Solaris 9 to allow it to run eclipse? Hopefully there could be either a link to a packaged gtk library or a step-by-step instructions to compile a specific version of gtk.
Comment 19 Grant Gayed CLA Friend 2006-06-27 12:09:11 EDT
Solaris 10 is the reference and supported platform, so I think the build page is not meant to say Solaris 8.  That being said, fixes can be made for "unsupported platforms" if they're reasonably straight-forward and safe.

Since gtk 2.1.x is what's in the Sun packaged GNOME desktop environment, this fix has been released into HEAD and its target set to 3.2.1 so that it is considered for the maintenence release.

I'll ask Felipe about his experience/wisdom with compiling solaris-gtk from source.
Comment 20 Matthew T. Veety CLA Friend 2006-06-28 10:14:47 EDT
Just for clarification, this fix targeted for 3.2.1 would allow Eclipse to run on a Solaris 9 GTK system with the base GTK that comes with the OS (2.1.x)?  

If so, would it be possible for us to get a patch so that we could do our spot testing on Solaris 9?
Comment 21 Steve Northover CLA Friend 2006-06-28 11:10:47 EDT
This bug contains a patch.
Comment 22 Grant Gayed CLA Friend 2006-06-28 11:48:24 EDT
Created attachment 45470 [details]
replacement swt plug-in

re: comment 20

Here's a replacement swt plugin that contains the fix.  You can drop into your eclipse's plugins directory (assumes eclipse build M20060609-1217 which is 3.2).

Yes, this fix addresses the problem in comment 0, which is eclipse not starting on gtk 2.1.x.  There may be other problems lurking since by definition of having an odd minor version number this version of gtk is likely flaky.  It should enable more testing than was previously possible though.
Comment 23 Billy Biggs CLA Friend 2006-06-29 23:11:51 EDT
My 2c:

GTK+ 2.1 is a development version, ISVs such as Eclipse should not target
this.  The intention was that Solaris 10 would be the minimum supported
version for SWT/GTK+, since GTK+ actually ships with Solaris 10.  Users of
Solaris 8 and 9 should be on their own to install GTK+ if they need to on
these platforms, especially since GTK+ upstream does not target Solaris
specifically, so it can be quite challenging to get running.
Comment 24 Steve Northover CLA Friend 2006-06-30 10:44:33 EDT
You are absolutely right, however, the workaround for this particular problem is trivial.
Comment 25 Steve Northover CLA Friend 2006-07-07 11:42:58 EDT
*** Bug 149960 has been marked as a duplicate of this bug. ***
Comment 26 Grant Gayed CLA Friend 2006-07-18 12:53:35 EDT
*** Bug 150162 has been marked as a duplicate of this bug. ***
Comment 27 Grant Gayed CLA Friend 2006-07-26 11:22:13 EDT
this fix has been added to the 3.2.1 stream
Comment 28 Grant Gayed CLA Friend 2006-08-02 15:08:14 EDT
*** Bug 152307 has been marked as a duplicate of this bug. ***
Comment 29 Grant Gayed CLA Friend 2006-08-03 09:33:50 EDT
*** Bug 152698 has been marked as a duplicate of this bug. ***
Comment 30 Grant Gayed CLA Friend 2006-08-08 15:19:53 EDT
*** Bug 153104 has been marked as a duplicate of this bug. ***
Comment 31 Grant Gayed CLA Friend 2006-08-14 10:26:37 EDT
*** Bug 153602 has been marked as a duplicate of this bug. ***
Comment 32 Grant Gayed CLA Friend 2006-08-22 14:46:39 EDT
*** Bug 154722 has been marked as a duplicate of this bug. ***
Comment 33 Grant Gayed CLA Friend 2006-08-23 17:27:53 EDT
*** Bug 154801 has been marked as a duplicate of this bug. ***
Comment 34 Steve Northover CLA Friend 2006-09-05 16:44:59 EDT
*** Bug 155750 has been marked as a duplicate of this bug. ***
Comment 35 Steve Northover CLA Friend 2006-11-14 15:05:08 EST
*** Bug 158931 has been marked as a duplicate of this bug. ***