gtk 3.22.24 breaks software-properties tests (Gdk-Message: setup.py: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.)

Bug #1721828 reported by Iain Lane
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
GTK+
Unknown
Medium
gtk+3.0 (Ubuntu)
Invalid
High
Iain Lane
Artful
Invalid
High
Iain Lane
software-properties (Ubuntu)
Fix Released
High
Iain Lane
Artful
Fix Released
High
Iain Lane

Bug Description

https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-artful/artful/amd64/s/software-properties/20171005_224025_dcec3@/log.gz

I think this is real, although maybe there's a chance it's a bug in software-properties.

test_add_remove_source_by_line (tests.test_dbus.TestDBus) ... Gdk-Message: setup.py: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.

xauth/Xrdb output:
Gdk-Message: setup.py: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.

autopkgtest [22:38:16]: test run-tests: -----------------------]
autopkgtest [22:38:17]: test run-tests: - - - - - - - - - - results - - - - - - - - - -
run-tests FAIL non-zero exit status 1

Iain Lane (laney)
Changed in gtk+3.0 (Ubuntu Artful):
assignee: nobody → Iain Lane (laney)
status: New → Triaged
importance: Undecided → High
Changed in gtk:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
Iain Lane (laney) wrote :

I think it was the software-properties testsuite initialising Gtk, forking and then calling Gtk from both the parent and child. I rewrote the testsuite slightly to avoid that.

Changed in gtk+3.0 (Ubuntu Artful):
status: Triaged → Invalid
Changed in software-properties (Ubuntu Artful):
status: New → Triaged
importance: Undecided → High
assignee: nobody → Iain Lane (laney)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package software-properties - 0.96.24.17

---------------
software-properties (0.96.24.17) artful; urgency=medium

  * tests/test_dbus.py: Don't call GTK from multiple processes. We started
    seeing software-properties tests failing with fatal X errors after GTK
    3.22.24 was uploaded. I think what happened was:
      - the testsuite imports GTK (via GI)
      - this import itself initialises GTK, retrieving the value of a load of
        X atoms
      - it forks to start software-properties-dbus in a separate process
      - this process then accesses another X atom after we ask it to do stuff
      - X doesn't like that and kills us
    The testsuite is now rewritten to not fork. We start a separate *thread*
    to run the D-Bus service in. A benefit of this is that we're more
    asynchronous than we were before, so some of the tests are slightly
    refactored to not run their own main loop but instead check that the
    signal emission they're interested in has happened. (LP: #1721828)

 -- Iain Lane <email address hidden> Tue, 17 Oct 2017 14:05:25 +0100

Changed in software-properties (Ubuntu Artful):
status: Triaged → Fix Released
Changed in gtk:
status: Confirmed → Unknown
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.