[Bug 2139418] [NEW] apt-get update stalls infinitely if DNS resolution fails
Philipp Hahn
2139418 at bugs.launchpad.net
Fri Jan 30 12:29:35 UTC 2026
Public bug reported:
Landscape-package-reporter resp. `apt.systemd.daily` trigger a `apt-get
update`. As my company uses a VPN and some of my APT sources are hosted
inside the VPN, DNS resolution of those hosts sometimes fail, especially
after suspend-to-disk/ram after which the VPN does no longer work until
I re-login.
If `apt-get update` then runs it looks like the first DNS lookup fails
and APT schedules the repository for retry. After 2 more failures `apt-
transport-http` gives up and stops trying, but `apt-get` (the parent
process) still sees one outstanding request and waits forever.
With 'Debug::pkgAcquire "true"' and 'Debug::phgAcquire::Worker "true"' and a wrapper around '/usr/bin/apt-get' I was finally able to capture a log-output showing the issue:
-> https:600 URI Acquire
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
Filename: /var/lib/apt/lists/partial/packages.XXX.de_XXX-core_ubuntu_dists_noble_InRelease
Target-Type: index
Target-Release: noble
Target-Repo-URI: https://packages.XXX.de/XXX-core/ubuntu/
Target-Base-URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/
Target-Site: https://packages.XXX.de/XXX-core/ubuntu
Index-File: true
Maximum-Size: 10000000
Last-Modified: Tue, 09 Dec 2025 07:41:33 GMT
Fail-Ignore: true
Signed-By: …
<- https:102 Status
Message: Connecting tot packages.XXX.de
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
<- https:400 URI Failure
Transient-Failure: true
FailReason: ResolveFailure
Message: Could not resolve 'packages.XXX.de'
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
Landscape resp. APT then hangs there forever until I do a `sudo pkill apt-get`. No updates – including any security updates – are installed until then.
I have found 2 suspect location in the APT source code:
1. https://salsa.debian.org/apt-team/apt/-/blob/main/apt-pkg/acquire-item.cc?ref_type=heads#L915-921 puts the worker into an idle state to wait for the next retry. Maybe the worker should exit here instead if the last retry failed?
2. https://salsa.debian.org/apt-team/apt/-/blob/main/apt-pkg/acquire-worker.cc?ref_type=heads#L686-765 handles the retries. Is the `Owner->Retries != 0` there wrong or is a fall-through in case of an error missing, when all retries failed?
I have been unable to force this bug by disabling the VPN and running `apt-get update` manually, so one important condition might be missing from my report. Any advise on how to continue debugging here is also appreciated.
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: ubuntu-release-upgrader-core 1:24.04.27
ProcVersionSignature: Ubuntu 6.8.0-90.91-generic 6.8.12
Uname: Linux 6.8.0-90-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
CasperMD5CheckResult: pass
CrashDB: ubuntu
CurrentDesktop: ubuntu:GNOME
Date: Fri Jan 30 13:08:08 2026
InstallationDate: Installed on 2025-01-31 (364 days ago)
InstallationMedia: Ubuntu 22.04.5 LTS "Jammy Jellyfish" - Release amd64 (20240911)
PackageArchitecture: all
SourcePackage: ubuntu-release-upgrader
Symptom: dist-upgrade
UpgradeStatus: No upgrade log present (probably fresh install)
VarLogDistupgradeTermlog:
** Affects: ubuntu-release-upgrader (Ubuntu)
Importance: Undecided
Status: New
** Tags: amd64 apport-bug dist-upgrade noble
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubuntu-release-upgrader in
Ubuntu.
https://bugs.launchpad.net/bugs/2139418
Title:
apt-get update stalls infinitely if DNS resolution fails
Status in ubuntu-release-upgrader package in Ubuntu:
New
Bug description:
Landscape-package-reporter resp. `apt.systemd.daily` trigger a `apt-
get update`. As my company uses a VPN and some of my APT sources are
hosted inside the VPN, DNS resolution of those hosts sometimes fail,
especially after suspend-to-disk/ram after which the VPN does no
longer work until I re-login.
If `apt-get update` then runs it looks like the first DNS lookup fails
and APT schedules the repository for retry. After 2 more failures
`apt-transport-http` gives up and stops trying, but `apt-get` (the
parent process) still sees one outstanding request and waits forever.
With 'Debug::pkgAcquire "true"' and 'Debug::phgAcquire::Worker "true"' and a wrapper around '/usr/bin/apt-get' I was finally able to capture a log-output showing the issue:
-> https:600 URI Acquire
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
Filename: /var/lib/apt/lists/partial/packages.XXX.de_XXX-core_ubuntu_dists_noble_InRelease
Target-Type: index
Target-Release: noble
Target-Repo-URI: https://packages.XXX.de/XXX-core/ubuntu/
Target-Base-URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/
Target-Site: https://packages.XXX.de/XXX-core/ubuntu
Index-File: true
Maximum-Size: 10000000
Last-Modified: Tue, 09 Dec 2025 07:41:33 GMT
Fail-Ignore: true
Signed-By: …
<- https:102 Status
Message: Connecting tot packages.XXX.de
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
<- https:400 URI Failure
Transient-Failure: true
FailReason: ResolveFailure
Message: Could not resolve 'packages.XXX.de'
URI: https://packages.XXX.de/XXX-core/ubuntu/dists/noble/InRelease
Landscape resp. APT then hangs there forever until I do a `sudo pkill apt-get`. No updates – including any security updates – are installed until then.
I have found 2 suspect location in the APT source code:
1. https://salsa.debian.org/apt-team/apt/-/blob/main/apt-pkg/acquire-item.cc?ref_type=heads#L915-921 puts the worker into an idle state to wait for the next retry. Maybe the worker should exit here instead if the last retry failed?
2. https://salsa.debian.org/apt-team/apt/-/blob/main/apt-pkg/acquire-worker.cc?ref_type=heads#L686-765 handles the retries. Is the `Owner->Retries != 0` there wrong or is a fall-through in case of an error missing, when all retries failed?
I have been unable to force this bug by disabling the VPN and running `apt-get update` manually, so one important condition might be missing from my report. Any advise on how to continue debugging here is also appreciated.
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: ubuntu-release-upgrader-core 1:24.04.27
ProcVersionSignature: Ubuntu 6.8.0-90.91-generic 6.8.12
Uname: Linux 6.8.0-90-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
CasperMD5CheckResult: pass
CrashDB: ubuntu
CurrentDesktop: ubuntu:GNOME
Date: Fri Jan 30 13:08:08 2026
InstallationDate: Installed on 2025-01-31 (364 days ago)
InstallationMedia: Ubuntu 22.04.5 LTS "Jammy Jellyfish" - Release amd64 (20240911)
PackageArchitecture: all
SourcePackage: ubuntu-release-upgrader
Symptom: dist-upgrade
UpgradeStatus: No upgrade log present (probably fresh install)
VarLogDistupgradeTermlog:
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/2139418/+subscriptions
More information about the foundations-bugs
mailing list