Hi,

Matthias Klose <d...@debian.org> (2023-07-12):
> Version: 20230710
> 
> Fixed now.

Thanks for the bugfix.

This is a serious issue that still affects at least bookworm (I didn't
check bullseye): applying the update published as DSA-5548-1 makes dpkg
error out. Cc-ing the security team accordingly.


On a bookworm system (freshly deployed and without any weird things done
package-wise) that had openjdk-17-jre-headless installed, upgrading it
to the version that's available in bullseye-security triggered the dpkg
trigger loop. Thankfully that's easily recoverable (e.g. by running
`dpkg --configure -a`, even if there might be better ways to do so), but
that's still something I believe shouldn't be happening on stable
systems with just the matching stable-security suite enabled.

This issue is trivially reproducible there by switching back and forth
between bookworm's version and bookworm-security's. Setting some debug
level in dpkg, I'm getting the attached log for one of those runs.

    apt-get install -o dpkg::options::=-D70000 openjdk-17-jre-headless/bookworm
    apt-get install -o dpkg::options::=-D70000 
openjdk-17-jre-headless/bookworm-security

    → ca-certificates-java-full-debug.txt

At the time of writing, that means switching between 17.0.8+7-1~deb12u1
and 17.0.9+9-1~deb12u1.


Checking whether this was possibly a problem with that particular
system, I tried reproducing the issue with openjdk-17-jre-headless in
a bookworm chroot, but I wasn't successful. Installing openjdk-17-jre
makes it possible to reproduce the issue though.

Shell script to reproduce (adjust DST=/tmp/bookworm if needed):

    → repro-1037478.sh

I'm attaching the log for the failed upgrade, again with dpkg debug:

    → repro-1037478.log


I've verified in both cases (real baremetal system and repro chroot)
that installing ca-certificates-java 20230710 beforehand indeed makes
the problem disappear. Since this release is a fixup for the previous
release which was mainly aimed at fixing this particular issue, I
suppose it would make sense to investigate whether something like
20230710~deb12u1 would be appropriate for bookworm-proposed-updates?

(And maybe bullseye-proposed-updates, but again, I didn't check the
bullseye part.)

Thanks for considering.


Cheers,
-- 
Cyril Brulebois -- Debian Consultant @ DEBAMAX -- https://debamax.com/
root@baremetal:~# apt-get install -o dpkg::options::=-D70000 
openjdk-17-jre-headless/bookworm-security
…
Selected version '17.0.9+9-1~deb12u1' for 'openjdk-17-jre-headless'
…
The following packages will be upgraded:
  openjdk-17-jre-headless
1 upgraded, 0 newly installed, 0 to remove and 284 not upgraded.
Need to get 0 B/43.7 MB of archives.
After this operation, 487 kB disk space will be freed.
(Reading database ... 30411 files and directories currently installed.)
Preparing to unpack .../openjdk-17-jre-headless_17.0.9+9-1~deb12u1_amd64.deb ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre-headless:amd64
D020000: post_script_tasks - ensure_diversions
D020000: post_script_tasks - trig_incorporate
Unpacking openjdk-17-jre-headless:amd64 (17.0.9+9-1~deb12u1) over 
(17.0.8+7-1~deb12u1) ...
D020000: post_script_tasks - ensure_diversions
D020000: post_script_tasks - trig_incorporate
D010000: trigproc_run_deferred
Setting up openjdk-17-jre-headless:amd64 (17.0.9+9-1~deb12u1) ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre-headless:amd64
Installing new version of config file 
/etc/java-17-openjdk/security/public_suffix_list.dat ...
D020000: post_postinst_tasks - trig_incorporate
D010000: trigproc_run_deferred
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: check_triggers_cycle pnow=ca-certificates-java:all
D020000: check_triggers_cycle pnow=ca-certificates-java:all first
D010000: trigproc ca-certificates-java:all
D010000: check_triggers_cycle pnow=ca-certificates-java:all
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm haretrig=/usr/lib/jvm
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java 
haretrig=/usr/lib/jvm
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java 
haretrig=update-ca-certificates-java
dpkg: cycle found while processing triggers:
 chain of packages whose triggers are or may be responsible:
  ca-certificates-java -> ca-certificates-java
 packages' pending triggers which are or may be unresolvable:
  ca-certificates-java: /usr/lib/jvm: update-ca-certificates-java
D010000: check_triggers_cycle pnow=ca-certificates-java:all 
giveup=ca-certificates-java:all
dpkg: error processing package ca-certificates-java (--configure):
 triggers looping, abandoned
D010000: trigproc_run_deferred
Errors were encountered while processing:
 ca-certificates-java
E: Sub-process /usr/bin/dpkg returned an error code (1)

Attachment: repro-1037478.sh
Description: Bourne shell script

Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  openjdk-17-jre-headless
Suggested packages:
  libnss-mdns fonts-ipafont-gothic fonts-ipafont-mincho fonts-wqy-microhei
  | fonts-wqy-zenhei fonts-indic
The following packages will be upgraded:
  openjdk-17-jre openjdk-17-jre-headless
2 upgraded, 0 newly installed, 0 to remove and 8 not upgraded.
Need to get 43.9 MB of archives.
After this operation, 487 kB disk space will be freed.
Get:1 http://deb.debian.org/debian-security bookworm-security/main amd64 
openjdk-17-jre amd64 17.0.9+9-1~deb12u1 [184 kB]
Get:2 http://deb.debian.org/debian-security bookworm-security/main amd64 
openjdk-17-jre-headless amd64 17.0.9+9-1~deb12u1 [43.7 MB]
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = "",
        LC_ALL = (unset),
        LANG = "en_GB.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Fetched 43.9 MB in 1s (34.0 MB/s)
E: Can not write log (Is /dev/pts mounted?) - posix_openpt (19: No such device)
(Reading database ... 18700 files and directories currently installed.)
Preparing to unpack .../openjdk-17-jre_17.0.9+9-1~deb12u1_amd64.deb ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre:amd64
D020000: post_script_tasks - ensure_diversions
D020000: post_script_tasks - trig_incorporate
Unpacking openjdk-17-jre:amd64 (17.0.9+9-1~deb12u1) over (17.0.8+7-1~deb12u1) 
...
Preparing to unpack .../openjdk-17-jre-headless_17.0.9+9-1~deb12u1_amd64.deb ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre-headless:amd64
D020000: post_script_tasks - ensure_diversions
D020000: post_script_tasks - trig_incorporate
Unpacking openjdk-17-jre-headless:amd64 (17.0.9+9-1~deb12u1) over 
(17.0.8+7-1~deb12u1) ...
D020000: post_script_tasks - ensure_diversions
D020000: post_script_tasks - trig_incorporate
D010000: trigproc_run_deferred
D010000: trigproc hicolor-icon-theme:all
Setting up openjdk-17-jre-headless:amd64 (17.0.9+9-1~deb12u1) ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre-headless:amd64
Installing new version of config file 
/etc/java-17-openjdk/security/public_suffix_list.dat ...
D020000: post_postinst_tasks - trig_incorporate
D010000: trigproc_enqueue_deferred pend=ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc hicolor-icon-theme:all
D010000: check_triggers_cycle pnow=hicolor-icon-theme:all
D020000: check_triggers_cycle pnow=hicolor-icon-theme:all first
Processing triggers for hicolor-icon-theme (0.17-2) ...
D020000: post_postinst_tasks - trig_incorporate
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: trigproc ca-certificates-java:all
D010000: check_triggers_cycle pnow=ca-certificates-java:all
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java 
haretrig=update-ca-certificates-java
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm 
haretrig=update-ca-certificates-java
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm haretrig=/usr/lib/jvm
D020000: tortoise_in_hare pnow=ca-certificates-java tortoise=hicolor-icon-theme
D020000: tortoise_in_hare pnow=ca-certificates-java tortoise=hicolor-icon-theme 
tortoisetrig=/usr/share/icons/hicolor
D020000: tortoise_in_hare pnow=ca-certificates-java tortoise=hicolor-icon-theme 
OK
D010000: trigproc ca-certificates-java:all
D010000: check_triggers_cycle pnow=ca-certificates-java:all
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=update-ca-certificates-java 
haretrig=update-ca-certificates-java
D020000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm 
haretrig=update-ca-certificates-java
D040000: tortoise_in_hare pnow=ca-certificates-java 
tortoise=ca-certificates-java tortoisetrig=/usr/lib/jvm haretrig=/usr/lib/jvm
dpkg: cycle found while processing triggers:
 chain of packages whose triggers are or may be responsible:
  ca-certificates-java -> ca-certificates-java
 packages' pending triggers which are or may be unresolvable:
  ca-certificates-java: update-ca-certificates-java: /usr/lib/jvm
D010000: check_triggers_cycle pnow=ca-certificates-java:all 
giveup=ca-certificates-java:all
dpkg: error processing package ca-certificates-java (--configure):
 triggers looping, abandoned
Setting up openjdk-17-jre:amd64 (17.0.9+9-1~deb12u1) ...
D020000: trigproc_activate_packageprocessing pkg=openjdk-17-jre:amd64
D020000: post_postinst_tasks - trig_incorporate
D010000: trigproc_run_deferred
Errors were encountered while processing:
 ca-certificates-java
E: Sub-process /usr/bin/dpkg returned an error code (1)

Attachment: signature.asc
Description: PGP signature

__
This is the maintainer address of Debian's Java team
<https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-java-maintainers>.
 Please use
debian-j...@lists.debian.org for discussions and questions.

Reply via email to