[Bug 704123] New: When updating packages, same version numbers in different repositories confuse YaST (and zypper?)
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c0 Summary: When updating packages, same version numbers in different repositories confuse YaST (and zypper?) Classification: openSUSE Product: openSUSE 11.4 Version: Final Platform: x86-64 OS/Version: openSUSE 11.4 Status: NEW Severity: Normal Priority: P5 - None Component: YaST2 AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: ulfie_monster@arcor.de QAContact: jsrain@novell.com Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.1.19) Gecko/20110420 SUSE/2.0.14-0.2.1 SeaMonkey/2.0.14 This problem occured several times before, currently it is relevant for package libeigen2-devel which is installed from http://download.opensuse.org/repositories/KDE:/Release:/46/openSUSE_11.4 with version number 2.0.16-16.1-x86_64. Now, an update to version 2.0.16-17.1-x86_64 is available from that same repository, but with that version number the package is also available from http://download.opensuse.org/repositories/Education/openSUSE_11.4/ . YaST seems to be trying to update to that second variant and cannot be forced to choose the correct one without disabling the unwanted repo. Actually, whenever the same version number of packages to be upgraded appears in two repositories, YaST seems to be choosing the wrong one (at least I have never seen it choose the right one in these cases). The same problem may be present in zypper, please instruct me what commands I will have to issue to check this (as I am not a regular zypper user). Reproducible: Always Steps to Reproduce: 1. Start YaST2, make sure the relevant repos are set up (not sure if order in which repos are added and/or repo naming is relevant), then go to software installation module. 2. Either go to package menu and select all packages - update if newer version is available, or search for e.g. libeigen2. Look at Versions tab for libeigen2-devel. 3. According to versions tab, 2.0.16-16.1-x86_64 is installed from obs://build.opensuse.org/KDE, build service KDE4.6 with priority 94 as well as build service Education with priority 100 provides 2.0.16-17.1-x86_64, radio button for Education is checked. 4. Check KDE4.6 button (optionally choose to update package, which you will have done anyway when using the menu method above), leave tab and come back. Actual Results: Education button gets checked again, and probably the package will be upgraded from the wrong repo (never let it go this far when the same problem occured with other packages in the past). Expected Results: There should not be a vendor change unless that has been selected using the radio buttons, and if a certain repo has been selected, the selection should not automagically change to some other repo just because that provides the same version number. To temporarily fix the problem, the unwanted repo can (read: has to) be disabled before trying to upgrade the package. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c zj jia <zjjia@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |zjjia@novell.com AssignedTo|bnc-team-screening@forge.pr |yast2-maintainers@suse.de |ovo.novell.com | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c Steffen Winterfeldt <snwint@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|yast2-maintainers@suse.de |ma@novell.com -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c1 Michael Andres <ma@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO InfoProvider| |tgoettlicher@novell.com --- Comment #1 from Michael Andres <ma@novell.com> 2011-07-07 17:02:11 CEST --- (In reply to comment #0)
2. Either go to package menu and select all packages - update if newer version is available, or search for e.g. libeigen2. Look at Versions tab for libeigen2-devel.
Thomas: How does th UI implement this? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c2 Thomas Göttlicher <tgoettlicher@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW CC| |tgoettlicher@novell.com InfoProvider|tgoettlicher@novell.com | --- Comment #2 from Thomas Göttlicher <tgoettlicher@novell.com> 2011-08-03 14:28:23 UTC --- (In reply to comment #1)
Thomas: How does th UI implement this?
The UI sets the item's status to S_Update if item->candidateIsNewer() && item->status() != S_Protected . See YQPkgObjList::setAllItemStatus( ZyppStatus newStatus, bool force ) in http://svn.opensuse.org/svn/yast/trunk/qt-pkg/src/YQPkgObjList.cc and YQPkgList::globalSetPkgStatus( ZyppStatus newStatus, bool force, bool countOnly ) in http://svn.opensuse.org/svn/yast/trunk/qt-pkg/src/YQPkgList.cc . -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c3 Haro de Grauw <bin@harodegrauw.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bin@harodegrauw.net --- Comment #3 from Haro de Grauw <bin@harodegrauw.net> 2011-09-24 22:39:36 UTC --- Hi, I also noticed the same thing. Example situation today: Currently installed: timidity 2.13.2-266.1-x86_64 vendor openSUSE Available update: timidity 2.13.2-266.1-x64_46 vendor openSUSE-Education Available update: timidity 2.13.2-266.1-x64_46 vendor obs://build........ All repositories at default priority (99). When I click "All packages --> Update if newer version available", the version from BuildService is selected, with vendor change. Option "Allow vendor change" is unchecked in YaST and untouched in zypp.conf. When running "zypper list-updates" the same update is also selected so it appears to be a zypper problem. Other situation: Currently installed: frozen-bubble 2.2.0-11.1-x86_64 vendor openSUSE Available update repo#1 frozen-bubble 2.2.0-26.1-x86_64 vendor obs://build.... Available update repo#2 frozen-bubble 2.2.0-26.1-x86_64 vendor obs://build.... In this case, the same update package (wrong vendor, but twice the SAME vendor) is available from two different repositories. Neither YaST nor zypper propose the update, so the problem seems to arise specifically when an update is available from two distinct (wrong) VENDORS. Hope this helps, greetings to all three. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c4 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO InfoProvider| |bin@harodegrauw.net --- Comment #4 from Michael Andres <ma@suse.com> 2011-09-26 09:56:13 CEST --- @Haro: COuls you please attach a solver testcase (see http://en.opensuse.org/openSUSE:Bugreport_YaST#I_want_to_report_a_bug_relate...) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c5 --- Comment #5 from Michael Andres <ma@suse.com> 2011-09-26 09:57:26 CEST --- s/COuls/Could/ -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c6 Ulrich Fieseler <ulfie_monster@arcor.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW InfoProvider|bin@harodegrauw.net | --- Comment #6 from Ulrich Fieseler <ulfie_monster@arcor.de> 2012-03-15 13:29:16 UTC --- Created an attachment (id=481608) --> (http://bugzilla.novell.com/attachment.cgi?id=481608) Part 1 of Solver testcase from YaST menu Extras/Generate_Dependency_Resolver_Test_Case Now that's a good deal of information you are collecting about my system... Anyway, the bug currently affects libcurl4 (which I would like to have replaced by version 7.23.1-64.1-x86_64 from http://download.opensuse.org/repositories/devel:/libraries:/c_c++/openSUSE_1... with priority 94 rather than http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_... with priority 96, but the radio button changes to the latter on the versions tab when I leave that package and return to it), libproj0 (which will be updated to 4.8.0-19.1-x86_64 from http://download.opensuse.org/repositories/home:/beyerle:/IAC/openSUSE_11.4/ rather than http://download.opensuse.org/repositories/home:/ocefpaf/openSUSE_11.4/ where the current version comes from, both with priority 98), and python-configobj (which will be updated to 4.7.2-24.1-noarch from http://download.opensuse.org/repositories/home:/beyerle:/IAC/openSUSE_11.4/ with priority 98 rather than http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_... with priority 96, again the latter being the source of the currently installed version). Note that the vendor information for the libcurl4 version that always gets automatically selected mentions the obs://... address of the repo actually intended, but that does not match the repo name (unlike the other cases where it matches the repo name)! In addition, I am currently experiencing a strange behaviour regarding package libenca0 which is installed from the base OSS repo with priority 99. YaST keeps trying to replace it with version 1.13-19.1-x86_64 from http://download.opensuse.org/repositories/Education/openSUSE_11.4/ with priority 100, and that same version is also available from http://download.opensuse.org/repositories/multimedia:/libs/openSUSE_11.4/ with priority 96 (for which the vendor name openSUSE-Education is given, again not matching the repo name). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c7 --- Comment #7 from Ulrich Fieseler <ulfie_monster@arcor.de> 2012-03-15 13:31:16 UTC --- Created an attachment (id=481609) --> (http://bugzilla.novell.com/attachment.cgi?id=481609) Part 2 of Solver testcase from YaST menu Extras/Generate_Dependency_Resolver_Test_Case -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c8 --- Comment #8 from Ulrich Fieseler <ulfie_monster@arcor.de> 2012-03-15 13:34:52 UTC --- Created an attachment (id=481610) --> (http://bugzilla.novell.com/attachment.cgi?id=481610) Part 3 of Solver testcase from YaST menu Extras/Generate_Dependency_Resolver_Test_Case Last of the three parts, generated using split -b 10000000 y2logs.tgz y2logs.tgz. because of size limit of bugzilla. Need to be concatenated to be usable for tar. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c9 --- Comment #9 from Michael Andres <ma@suse.com> 2012-03-15 19:07:33 CET ---
Now that's a good deal of information you are collecting about my system...
Looks like facebook. As I posted the link, I had the 'zypper in --debug-solver nopackage' output in mind. That's all I need (but it's included). Did not know that YaSt is that greedy. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c10 --- Comment #10 from Michael Andres <ma@suse.com> 2012-03-15 19:31:15 CET --- (In reply to comment #3)
Currently installed: timidity 2.13.2-266.1-x86_64 vendor openSUSE Available update: timidity 2.13.2-266.1-x64_46 vendor openSUSE-Education Available update: timidity 2.13.2-266.1-x64_46 vendor obs://build........
When I click "All packages --> Update if newer version available", the version from BuildService is selected, with vendor change.
UI chooses wrong. obs:// version would be a vendor change. Note that 'openSUSE-Education' would be fine (that's probably what zypper has chosen). 'openSUSE' and 'openSUSE-Education' are per default treated as being equivalent.
Other situation:
Currently installed: frozen-bubble 2.2.0-11.1-x86_64 vendor openSUSE Available update repo#1 frozen-bubble 2.2.0-26.1-x86_64 vendor obs://build.... Available update repo#2 frozen-bubble 2.2.0-26.1-x86_64 vendor obs://build....
In this case, the same update package (wrong vendor, but twice the SAME vendor) is available from two different repositories. Neither YaST nor zypper propose the update
Which is right. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #481608|0 |1 is obsolete| | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #481609|0 |1 is obsolete| | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #481610|0 |1 is obsolete| | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c11 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gs@suse.com AssignedTo|ma@suse.com |tgoettlicher@suse.com --- Comment #11 from Michael Andres <ma@suse.com> 2012-03-15 19:48:04 CET --- (In reply to comment #6) After checking the testcase and a glimpse into the YUI code Thomas mentioned in comment#2, I'm quite convinced that this is a ui issue, no problem in repos, zypp or solver. (@Thomas: Maybe we can talk about this on Monday.)
In addition, I am currently experiencing a strange behaviour regarding package libenca0 which is installed from the base OSS repo with priority 99. YaST keeps trying to replace it with version 1.13-19.1-x86_64 from http://download.opensuse.org/repositories/Education/openSUSE_11.4/ with priority 100, and that same version is also available from http://download.opensuse.org/repositories/multimedia:/libs/openSUSE_11.4/ with priority 96 (for which the vendor name openSUSE-Education is given, again not matching the repo name).
Something that confused me in the testcase as well, but I checked the repo and it seems to be ok. multimedia:libs actually contains a few packages from Education. Note that this is the reason for checking for a vendor-change and not for a repo-change. The vendor is immutable inside the rpm package header. openSUSE-Education packages may be updated by openSUSE-Education packages, no matter what kind of repository is used to provide them on you system. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c12 --- Comment #12 from Michael Andres <ma@suse.com> 2012-03-22 11:27:07 CET --- @Thomas: I sent some more info per mail. IMO the UI should roughly selecht this way: Selectable sel; ... if ( sel->status()!= S_Protected && sel->updateCandidateObj()) { if ( ! sel->setOnSystem( sel->updateCandidateObj(), USER(?) ) ) // actually this should not fail if you select by USER. // If you select by APPL_* this case woud indicate that // the user has already chosen a different candidate // for install else // selected for install } else { // best object already installed OR package is locked } -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c13 Thomas Göttlicher <tgoettlicher@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #13 from Thomas Göttlicher <tgoettlicher@suse.com> 2012-03-23 10:06:52 UTC ---
@Thomas: I sent some more info per mail. IMO the UI should roughly selecht this way:
Michael, thank you for your support. This bug is fixed in yast2-qt-pkg version 2.21.22. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=704123 https://bugzilla.novell.com/show_bug.cgi?id=704123#c15 --- Comment #15 from Bernhard Wiedemann <bwiedemann@suse.com> 2012-03-27 15:00:15 CEST --- This is an autogenerated message for OBS integration: This bug (704123) was mentioned in https://build.opensuse.org/request/show/111405 Factory / yast2-ncurses-pkg -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com