<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">Le 20/05/2024 à 10:11, Sebastian
      Andrzej Siewior a écrit :<br>
    </div>
    <blockquote type="cite"
      cite="mid:20240520081126.YN1gfRpW@breakpoint.cc"><span
      style="white-space: pre-wrap">
</span>
      <pre class="moz-quote-pre" wrap="">Okay. This was old testing -> new testing or Bookworm -> testing? Was
this "apt upgrade && apt dist-upgrade" or just "apt dist-upgrade" ?</pre>
    </blockquote>
    <br>
    This was old testing -> new testing.<br>
    This was just "apt full-upgrade".<br>
    <br>
    <span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
      cite="mid:20240520081126.YN1gfRpW@breakpoint.cc">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">By looking in the full log for instances of other libraries that had both
:amd64 and :i386 versions, and that were going to be removed in spite of
apparent "dependency problems", I noticed that the installation of the
replacement t64:amd64 version sometimes happened much later than the
removal.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Now that I think about it, you need both PostgreSQL version since you
need to perform an update of the databse (to get it from 15 to 16).
</pre>
    </blockquote>
    postgresql-16 was already present, and was supposed to get upgraded
    from 16.2-1 to 16.3-1. <br>
    Which apparently, according to the error messages quoted above,
    included running a pre-removal script, of which old and new versions
    both failed.<br>
    <br>
    <span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
      cite="mid:20240520081126.YN1gfRpW@breakpoint.cc">
      <pre class="moz-quote-pre" wrap="">Let me try to do this later and see what happens. But you have :i386 and
:amd64 binaries. This shouldn't complicate the sitution much since sudo/
systemd and so on depend on the amd64 library only.
Anyway. I will try to spin a Bookworm VM with psql and then update to
testing and check what happens during the update.

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">So, my understanding is that, unfortunately, the postgresql-16 install
script error interrupted the full-upgrade before libssl3t64:amd64 had been
installed, which left the system without the libcrypto.so.3 needed by both
systemctl and sudo...
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Correct. Usually a transition is something like libfoo1 -> libfoo2 where
the package names changes and the name of .so file changes, too. In this
t64 transition however only the package name changes while the library
file itself remains the same. That means thr new (t64) package conflict with
the older (non-t64) and both can't exists at the same time. dpkg then
needs to break the system a bit where it removes libssl3 and later adds
libssl3t64 to the system.

</pre>
    </blockquote>
    <br>
    It seems to me that having both :i386 and :amd64 libraries increases
    the risk of failure, because of the many "apt" steps that can take
    place between the removal of old :amd64 (that may happen close to
    the treatment of the :i386 version, like here for libssl3) and
    install of t64:amd64. On the contrary, when only :amd64 is present,
    it seems that the replacement install closely follows the removal.<br>
    <br>
    Jean-Guilhem<br>
    <br>
  </body>
</html>