determining which package is 'responsible' for forcing a downgrade ?
snowcrash+smart
schneecrash+smart at gmail.com
Wed Jan 17 13:05:18 PST 2007
> ...this one, even though they have the same version and name.
oh, just great. :-/
> Smart is able to detect package uniqueness with a more insightful
> way than just name/version. If it was precisely the same package,
> it'd be listed with a single entry, and Smart would say so with:
>
> Channels: RPM System; Latest mozilla.org packages @ SuSE
now i understand/know. thanks.
> Something like this might also happen if for some reason the
> metadata in these channels say different things about the same
> package (which would of course mean a different package as far
> as a dependency solver is concerned).
>
> Try the following: run "smart query --show-all" in these packages,
> put data for each package in a separate file, and run diff on them.
> This way you can tell how they're differing.
ok, given two 'identically named' (even though they're differen :-/ ) file,
% smart query --show-summary --show-channels
MozillaThunderbird-1.99.1-44.1 at i586
MozillaThunderbird-1.99.1-44.1 at i586 [suse-mozilla-latest] - The
Stand-Alone Mozilla Mail Component
MozillaThunderbird-1.99.1-44.1 at i586 [myDB] - The Stand-Alone
Mozilla Mail Component
i _can_ get the --show-all output of JUST the installed version in [myDB] with,
% smart query --show-all --installed MozillaThunderbird-1.99.1-44.1 at i586
but how do i get the output for JUST the one in [suse-mozilla-latest]?
for the moment, i did a,
% smart query --show-all MozillaThunderbird-1.99.1-44.1 at i586
and manually split the output into two files,
TBird_in_myDB.txt
TBird_in_suse-mozilla-latest.txt
then,
diff -ur TBird_in_myDB.txt TBird_in_suse-mozilla-latest.txt
--- TBird_in_myDB.txt 2007-01-17 12:47:28.000000000 -0800
+++ TBird_in_suse-mozilla-latest.txt 2007-01-17 12:47:05.000000000 -0800
@@ -1,4 +1,4 @@
-MozillaThunderbird-1.99.1-44.1 at i586 {5} [myDB] - The Stand-Alone
Mozilla Mail Component
+MozillaThunderbird-1.99.1-44.1 at i586 {17} [suse-mozilla-latest] - The
Stand-Alone Mozilla Mail Component
Provides:
MozillaThunderbird = 1.99.1-44.1 at i586
Required By:
i.e., no difference.
???
> It got the same package again. The one from openSUSE 10.2. After
> doing what I suggested above, try disabling the 10.2 channel, and
> running install again.
>
> > error: package MozillaThunderbird-1.99.1-44.1 is already installed
>
> Yep.. bad things happen in these cases.
in spite of the diff==NULL, there apparently *is* a difference,
% smart query MozillaThunderbird-1.99.1-44.1 at i586 --show-channels
MozillaThunderbird-1.99.1-44.1 at i586 [suse-mozilla-latest]
MozillaThunderbird-1.99.1-44.1 at i586 [myDB]
% smart query MozillaThunderbird-1.99.1-44.1 at i586 --installed --show-channels
MozillaThunderbird-1.99.1-44.1 at i586 [myDB]
% smart remove MozillaThunderbird-1.99.1-44.1 at i586
...
Removing packages (1):
MozillaThunderbird-1.99.1-44.1 at i586
...
1:Removing MozillaThunderbird
...
[100%]
% smart query MozillaThunderbird-1.99.1-44.1 at i586 --installed --show-channels
%
% smart install MozillaThunderbird-1.99.1-44.1 at i586
...
Installing packages (1):
MozillaThunderbird-1.99.1-44.1 at i586
...
1:Installing MozillaThunderbird
...
[100%]
% smart query MozillaThunderbird-1.99.1-44.1 at i586 --show-channels
MozillaThunderbird-1.99.1-44.1 at i586 [myDB, suse-mozilla-latest]
ok. *now* it's *really* the 'same'.
checking,
% smart upgrade MozillaThunderbird
No interesting upgrades available.
so, i understand WHAT happened.
questions, still,
WHY? --> iiuc, as you explained ...
WHAT TO DO ABOUT IT?
i'm assuming this will be the same problem with 'all' the other
packages being force-downraded-to-upgrade.
should I,
(a) rebuild the 'master' rpm DB?
(b) delete, then re-create [myDB]?
what's recommended here?
thanks.
More information about the Smart
mailing list