Bug#864597: upgrade-reports: jessie -> stretch: gnome fails to upgrade: cycle found while processing triggers

Niels Thykier niels at thykier.net
Fri Jun 16 06:38:00 UTC 2017


Cyril Brulebois:
> Niels Thykier <niels at 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





More information about the Pkg-freedesktop-maintainers mailing list