Bug 629049
Summary: | yum doesn't detect groups in the Red Hat Enterprise linux Supplementary category comps data | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | James Laska <jlaska> |
Component: | PackageKit | Assignee: | Richard Hughes <rhughes> |
Status: | CLOSED ERRATA | QA Contact: | desktop-bugs <desktop-bugs> |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 6.0 | CC: | borgan, ddumas, dgregor, jturner, rhughes, tpelka |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | PackageKit-0.5.8-19.el6 | Doc Type: | Bug Fix |
Doc Text: |
Under some circumstances, the Add/Remove Software (gpk-application) graphical user interface does not display Supplementary groups or packages the Supplementary group is chosen. To work around this, use the System > Refresh Package Lists option to refresh the package lists.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2011-05-19 14:01:38 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 629274 | ||
Bug Blocks: | |||
Attachments: |
Created attachment 442259 [details]
creenshot - incorrectly showing the contents of the 'Red Hat Enterprise Supplementary' group
Just to clarify - "Red Hat Enterprise Linux Supplementary" is the category. Within that category the following groups should be available: java-base java-database java-browser misc multimedia virtualization zhongyi-song-fonts The lack of a triangle next to "Red Hat Enterprise Linux Supplementary" in the UI indicates to me that it's not finding any of these groups. I can reproduce this bug with your link, thanks. I'll investigate now. Created attachment 445995 [details]
simple yum test program
I've traced PackageKit, and it seems to work as expected. I've attached a simple yum script that seems to also fail.
Created attachment 445996 [details]
output of the simple test program
This shows the missing group information for the 'Supplementary' category.
Looking at the comps xml manually, it seems to look correct, so I'll re-assign to the yum guys to see if anything is broken when parsing the comps data. Dennis, James the comps file you reference has <grouplist> <groupid>java-base</groupid> <groupid>java-browser</groupid> <groupid>java-database</groupid> <groupid>misc</groupid> <groupid>multimedia</groupid> <groupid>zhongyi-song-fonts</groupid> </grouplist> you'll notice 'virtualization' is absent there. but in the x86_64 comps file from the same path virtualization is present. are the x86_64 and i386 comps files supposed to be different here? That is intentional. The virtualization packages are only delivered in the x86_64 Supplementary tree. As part of the compose process, we filter out comps groups that are empty for that tree. Here's some simple code to see if yum can see the groups in the category: import yum my = yum.YumBase() for cat in my.comps.get_categories(): if cat.categoryid == 'supplementary': print cat.categoryid for g in cat.groups: print ' %s' % g when I run it on el6b<mumble> I get supplementary multimedia java-base java-database misc java-browser virtualization zhongyi-song-fonts that's on x86_64 Seth, Using 'comps.get_groups(cat.categoryid)' I get 5 groups for the supplementary category. Using 'cat.groups' I get 7 groups, the other entries being "misc" and "multimedia". How come the data is different? Which method should I be using in PackageKit? Thanks. > Using 'comps.get_groups(cat.categoryid)' I get 5 groups for the
> supplementary category.
This is not a yum API. The yum API is:
def get_groups(self):
...what you are calling comes from:
PackageKit/backends/yum/yumComps.py
[...]
class yumComps:
[...]
def get_groups(self, cat_id):
...which appears to be an sqlite/caching layer, but (of course) in PK only.
(In reply to comment #14) > ...which appears to be an sqlite/caching layer, but (of course) in PK only. Of course, sorry -- my mistake. The reason for the missing groups was that there were no mandatory, default or optional packages in the "misc" and "multimedia" groups, and so PK ignored them. PK only shows users a simpler kind of meta-package for groups, and hence simplifies things a bit. I fear the real bug is that PK needs to call comps.refresh() after adding a repo or enabling a repository. You can test this by enabling the supplementary repo, and then doing "pkcon refresh-cache" on the command line. What's the usual use-case of somebody using the supplementary repo? Do they install a foo-release.rpm file or just add a repo file? (In reply to comment #15) > What's the usual use-case of somebody using the supplementary repo? Do they > install a foo-release.rpm file or just add a repo file? My understanding is that the customer either does everything through RHN (meaning they subscribe to the supplementary channel), or they insert a Supplementary CD into the system. Then they launch gpk-application and install the desired software. (In reply to comment #15) > I fear the real bug is that PK needs to call comps.refresh() after adding a > repo or enabling a repository. You can test this by enabling the supplementary > repo, and then doing "pkcon refresh-cache" on the command line. I just tested this workaround (well, 'pkcon refresh'), but after running that, the Supplementary groups appeared in gpk-application Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Add/Remove Software (gpk-application) sometimes does not display Supplementary groups or packages when you click on the Supplementary group in the user interface. As a workaround, launch "System->Admin->Add/Remove Software" and then click "System->Refresh Package Lists" Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1,3 +1 @@ -Add/Remove Software (gpk-application) sometimes does not display Supplementary groups or packages when you click on the Supplementary group in the user interface. +Under some circumstances, the Add/Remove Software (gpk-application) graphical user interface does not display Supplementary groups or packages the Supplementary group is chosen. To work around this, use the System>Refresh Package Lists option to refresh the package lists.- -As a workaround, launch "System->Admin->Add/Remove Software" and then click "System->Refresh Package Lists" commit c8d4cd05cfc9732765f1b5241f6c50927e1dc7ee Author: Richard Hughes <richard> Date: Tue Jan 25 12:18:16 2011 +0000 yum: Update the cached comps group list when enabling of disabling a repo. Fixes rh#629049 Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1 +1 @@ -Under some circumstances, the Add/Remove Software (gpk-application) graphical user interface does not display Supplementary groups or packages the Supplementary group is chosen. To work around this, use the System>Refresh Package Lists option to refresh the package lists.+Under some circumstances, the Add/Remove Software (gpk-application) graphical user interface does not display Supplementary groups or packages the Supplementary group is chosen. To work around this, use the System > Refresh Package Lists option to refresh the package lists. An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2011-0681.html |
Created attachment 442258 [details] Screenshot - correctly displaying packages in another group Description of problem: gpk-application doesn't seem to display the Supplementary packages when you click on the Supplementary group in the user interface. Version-Release number of selected component (if applicable): * RHEL6.0-Supplementary-20100826.0-Client-i386-DVD1.iso * gnome-packagekit-2.28.3-3.el6.i686 * PackageKit-0.5.8-13.el6.i686 Steps to Reproduce: 1. Update RHEL6-Client/i386 system to the latest nightly packages 2. Burn RHEL6.0-Supplementary-20100826.0-Client-i386-DVD1.iso to optical CD-R media 3. Insert media into system 4. Start gpk-application 5. Select 'Red Hat Enterprise Linux Supplementary' group (see screenshot) Actual results: No packages listed in the group 'Red Hat Enterprise Linux Supplementary' Expected results: Click any other group and you see packages that below to that group. I expected to see the packages included on the Supplementary CD. See attached screenshot for example. Additional info: