|
Bugzilla – Full Text Bug Listing |
| Summary: | zypp patch category selection fails with overlapping patches | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Distribution | Reporter: | Andreas Stieger <Andreas.Stieger> |
| Component: | libzypp | Assignee: | E-mail List <zypp-maintainers> |
| Status: | RESOLVED INVALID | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | ||
| Version: | Leap 15.5 | ||
| Target Milestone: | --- | ||
| Hardware: | x86-64 | ||
| OS: | openSUSE Leap 15.5 | ||
| See Also: | https://bugzilla.opensuse.org/show_bug.cgi?id=1218573 | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
|
Description
Andreas Stieger
2024-01-05 19:46:36 UTC
Well, a "patch" is not some kind of object you install like a package. A patch describes a vulnerability and it's status computed by looking at the set of installed packages.
Downgrading a package may turn an 'applied' patch into a 'needed' one. This is what you did by downgrading to 'procps=3.3.15-150000.7.31.1'. All patches with fixes not included in 3.3.15-150000.7.31.1 will became 'needed' again.
Vice versa updating 'procps' to the latest version will on the fly resolve all these needed patches again because the latest version contains all fixes.
Selecting a patch will trigger the update of an affected package.
But when updating the package, zypper will always aim for the latest version.
The zypper man page tries to explain this:
Package Types
...
patch
A released patch conflicts with the affected/vulnerable versions
of a collection of packages. As long as any of these
affected/vulnerable versions are installed, the conflict triggers
and the patch is classified as needed, or as unwanted if the patch
is locked.
Selecting the patch, the conflict is resolved by updating all
installed and affected/vulnerable packages to a version providing
the fix. When updating the packages zypper always aims for the
latest available version. Resolved patches are classified as
either applied or not needed, depending on whether they refer to
actually installed packages.
So installation, update or removal of packages may change the
classification of patches referring to these packages. Since
libyzpp-17.23.0 the /var/log/zypp/history remembers if a committed
transaction changes a patchs classification. If history data are
available, patch tables show a column telling since when the patch
is in it’s current state.
|