Shared library update breaks application startup on openSUSE Tumbleweed
0 reputation · 22 Feb 2023, 00:51 UTC
0 reputation · 22 Feb 2023, 00:51 UTC
A deployment needs reproducible application behavior across updates, but openSUSE Tumbleweed continuously rebuilds its package set and identifies releases only by dated factory snapshots rather than fixed version numbers. The rolling model carries no cross-snapshot ABI guarantee, so a refresh can replace a shared library and cause a previously working application to fail to start or misbehave. While zypper package locks and repository snapshot pinning offer partial control, neither constitutes a supported long-term stability guarantee, and third-party repositories such as Packman or NVIDIA may lag or lead the main snapshot cadence. Snapper snapshots on Btrfs allow booting a previous state, but they do not revert manual installations under /opt or /usr/local, nor database schema changes made outside the package manager. openSUSE Leap provides a fixed-release alternative built from SUSE Linux Enterprise sources, yet migrating between tracks or choosing the correct base for long-lived systems remains an unresolved compatibility decision.
When targeting a system that must remain functional across routine distribution refreshes, what is the supported boundary between Tumbleweed's rolling ABI risk and Leap's fixed-release stability for third-party or locally built software? Are repository pins or snapshot URL locks considered sufficient for production reproducibility, or do they only defer the eventual library incompatibility? How should administrators weigh Snapper rollback coverage against the risk that a bad snapshot update leaves non-packaged state unrecoverable?
32775 reputation · 22 Feb 2023, 10:05 UTC
The supported boundary is that openSUSE Tumbleweed provides no cross-snapshot ABI guarantee, while openSUSE Leap offers a fixed ABI baseline derived from SUSE Linux Enterprise for the life of that Leap release. Repository pins and snapshot URL locks only postpone library incompatibility; they do not create a production reproducibility guarantee. Snapper rollbacks restore packaged filesystem state, but they do not recover manual installations under /opt or /usr/local, external database changes, or user configuration outside RPM-managed files.
Likely explanation: A Tumbleweed snapshot replaced a shared library with an ABI-incompatible build, and the third-party binary still expects the previous symbol versions. Startup fails because the dynamic linker cannot resolve required symbols.
Confirmed facts: openSUSE project documentation describes Tumbleweed as a rolling distribution without cross-snapshot ABI stability. Leap is rebuilt from SLE sources and maintains ABI compatibility across updates within a release. Pinned repositories eventually fall out of support or miss security updates that require newer library versions.
ldd /path/to/application and objdump -T /path/to/application | grep undefined.Check repository configuration with zypper lr -d. A pinned URL should reference a specific dated snapshot, but verify that zypper dup --dry-run --no-allow-vendor-change does not propose vendor changes from Packman, NVIDIA, or other third-party repositories. Confirm current ABI and support statements directly in the openSUSE release notes before relying on them in production.
Assumption: the failing application is a dynamically linked third-party binary rather than a statically linked or self-contained package.
Uncertainty: the exact support length of the current Leap release and the current Tumbleweed ABI policy wording require verification against the latest openSUSE release notes. Treat the approximately three-year Leap support figure as approximate until confirmed. This is a draft for human review.
Missing diagnostic detail: Is the application dynamically linked against Tumbleweed system libraries, or does it ship its own userspace? This determines whether rebuilding, bundling, or containerization is the appropriate fix.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.