Bug 28731 - after an upgrade mga7 to mga8, 318 orphans, some of them being mga8 pkgs and 255 mga7 pkgs not purged
Summary: after an upgrade mga7 to mga8, 318 orphans, some of them being mga8 pkgs and ...
Status: RESOLVED WONTFIX
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 8
Hardware: x86_64 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Mageia Bug Squad
QA Contact:
URL:
Whiteboard:
Keywords: IN_ERRATA8
Depends on:
Blocks:
 
Reported: 2021-04-05 23:13 CEST by peter lawford
Modified: 2021-05-08 23:41 CEST (History)
4 users (show)

See Also:
Source RPM:
CVE:
Status comment:


Attachments
return of urpme--auto-orphans (12.76 KB, text/plain)
2021-04-05 23:14 CEST, peter lawford
Details
return of rpm -qa |grep mga7 (8.21 KB, text/plain)
2021-04-05 23:15 CEST, peter lawford
Details

Description peter lawford 2021-04-05 23:13:46 CEST
Description of problem:after upgrading a mgeia7 system with mgaapplet method
it stays 318 orphans among them mga8 pkgs which could be surprising and 255 mga7 pkgs are not purged:
see attached files


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
Comment 1 peter lawford 2021-04-05 23:14:48 CEST
Created attachment 12586 [details]
return of urpme--auto-orphans
Comment 2 peter lawford 2021-04-05 23:15:31 CEST
Created attachment 12587 [details]
return of rpm -qa |grep mga7
Comment 3 sturmvogel 2021-04-05 23:54:21 CEST
This seems like a duplicate from Bug 28601 https://bugs.mageia.org/show_bug.cgi?id=28601
Comment 4 peter lawford 2021-04-06 00:03:22 CEST
(In reply to sturmvogel from comment #3)
> This seems like a duplicate from Bug 28601
> https://bugs.mageia.org/show_bug.cgi?id=28601

not entirely, because here is provided the list of orphans unlike bug 28601
Comment 5 Aurelien Oudelet 2021-04-06 06:01:57 CEST
This is duplicate, sorry.
But I will answer.

For mga7 packages:
 See Dave Hodgins answer here: https://bugs.mageia.org/show_bug.cgi?id=28601#c16

Feel free to remove all of them.
= lib name changes and old packages that urpmi leaves because of possibly desired by 3rd party installed softwares.

Same for python2 packages.

In mga8 RPM, lot of under-the-hood packages like wxgtk.
For   lib64gnome-keyring0-3.12.0-12.mga8.x86_64
  lib64gnome2_0-2.32.1-21.mga8.x86_64
  lib64gnomeui2_0-2.24.5-13.mga8.x86_64

What desktop do you use? Plasma?

CC: (none) => ouaurelien

Comment 6 Lewis Smith 2021-04-06 12:17:52 CEST
I think these two bugs are the same; that this should be marked duplicate of the other - despite the extra orphan evidence here; and both be added to the upgrade tracker bug. The other to be assigned to mageiatools.
Await agreement about this before acting!

CC: (none) => lewyssmith

Comment 7 Morgan Leijström 2021-04-06 14:35:26 CEST
Dave's answer in the other bug is very good. I am pondering to add a note like that in Errata.

User may have i.e third party programs that depend on the packages but they are still marked orphans.

Maybe some packaging is less than ideal and can be improved - in that case they should have separate bugs.

So far I believe urpmi does this right.

CC: (none) => fri

Morgan Leijström 2021-04-06 14:35:58 CEST

See Also: (none) => https://bugs.mageia.org/show_bug.cgi?id=28601

Comment 8 Dave Hodgins 2021-04-06 20:12:59 CEST
Also, keep in mind that while the mga7 orphans are kept just in case the user
needs them for things rpm doesn't know about, the corresponding mga8 packages
are installed for those orphans, which is why there are mga8 orphans too.

CC: (none) => davidwhodgins

Comment 9 Lewis Smith 2021-04-06 20:17:48 CEST
While I see the sense of these remarks - indeed, like the idea -, why are we seeing hundreds of these .mga7 & .mga8 things? And not just PL.
Comment 10 Morgan Leijström 2021-04-06 21:09:04 CEST
(In reply to Dave Hodgins from comment #8)
> the corresponding mga8 packages
> are installed for those orphans, which is why there are mga8 orphans too.

Thanks, added that info too to Errata
Morgan Leijström 2021-04-06 21:09:39 CEST

Keywords: (none) => IN_ERRATA8

Comment 11 Dave Hodgins 2021-04-06 22:12:27 CEST
(In reply to Lewis Smith from comment #9)
> While I see the sense of these remarks - indeed, like the idea -, why are we
> seeing hundreds of these .mga7 & .mga8 things? And not just PL.

Not sure what you mean by PL. During the use of mga7, many updates would have
been installed bringing in new lib packages. The old ones are not removed
as they may be needed, becoming orphans. Even on a new install, there will
be multiple versions of some packages installed as being suggested by different
packages. These packages are not required, just suggested or recommended, so
are orphans from the moment they are installed.

During upgrade, all versions of the Mageia 7 packages that don't get deleted
(lib, python, etc) become orphans.

Regards, Dave Hodgins
Comment 12 Dave Hodgins 2021-04-06 22:15:34 CEST
(In reply to Morgan Leijström from comment #10)
> (In reply to Dave Hodgins from comment #8)
> > the corresponding mga8 packages
> > are installed for those orphans, which is why there are mga8 orphans too.
> 
> Thanks, added that info too to Errata

Please also add, that packages that another package suggests or recommends
that get installed too, are not strictly required, so are orphans even though
newly installed.
Comment 13 Morgan Leijström 2021-04-07 15:02:57 CEST
Done

https://wiki.mageia.org/en/Mageia_8_Errata#Unused_packages

I begin to feel the info should get incorporated somewhere in wiki about how urpmi works.  Yes maybe the URPMI page.  But i guess DNF works the same.
Comment 14 Dave Hodgins 2021-04-07 16:10:39 CEST
I'm not an expert in how rpm works. My understanding from observation ...

An orphan is any package that hasn't been explicitly listed in an install
request, or isn't required by a package  that has been explicitly listed in
an install request. 

From "man rpm" ...
       Dependencies:
        [--conflicts] [--enhances] [--obsoletes] [--provides]
        [--recommends] [-R,--requires] [--suggests] [--supplements]

conflicts and obsoletes prevent packages that interfere with each other from
being installed on the same system, including older versions of the same package.

enhances, I've never noticed in use. Not really sure what it is for.

Provides helps find wanted packages by a feature other then it's name. It's
mostly used where more than one package can be used for the same purpose,
and when using urpmi/dnf interactively, is used to create the list where the
user has to select which one they want.

requires lists the packages or features that a package must have present in the
system for it to work. When a package is removed, those other packages become
orphans.

supplements, like enhances, I've never noticed in use.

suggests and recommends (I don't know the difference) will cause additional
packages to be installed. My understanding is they are orphans as soon as
they are installed, since they have not been explicitly selected, or required
by an explicitly requested package. I may be wrong on this part.
Comment 15 Lewis Smith 2021-04-08 21:24:22 CEST
Do we know how many orphans there were in the M7 systems prior to upgrading them? This seems basic information to put into perspective ideas about why there are so many post-upgrade.
Comment 16 Dave Hodgins 2021-04-08 21:42:19 CEST
In my testing, I ensure there are none before I start the upgrade.

I expect them post upgrade, so don't keep track of how many there are after.
Comment 17 Aurelien Oudelet 2021-05-08 14:14:22 CEST
(In reply to Dave Hodgins from comment #8)
> Also, keep in mind that while the mga7 orphans are kept just in case the user
> needs them for things rpm doesn't know about, the corresponding mga8 packages
> are installed for those orphans, which is why there are mga8 orphans too.

orphaned RPM should be removed by hand, not automatically by a script.

For mga8 packages, they should not orphaned as soon as they are installed. But, it is possible that is due to updates already released.

Status: NEW => RESOLVED
Resolution: (none) => WONTFIX

Comment 18 Dave Hodgins 2021-05-08 23:41:14 CEST
(In reply to Aurelien Oudelet from comment #17)
> For mga8 packages, they should not orphaned as soon as they are installed.
> But, it is possible that is due to updates already released.

For mga7 packages with corresponding mga8 packages, the mga8 packages will be
installed.

If the mga7 packages were orphans, the mga8 packages will be orphans too,
immediately upon installation.

Same thing if in mga7 the package was required by some other package, and in
mga8 it is no longer required, for example if a requires in a mga7 package was
removed or changed to a suggests in the mga8 version of the package.

So while it may indicate a problem (check the log for errors), in most cases it
is normal.

Note You need to log in before you can comment on or make changes to this bug.