Verified 1.10ubuntu5.1 on Disco. Discos' 1.10ubuntu5 already had the fix to not fall back to mark all upgradable packages, it just received follow-up commits to all kinds of dependencies and skip held packages earlier.
root@dd-lp-1824804:~# dpkg -l unattended-upgrades | cat Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-===================-=============-============-=========================================== ii unattended-upgrades 1.10ubuntu5.1 all automatic installation of security upgrades root@dd-lp-1824804:~# apt-mark showhold systemd root@dd-lp-1824804:~# unattended-upgrade --verbose --debug Running on the development release Initial blacklist : Initial whitelist: Starting unattended upgrades script Allowed origins are: o=Ubuntu,a=disco, o=Ubuntu,a=disco-security, o=UbuntuESM,a=disco ... Checking: console-setup ([<Origin component:'main' archive:'disco-updates' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) adjusting candidate version: console-setup=1.178ubuntu12 Checking: console-setup-linux ([<Origin component:'main' archive:'disco-updates' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) adjusting candidate version: console-setup-linux=1.178ubuntu12 Checking: keyboard-configuration ([<Origin component:'main' archive:'disco-updates' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) adjusting candidate version: keyboard-configuration=1.178ubuntu12 Checking: libnss-systemd ([<Origin component:'main' archive:'disco' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) package libnss-systemd upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) falling back to adjusting libnss-systemd's dependencies recursively package libnss-systemd upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) sanity check failed for: set() Checking: libpam-systemd ([<Origin component:'main' archive:'disco' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) package libpam-systemd upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) falling back to adjusting libpam-systemd's dependencies recursively package libpam-systemd upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) sanity check failed for: set() Checking: libsystemd0 ([<Origin component:'main' archive:'disco' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) package libsystemd0 upgradable but fails to be marked for upgrade (E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.) falling back to adjusting libsystemd0's dependencies recursively package libsystemd0 upgradable but fails to be marked for upgrade (E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.) sanity check failed for: set() Checking: python3-distupgrade ([<Origin component:'main' archive:'disco-updates' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) adjusting candidate version: python3-distupgrade=1:19.04.16 Checking: systemd ([<Origin component:'main' archive:'disco' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) pkg systemd is on hold sanity check failed for: set() Checking: systemd-sysv ([<Origin component:'main' archive:'disco' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) package systemd-sysv upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) falling back to adjusting systemd-sysv's dependencies recursively package systemd-sysv upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) sanity check failed for: set() Checking: ubuntu-release-upgrader-core ([<Origin component:'main' archive:'disco-updates' origin:'Ubuntu' label:'Ubuntu' site:'archive.ubuntu.com' isTrusted:True>]) adjusting candidate version: ubuntu-release-upgrader-core=1:19.04.16 pkgs that look like they should be upgraded: Fetched 0 B in 0s (0 B/s) fetch.run() result: 0 blacklist: [] whitelist: [] Packages that will be upgraded: InstCount=0 DelCount=0 BrokenCount=0 Extracting content from /var/log/unattended-upgrades/unattended-upgrades-dpkg.log since 2019-05-03 17:28:55 root@dd-lp-1824804:~# ** Tags removed: verification-needed-disco ** Tags added: verification-done-disco -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to unattended-upgrades in Ubuntu. https://bugs.launchpad.net/bugs/1824804 Title: Unattended upgrades falls back to adjust all upgradable packages in attempt to install held packages Status in unattended-upgrades package in Ubuntu: Fix Released Status in unattended-upgrades source package in Xenial: Fix Committed Status in unattended-upgrades source package in Bionic: Fix Committed Status in unattended-upgrades source package in Cosmic: Fix Committed Status in unattended-upgrades source package in Disco: Fix Committed Bug description: [Impact] * The fix for LP: #1821101 allowed installing packages for which APT's resolver could not find solution for without adjusting other packages, but also tries to adjust many packages to install packages which are held back. [Test Case] * Set up a system where systemd (or a package that can't be upgraded without also upgrading other packages) need to be upgraded to the version in -security. * Mark systemd on hold apt-mark hold systemd * Observe u-u falling back to adjusting all upgradable packages in unfixed versions and adjusting only a few in fixed versions: # unattended-upgrade --verbose --debug ... adjusting candidate version: libnss-systemd=237-3ubuntu10.19 falling back to marking libnss-systemd, then adjusting changes package libnss-systemd upgradable but fails to be marked for upgrade (E:Unable to correct problems, you have held broken packages.) falling back to adjusting all packages adjusting candidate version: 2ping=4.1-1 ... Fixed: ... adjusting candidate version: libnss-systemd=237-3ubuntu10.19 falling back to adjusting libnss-systemd's dependencies recursively adjusting candidate version: libnss-systemd=237-3ubuntu10.19 adjusting candidate version: libkmod2=24-1ubuntu3 adjusting candidate version: mount=2.31.1-0.4ubuntu3 adjusting candidate version: libmount1=2.31.1-0.4ubuntu3 ... [Regression Potential] * The less extensive fallback may not find solutions for installing packages with special relationships that the full fallback could have found, but I don't know about such special cases in the archive and the autopkgtest cover a fair set of popular packages. Keeping back those packages seems to be better than spending a lot of CPU time on finding a few solutions - which still was not enough to find _all_ solutions. [Other Info] Originally reported at: https://bugs.launchpad.net/ubuntu/+source /unattended-upgrades/+bug/1396787/comments/21 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/unattended-upgrades/+bug/1824804/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp