• Bug#864597: upgrade-reports: jessie -> stretch: gnome fails to upgrade:

    From Bill Allombert@21:1/5 to Cyril Brulebois on Sun Jun 11 15:40:01 2017
    XPost: linux.debian.bugs.dist

    On Sun, Jun 11, 2017 at 11:13:05AM +0200, Cyril Brulebois wrote:
    Package: upgrade-reports
    Severity: critical
    Justification: makes upgrade from stable abort

    [ X-D-Cc:
    debian-release@lists.debian.org
    pkg-java-maintainers@lists.alioth.debian.org
    pkg-gnome-maintainers@lists.alioth.debian.org ]

    Hi,

    Regression spotted by Pere in some debian-edu job, but also seen since
    the 2nd of June in normal gnome chroot installation then upgrade from
    jessie to stretch:
    https://jenkins.debian.net/view/edu_devel/job/chroot-installation_jessie_install_education-desktop-gnome_upgrade_to_stretch/
    https://jenkins.debian.net/job/chroot-installation_jessie_install_gnome_upgrade_to_stretch/

    I've managed to reproduce it locally with basically a debootstrap of
    jessie, installation of gnome, then switch sources.list from jessie to stretch, then update & upgrade & dist-upgrade.

    I've bisected the archive using snapshot.debian.org and found out:
    - 20170601T212625Z = last timestamp found to be OK;
    - 20170602T033358Z = first timestamp to be KO.

    For what it is worth, according to <http://debian.semistable.com/unstable_diffs.txt>
    a circular dependency between ca-certificates-java and
    openjdk-8-jre-headless has been added on Thu Jun 1 01:02:00 CEST 2017

    Cheers,
    --
    Bill. <ballombe@debian.org>

    Imagine a large red swirl here.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Beckmann@21:1/5 to Cyril Brulebois on Thu Jun 15 18:20:02 2017
    XPost: linux.debian.bugs.dist, linux.debian.devel.release

    On 2017-06-15 15:16, Cyril Brulebois wrote:
    Julien Cristau <jcristau@debian.org> (2017-06-15):
    It sounds like openjdk-8 added two Breaks recently, one or both of
    which are causing trouble, and none of which fix anything as bad as
    this. So I think we should remove the Breaks on tzdata-java from
    openjdk-8-jdk-headless, and remove the Breaks on ca-certificates-java
    from openjdk-8-jre-headless. Would that fix the current issue?

    What I had tested was reverting the recent ca-certificates-java change,
    i.e. switching the dependency on
    openjdk-8-jre-headless | java7-runtime-headless
    back to
    openjdk-7-jre-headless | java7-runtime-headless
    (or similar)
    That change was made later than the one in openjdk-8 and it proved to be sufficient in my piuparts test to fix^Wnot activate that trigger cycle.


    Andreas

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Beckmann@21:1/5 to Michael Biebl on Thu Jun 15 18:30:02 2017
    XPost: linux.debian.bugs.dist, linux.debian.devel.release

    On 2017-06-15 10:02, Michael Biebl wrote:
    Am 12.06.2017 um 20:33 schrieb Andreas Beckmann:
    Switching desktop-file-utils or/and shared-mime-info to -noawait
    triggers does not solve the problem.

    So afaics there is nothing that can be done from the Debian GNOME team
    side, right?

    You could add a Breaks: tzdata-java to some library deep in the gnome
    stack (so that it gets a high score from apt) ... that could serve as a workaround as well.


    Andreas

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Cyril Brulebois@21:1/5 to All on Fri Jun 16 03:10:02 2017
    XPost: linux.debian.bugs.dist, linux.debian.devel.release

    Emmanuel Bourg <ebourg@apache.org> (2017-06-15):
    If you upload a NMU could you please push the changes to the Git
    repository?

    I'll look into this when I've slept a bit. Reminders/prods welcome.


    KiBi.

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1

    iQIcBAEBCAAGBQJZQx7jAAoJEP+RSvDCs1Ugx7oQALg4lNRYm4N4NreWWMDBemhX smHIebwOabGt5j0fQ4vx5HzpcXpCS2Mdw0eLfQQUml7xA8nCU1VIYESo8VQUW2cN ti+h1ZVo3qluGEx/1knATXjJHbk0WikqEhnETWr7s6qBKrt8DAb3nwQ2dlwOEzZU lgO6d8WsKbHlUQ0iHfYTr4VF0w/PEIZgI2UeE17WA9IUdtdhf2Zo2zdbfxmuoy0A g6jfdwHP1k+8nS1ERJOZTZ3ymKxXiTxSsmliAKEhGHQeONV305WyZPo4j91GBAjU QwiX0zz8m5MXeMK1bF7EITa5wHZ7+N2Bs4wAQTYMXmniMvaO+Eq31kQmsIZpKuZg LNOPCqV/84Sv5sqsL+i27kTi0XE6mEYKNvVjBHStArDQ+euWdAfAfuGesLa06bLB QECiU/qS3Ldz97WCIR+VeosQU9coUp4Y+HGnxH0gCGwbjEuEu0eNi/uePDmGPzSh /LCuUrLNuj2XWzuHUeLQaxWetns256/iZygnC+XSC9ALbCB81ecP8knSXcSV/RMZ C0Jnup56hxra8GkcslJiSIigj0JvlpWuUf/gR7YvRYg5woRGAbFTMyNu67634Au/ cmtL+/bvWCCBnpdSQzk2E1tJ0eksHRXJloZGoOe26KGED+18dDdp1mOjtq8Qwkv7 4kSaNwhMskJnU3mkizID
    =2dju
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From gregor herrmann@21:1/5 to Niels Thykier on Fri Jun 16 01:40:01 2017
    XPost: linux.debian.bugs.dist

    On Thu, 15 Jun 2017 20:31:00 +0000, Niels Thykier wrote:

    Basically, jessie's verison of desktop-file-utils and shared-mime-info
    have "-await" triggers (implicit) which will push other packages into a "TRIGGER_PENDING" state.
    Once they are in that state, the "damage" is done and those other
    packages will no longer satisfy dependencies until the trigger has been processed. Notably, dpkg is unable to /undo/ this state even if the
    trigger changes from -await to -noawait during the upgrade.

    * If this holds, then changing the desktop-file-utils and
    shared-mime-info triggers *in stable* to -noawait should make the
    problem go away.

    * I realise it is unfeasible to implement in Debian by Saturday, but
    it would help us understand the root cause of the problem.
    - Tests to confirm/disprove this would be very welcome.

    I think I can't confirm this theory. What I did:

    A) Round 1: reproduce the problem:

    1) enter a jessie cowbuilder chroot
    2) rm /etc/apt/apt.conf.d/15pbuilder # which turns off installing recommends
    3) apt-get install task-gnome-desktop
    4) sed -i -e 's/jessie/stretch/g' /etc/apt/sources.list
    5) apt-get update
    6) apt-get upgrade
    7) apt-get dist-upgrade

    Result:

    (Reading database ... 132342 files and directories currently installed.) Removing openjdk-7-jre:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing openjdk-7-jre-headless:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing tzdata-java (2017b-0+deb8u1) ...
    Processing triggers for hicolor-icon-theme (0.15-1) ...
    dpkg: cycle found while processing triggers:
    chain of packages whose triggers are or may be responsible:
    gnome-menus -> desktop-file-utils
    packages' pending triggers which are or may be unresolvable:
    gnome-menus: /usr/share/applications
    shared-mime-info: /usr/share/mime/packages
    desktop-file-utils: /usr/share/applications
    mime-support: /usr/share/applications
    dpkg: error processing package gnome-menus (--remove):
    triggers looping, abandoned
    Processing triggers for desktop-file-utils (0.23-1) ...
    Processing triggers for mime-support (3.60) ...
    Errors were encountered while processing:
    gnome-menus
    E: Sub-process /usr/bin/dpkg returned an error code (1)


    B) Round 2: play with triggers:

    Same as above, except that after 3) I did

    3a) sed -i -e 's/interest /interest-noawait /' /var/lib/dpkg/info/{desktop-file-utils,shared-mime-info}.triggers

    and after 6) I again ran

    6a) sed -i -e 's/interest /interest-noawait /' /var/lib/dpkg/info/{desktop-file-utils,shared-mime-info}.triggers


    Result:

    (Reading database ... 132342 files and directories currently installed.) Removing openjdk-7-jre:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing openjdk-7-jre-headless:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing tzdata-java (2017b-0+deb8u1) ...
    Processing triggers for hicolor-icon-theme (0.15-1) ...
    dpkg: cycle found while processing triggers:
    chain of packages whose triggers are or may be responsible:
    gnome-menus -> desktop-file-utils
    packages' pending triggers which are or may be unresolvable:
    gnome-menus: /usr/share/applications
    shared-mime-info: /usr/share/mime/packages
    desktop-file-utils: /usr/share/applications
    mime-support: /usr/share/applications
    dpkg: error processing package gnome-menus (--remove):
    triggers looping, abandoned
    Processing triggers for desktop-file-utils (0.23-1) ...
    Processing triggers for mime-support (3.60) ...
    Errors were encountered while processing:
    gnome-menus
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    # for p in desktop-file-utils shared-mime-info gnome-menus mime-support ; do echo $p:; cat /var/lib/dpkg/info/$p.triggers; done
    desktop-file-utils:
    interest-noawait /usr/share/applications
    shared-mime-info:
    interest-noawait /usr/share/mime/packages
    gnome-menus:
    interest-noawait /usr/share/applications
    interest-noawait gmenucache
    mime-support:
    interest-noawait /usr/lib/mime/packages
    interest-noawait /usr/share/applications


    Cheers,
    gregor

    --
    .''`. https://info.comodo.priv.at/ - Debian Developer https://www.debian.org
    : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D 85FA BB3A 6801 8649 AA06
    `. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
    `- NP: Donovan: Ballad of a crystal man

    -----BEGIN PGP SIGNATURE-----

    iQKTBAEBCgB9FiEE0eExbpOnYKgQTYX6uzpoAYZJqgYFAllDDClfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEQx RTEzMTZFOTNBNzYwQTgxMDREODVGQUJCM0E2ODAxODY0OUFBMDYACgkQuzpoAYZJ qgY3MQ/+KJhlto2ukNPvJku9YMoI15cKwLNqzxbDUndVig4VbITKLbDfk+LbTYsB RKhFZNY8sSxtfu10ANW+waH+xux9w0q3tJIr/RFZWezP9VB/aEe3tXlpdVHc8N6s BnDAYIs3U8sslnP0E6kfgpS6tuywPMqaYrgAgq5r7x0EQoRnkLvkdXwT9fdpr1eA fKt8oE8G47WpwZKDnpzouAUA9KAKkVNs5LNdnjHzrANb54i6J6wmYGwTK5xaAKhe iJhVaa1Pd9gFIjx+V7iRjMhQyiDg+tguxvpXJw0yEWrj+GOxrTsQyVMi3DfP1cPa JHNOvDxKG1P16ZHdcSEGnkr1rvipeme/Sd6SIrwlEe9qh8ylBAMyG67cC/OTEiOT YzegdMLDlQxPWYYcd8ZWP+k0i4oZX9llI1xedCpW2D8733aVNt/Dj+7TeVdd6r2S igtmueKv8hGbbhLBg/tScbzIrJ/8zER47TPvie9eRPuLK7jQgbI4uvFK15RZ9ZP+ 9XJ+qcxfTH77sNhQ40nVHzZg5Xc9T5lSgNhmpHFJIvYyBW2kmpl4qGs5Y11RS8jH srHKmao3/T32fpuD5a+JbMGDd16I+ePAxJNCR2aMWJ+QXFcktnvt1oa9qG5tLlFw LL/6Ll/V42HbdApdXDrVjBPuSSeRGGsjHIlUso1iVtNerE4FBtg=
    =RhnA
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Beckmann@21:1/5 to gregor herrmann on Fri Jun 16 05:40:01 2017
    XPost: linux.debian.bugs.dist

    On 2017-06-16 03:34, gregor herrmann wrote:
    (Reading database ... 132342 files and directories currently installed.) Removing openjdk-7-jre:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing openjdk-7-jre-headless:amd64 (7u111-2.6.7-1~deb8u1) ...
    Removing tzdata-java (2017b-0+deb8u1) ...
    Processing triggers for hicolor-icon-theme (0.15-1) ...
    dpkg: cycle found while processing triggers:
    chain of packages whose triggers are or may be responsible:
    gnome-menus -> desktop-file-utils
    packages' pending triggers which are or may be unresolvable:
    gnome-menus: /usr/share/applications
    shared-mime-info: /usr/share/mime/packages
    desktop-file-utils: /usr/share/applications
    mime-support: /usr/share/applications
    dpkg: error processing package gnome-menus (--remove):
    triggers looping, abandoned
    Processing triggers for desktop-file-utils (0.23-1) ...
    Processing triggers for mime-support (3.60) ...
    Errors were encountered while processing:
    gnome-menus
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    It might well be that I again did something wrong. OTOH, this seems to
    match what anbe wrote of his similar tests some minutes ago.

    It was easier than I thought to do this with piuparts, and I can confirm gregors test result with "real packages".
    Full log, including dpkg trigger debug info: https://people.debian.org/~anbe/864597/tgd.101-dfu89-smi89.log

    it used for jessie:
    desktop-file-utils_0.22-1+deb8noawait_amd64.deb
    shared-mime-info_1.3-1+deb8noawait_amd64.deb
    and for stretch:
    desktop-file-utils_0.23-1+test_amd64.deb
    shared-mime-info_1.8-1+test_amd64.deb
    (all with s/interest/interest-noawait/ in debian/triggers)

    Andreas

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Cyril Brulebois@21:1/5 to All on Fri Jun 16 16:10:02 2017
    XPost: linux.debian.bugs.dist

    Guillem Jover <guillem@debian.org> (2017-06-16):
    So, I didn't try to reproduce the error first, and went directly for
    a hunch. I followed your recipe, but in steps 3* and 6* I also amended hicolor-icon-theme. And that seemed to fix the upgrade. Take into
    account I've not had the time to analyze the dependency chain, nor if
    my initial setup (not using cowbuilder, etc) matches, so maybe this is
    an error in procedure. If someone else can reproduce, that'd be helpful, otherwise I might retry tomorrow.

    If this does fix it, it might be helpful also to try just amending the triggers in the stretch "mock", instead of in the jessie one, to see if
    such a fixed package would be enough.

    I guess it would make sense to try and find out various sets of packages
    to install in jessie that make one run into the triggers loop while
    upgrading, then make sure that updating the 3 packages in jessie+stretch
    (with the interest→interest-noawait update) indeed resolve all loops.

    If we have some confirmation on this side, we might then proceed to
    updating them through oldstable-p-u and stable-p-u?


    Independently, I think we really need to have something in the release
    notes; not about openjdk-7 at all, but about what to do to fix or work
    around such a triggers loop when one runs into it. Triggering one with a
    basic gnome dist-upgrade was probably some kind of luck, but I suspect
    there are some/many other ways to run into similar issues…


    KiBi.

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1

    iQIcBAEBCAAGBQJZQ9a9AAoJEP+RSvDCs1Ug2LgQAKETBkwO8a+gfAGxyFDwXiIt 2MjH2ko9T9mBXrgdPVAFYs/SxI5bq7ZGxXEDOththfBoQZiBJyIVKL7boOztHh1U Cw1LYc/Ab0n0DTfwW2ND8UlJ7EhHJdgC/rH5cvFHSblLzjlVKX+bHMb+AhDIMMPm +bzSyk+KZ/N2nMjIR4EoWhzN/Q5TaSzD/LegX03QwMVpFNHH0YfwIVE0Cbdi+fMR Rq/LZv8V4HKRgTsPaTWJ7mpFRGdbOGbf6D9VnHMbT2jA1wFSjypw12bsj49C6/bA HQSVuQVsaG6RIGC/mYCL7sXitwC9r5J3ZCdhhB5yMLn8Q6LONelxgn5VwlQFZ85G RIupaMSgn12Yl5tmXAog9TUaAacIkgrhAatSiC0/NdNQXVrjvBTY4bGwZLD1mNG1 l7d9Xyu1OS4zpIFkGaRBlXlcwK2rU9coxNMu5peq1hWc0KdJQ6OLtWlEC7t1sPsq PjGgpyYQQbYUdj/+9+RSJJ6LG77x4hRnGWqbOnhtQ0c6HEUjvDIB0svGBBLxW6Ps LAntaCdWFIMFXcz0wJBgBqp0uJTBxJ5m5HZ4qFtRLklBgid8zBy7xhppteYxUVhY U9GNyJbcJ6xX03FJw5QdOl3cgFAISxH93LRLFONO/iJgho733/c1mOjWdNiIkCgn byiZPF+fcryrKaaxt+05
    =6hTd
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andreas Beckmann@21:1/5 to gregor herrmann on Sat Jun 17 00:50:01 2017
    XPost: linux.debian.bugs.dist

    On 2017-06-16 18:34, gregor herrmann wrote:
    On Fri, 16 Jun 2017 06:18:18 +0200, Guillem Jover wrote:
    So, I didn't try to reproduce the error first, and went directly for
    a hunch. I followed your recipe, but in steps 3* and 6* I also amended
    hicolor-icon-theme. And that seemed to fix the upgrade. Take into

    If this does fix it, it might be helpful also to try just amending the
    triggers in the stretch "mock", instead of in the jessie one, to see if
    such a fixed package would be enough.

    Ok, so let's do this again, this time with a local repo added which
    contains ca-certificates-java 20170531+nmu2 (just 20170531 but with a
    higher version). (Side note: ca-certificates-java gets already
    updated in 6, i.e. in "upgrade", before the "dist-upgrade".)

    Option 1, with 3a/b: The dist-upgrade fails with the well-known
    error:

    I could confirm this with piuparts, i.e. making hicolor-icon-theme
    noawait (in stretch or stretch+jessie) as well does not change the game.
    Full logs with dpkg trigger debug output available, if someone is
    interested.

    Another observation I made is that dpkg was already upgraded during the 'apt-get upgrade' phase, so the dpkg reporting the trigger cycle is the
    one from stretch. Improving debug output there or making trigger related
    fixed should be possible.


    Andreas

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Niels Thykier@21:1/5 to All on Fri Jun 16 09:50:01 2017
    XPost: linux.debian.bugs.dist, linux.debian.devel.release

    Cyril Brulebois:
    Niels Thykier <niels@thykier.net> (2017-06-15):
    Guillem and I have been talking about this over IRC and have a theory.

    Basically, jessie's verison of desktop-file-utils and shared-mime-info
    have "-await" triggers (implicit) which will push other packages into a
    "TRIGGER_PENDING" state.
    Once they are in that state, the "damage" is done and those other
    packages will no longer satisfy dependencies until the trigger has been
    processed. Notably, dpkg is unable to /undo/ this state even if the
    trigger changes from -await to -noawait during the upgrade.

    * If this holds, then changing the desktop-file-utils and
    shared-mime-info triggers *in stable* to -noawait should make the
    problem go away.

    * I realise it is unfeasible to implement in Debian by Saturday, but
    it would help us understand the root cause of the problem.
    - Tests to confirm/disprove this would be very welcome.

    I can run tests but how is this going to help with a release on saturday?


    Hi,

    @KiBi: Thanks for correcting me below. :)
    @All: For testing the theory.

    Re the question above: It would not help on Saturday, but we are doomed
    to repeat this problem again if we do not find and fix it at its root.

    [....]
    The user would explicitly have to install Java 8 and then uninstall the
    now unsupported Java 7 - that seems very unhelpful to me.

    Nope. From the gnome upgrade log with ca-certificates-java “fixed”:
    | Removing openjdk-7-jre:amd64 (7u111-2.6.7-1~deb8u1) ...
    | …
    | Removing openjdk-7-jre-headless:amd64 (7u111-2.6.7-1~deb8u1) ...
    | …
    | Setting up openjdk-8-jre-headless:amd64 (8u131-b11-2) ...
    | …
    | Setting up default-jre-headless (2:1.8-58) ...
    | …
    | Setting up openjdk-8-jre:amd64 (8u131-b11-2) ...
    | …
    | Setting up default-jre (2:1.8-58) ...

    While I can't say for sure my ca-certificates-java upload will fix all upgrade paths, I'm quite confident the current upgrade paths is utterly broken, and is very much less so afterwards, with no known downsides.

    [...]


    KiBi.


    Given it does upgrade openjdk-8, then it does seem like a viable work
    around for stretch. Ideally, we would also have this work if people
    does not have default-jre, but I agree that we can do r0 without it.

    * I will unblock and urgent ca-certificates-java/20170531+nmu1 now
    - If you do further testing, please remember to "undo" this change
    or your test case may magically be "fixed" for the wrong reason :)

    * I will write a note in the release notes for the people who have
    openjdk-7 without default-jre tonight.
    - Feel free to beat me to it.

    * For buster, I will do an archive-wide sweep for getting rid of
    interest triggers. It won't help with "stretch -> buster", so
    we need to discuss how to fix that (but that can happen after
    r0).

    Thanks,
    ~Niels

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)