Closed Bug 529786 Opened 15 years ago Closed 14 years ago

Upgrade GTK+ on talos machines to 2.12.5 due to a common crash during Talos tests

Categories

(Release Engineering :: General, defect, P3)

defect

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 537065

People

(Reporter: mak, Unassigned)

References

Details

We are seeing a pretty common crash in Linux due to libgtk and related to tooltips, and karl noticed in comment https://bugzilla.mozilla.org/show_bug.cgi?id=528708#c9 that GTK 2.12.5 has fixed a crash in tooltips similar to the one we see.

Would be cool if someone could try to upgrade the library on Linux tinderboxes to see if this crash disappear
-> RelEng
Assignee: server-ops → nobody
Component: Server Operations: Tinderbox Maintenance → Release Engineering
QA Contact: mrz → release
No longer blocks: 519438
The Linux machines in our pool all run CentOS 5.0, which do not have gtk packages available past 2.10.4, which we're already running.

If this crash is reproducible on a developer machine, can someone try building against a newer gtk and see if it does indeed fix the problem?

It's going to be a fairly big job to have a custom installed gtk running, especially since we need to continue building against 2.10 for 1.9.1. Between figuring out what the dependencies are, preparing and then rolling it out, and the build config changes required I'd estimate this would take at least a 3 days time. Longer wouldn't surprise me.

The other question is whether we can raise our minimum requirements to 2.12.4, from 2.10 at this point in the 3.6 cycle. CC'ing beltzner and shaver for input on that.
Oh, I may have misunderstood here. Are you talking about the runtime libraries only, or also what we build against?

The build machines (which also run our unittests) have GTK 2.10 on them. The Talos machines have 2.12.0. Which ones are you asking to be upgraded?
Talos machines are crashing.
Summary: Upgrade GTK+ to 2.12.5 due to a common crash → Upgrade GTK+ to 2.12.5 due to a common crash during Talos tests
It might be worth checking out the 2.12.9 build from Ubuntu 8.04 LTS hardy
http://packages.ubuntu.com/hardy/libgtk2.0-0

There shouldn't be any new dependencies introduced in gtk itself, but this build has compiled against newer libraries than exist on 7.10 gutsy so it is possible there could be some new binary dependencies.  The package manager at least would need some persuasion not to want those newer libraries installed.  (Updating Pango to a different major version could affect numbers.)
Summary: Upgrade GTK+ to 2.12.5 due to a common crash during Talos tests → Upgrade GTK+ on talos machines to 2.12.5 due to a common crash during Talos tests
For the record, our Talos machines run Ubuntu 7.10. We'll figure out something in terms of updating the packages, though.

Thanks for the link, Karl.
BTW, the stack trace of the crash that was fixed in GTK is exactly what we are seeing on talos: https://bugzilla.gnome.org/page.cgi?id=trace.html&trace_id=177910
Beltzner/shaver, please ignore the comments about minimum requirements - they don't apply given that this is talos-only.

Before we talk about upgrading all of the machines we need to pull one out of the pool, upgrade it, and see if this fix will even work.

Alice or Lukas, can one of you give this a shot today?
Lukas agreed to give this a try.
Assignee: nobody → bhearsum
Assignee: bhearsum → lsblakk
I thought of something else, too:
How often will this be seen in the wild? Are there any supported distros using affected versions of GTK? Should we work around this in our codebase rather than upgrading GTK?
Trying to use the http://mirrors.kernel.org/ubuntu/pool/main/g/gtk+2.0/libgtk2.0-0_2.12.9-3ubuntu2_i386.deb

dpkg: regarding libgtk2.0-0_2.12.9-3ubuntu2_i386.deb containing libgtk2.0-0:
 libgtk2.0-0 conflicts with metacity (<< 1:2.20.0-1)
  metacity (version 1:2.20.0-0ubuntu3) is present and installed.
dpkg: error processing libgtk2.0-0_2.12.9-3ubuntu2_i386.deb (--install):
 conflicting packages - not installing libgtk2.0-0
Errors were encountered while processing:
 libgtk2.0-0_2.12.9-3ubuntu2_i386.deb

Then, using the gtk http://ftp.gnome.org/pub/gnome/sources/gtk+/2.12/gtk+-2.12.5.tar.bz2

No package 'glib-2.0' found
No package 'atk' found
No package 'pango' found
No package 'cairo' found
(In reply to comment #10)
> I thought of something else, too:
> How often will this be seen in the wild? Are there any supported distros using
> affected versions of GTK? Should we work around this in our codebase rather
> than upgrading GTK?

I've sort of answered this in bug 528708 comment 19.  That's a good place to discuss, but I doubt there's much we can do.
(In reply to comment #11)
> Trying to use the
> http://mirrors.kernel.org/ubuntu/pool/main/g/gtk+2.0/libgtk2.0-0_2.12.9-3ubuntu2_i386.deb
> 
> dpkg: regarding libgtk2.0-0_2.12.9-3ubuntu2_i386.deb containing libgtk2.0-0:
>  libgtk2.0-0 conflicts with metacity (<< 1:2.20.0-1)
>   metacity (version 1:2.20.0-0ubuntu3) is present and installed.
> dpkg: error processing libgtk2.0-0_2.12.9-3ubuntu2_i386.deb (--install):
>  conflicting packages - not installing libgtk2.0-0
> Errors were encountered while processing:
>  libgtk2.0-0_2.12.9-3ubuntu2_i386.deb

That's http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=450693
Sounds like it only affected metacity < 2.19.1 so 
version 1:2.20.0-0ubuntu3 should be fine.

I don't know dpkg, but I think the thing to try is ignoring dependencies and then check libraries with "ldd -r".

> Then, using the gtk
> http://ftp.gnome.org/pub/gnome/sources/gtk+/2.12/gtk+-2.12.5.tar.bz2
> 
> No package 'glib-2.0' found
> No package 'atk' found
> No package 'pango' found
> No package 'cairo' found

-dev packages would be needed on the build machine (which need not be a talos machine).

I don't know whether debian has a system for installing necessary -dev packages for building a source package.  If so, the source package could be edited and built.
So I tried the Ubuntu deb pkg again with ignoring conflicts, then also it turned out that dependencies needed to be ignored.  In the end it installed with this:

mozqa@qm-ref-ubuntu:~$ sudo dpkg -i --force-conflicts --force-depends libgtk2.0-0_2.12.9-3ubuntu2_i386.deb 
dpkg: regarding libgtk2.0-0_2.12.9-3ubuntu2_i386.deb containing libgtk2.0-0:
 libgtk2.0-0 conflicts with metacity (<< 1:2.20.0-1)
  metacity (version 1:2.20.0-0ubuntu3) is present and installed.
dpkg: warning - ignoring conflict, may proceed anyway !
(Reading database ... 98955 files and directories currently installed.)
Preparing to replace libgtk2.0-0 2.12.9-3ubuntu2 (using libgtk2.0-0_2.12.9-3ubuntu2_i386.deb) ...
Unpacking replacement libgtk2.0-0 ...
dpkg: libgtk2.0-0: dependency problems, but configuring anyway as you request:
 libgtk2.0-0 depends on libcairo2 (>= 1.6.0); however:
  Version of libcairo2 on system is 1.4.10-1ubuntu4.4.
 libgtk2.0-0 depends on libcupsys2 (>= 1.3.4); however:
  Version of libcupsys2 on system is 1.3.2-1ubuntu7.1.
 libgtk2.0-0 depends on libglib2.0-0 (>= 2.16.0); however:
  Version of libglib2.0-0 on system is 2.14.1-1ubuntu1.
 libgtk2.0-0 depends on libgnutls13 (>= 2.0.4-0); however:
  Version of libgnutls13 on system is 1.6.3-1build1.
 libgtk2.0-0 depends on libkrb53 (>= 1.6.dfsg.2); however:
  Version of libkrb53 on system is 1.6.dfsg.1-7build1.
 libgtk2.0-0 depends on libpango1.0-0 (>= 1.20.1); however:
  Version of libpango1.0-0 on system is 1.18.3-0ubuntu1.
Setting up libgtk2.0-0 (2.12.9-3ubuntu2) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place

At this point however, we were no longer able to launch Firefox or Terminal on the machine.  It's now being re-imaged and this bug will have to wait until the talos machines get an updated Ubuntu ref platform which will not be in this quarter.
http://mxr.maemo.org/diablo/source/gtk+2.0-2.10.12/debian/control

so chinook/diablo i.e. Nokia n800/n810 are 2.10 critters. afaik Mozilla is still using them for Fennec work.
(In reply to comment #15)
> so chinook/diablo i.e. Nokia n800/n810 are 2.10 critters.

Linux Talos for Firefox is already on 2.12.0.  This is a runtime machine not a build machine.
(In reply to comment #14)
> At this point however, we were no longer able to launch Firefox or Terminal on
> the machine.

What symbols were unresolved?
(firefox-bin:11761): Gtk-WARNING **: cannot open display:
(In reply to comment #18)
> (firefox-bin:11761): Gtk-WARNING **: cannot open display:

Thanks.  This is a message that the system Firefox 2.0.0.6 would produce.
It indicates that Firefox is running, so the necessary symbols seem to be provided by the existing packages (enough to get this far into the start up process, anyway).

The message indicates either that a blank pr whitespace-only string was passed with the --display argument or that the DISPLAY environment variable is set to a blank or whitespace string or that the DISPLAY environment variable is not set.
Assignee: lsblakk → nobody
Component: Release Engineering → Release Engineering: Future
This is pretty much a perma-orange.
jhford, what GTK version is used on the new Fedora talos setup ?
I guess this is being fixed by the upcoming talos recalibration.
http://oduinn.com/2010/01/18/talos-recalibration-status-18jan2010/
Nick, it is 2.18

Full version strings: 2.18.3-19.fc12.x86_64 and 2.18.3-19.fc12.i686
Mass move of bugs from Release Engineering:Future -> Release Engineering. See
http://coop.deadsquid.com/2010/02/kiss-the-future-goodbye/ for more details.
Component: Release Engineering: Future → Release Engineering
Priority: -- → P3
This should probably just be duped or dep'ed on bug 537065, since the new Talos rev3 machines are running Fedora 12, which has a shiny new GTK per comment 23.
Depends on: 537065
No longer depends on: 529930
Yeah, let's do that.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.