Bug 1576775 - when comps.xml or modules.yaml changes (rest of repo unchanged), sat synces it but do not update repomd.xml
Summary: when comps.xml or modules.yaml changes (rest of repo unchanged), sat synces i...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite 5
Classification: Red Hat
Component: Satellite Synchronization
Version: 580
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
Assignee: Tomáš Kašpárek
QA Contact: Martin Korbel
URL:
Whiteboard:
Depends On:
Blocks: sat58-errata
TreeView+ depends on / blocked
 
Reported: 2018-05-10 11:32 UTC by Jan Hutař
Modified: 2018-07-11 15:49 UTC (History)
4 users (show)

Fixed In Version: spacewalk-backend-2.5.3-169-sat
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-07-11 15:48:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:2174 0 None None None 2018-07-11 15:49:08 UTC

Description Jan Hutař 2018-05-10 11:32:49 UTC
Description of problem:
When comps.xml or modules.yaml changes (rest of repo unchanged), sat synces it but do not update repomd.xml so client denies to download whole repo.


Version-Release number of selected component (if applicable):
spacewalk-backend-2.5.3-167.el6sat.noarch
spacewalk-java-2.5.14-120.el6sat.noarch
satellite-schema-5.8.0.46-1.el6sat.noarch


How reproducible:
always


Steps to Reproduce:
1. Create repo with comps.xml and/or modules.yaml:
   # createrepo .
   # modifyrepo --mdtype=modules modules.yaml repodata/
   # modifyrepo --mdtype=group comps.xml repodata/
2. Sync it to the satellite and on client registered to the channel verify
   you are getting expected output:
   # rm -rf /var/cache/dnf/*
   # dnf module list
   # dnf grouplist --disablerepo rhel-x86_64-*
3. Now change the file (but nothing else in the repo) and resync to the sat:
   # vim comps.xml
   # modifyrepo --mdtype=group comps.xml repodata/
4. Check that client still returns expected output:
   # rm -rf /var/cache/dnf/*
   # dnf grouplist --disablerepo rhel-x86_64-*
   (or similar for modules)


Actual results:

# yum repolist | tee
This system is receiving updates from Spacewalk server.
Failed to synchronize cache for repo 'jhutar-modules', disabling.
Last metadata expiration check: 0:00:05 ago on Thu 10 May 2018 01:32:12 PM CEST.
repo id                              repo name                            status
rhel-x86_64-server-8                 rhel-x86_64-server-8                 2,344
rhel-x86_64-server-appstream-8       rhel-x86_64-server-appstream-8       3,613
# dnf grouplist --disablerepo rhel-x86_64-* | tee
This system is receiving updates from Spacewalk server.
Failed to synchronize cache for repo 'jhutar-modules', disabling.
Error: No group data available for configured repositories.


Expected results:
It should work as in a step 2:

# dnf grouplist --disablerepo rhel-x86_64-*
This system is receiving updates from Spacewalk server.
jhutar-modules                                                                                                                                19 MB/s | 493 kB     00:00    
Last metadata expiration check: 0:00:00 ago on Thu 10 May 2018 01:30:17 PM CEST.
Available Environment Groups:
   Server
   Workstation
Available Groups:
   Container Management
   Development Tools
   Graphical Administration Tools
   Headless Management
   RPM Development Tools
   Scientific Support
   Smart Card Support
   System Tools

Comment 3 Tomáš Kašpárek 2018-05-17 12:12:26 UTC
spacewalk.git(master): 47bf27f75beff7804bfc8e070a4fd6fccd1afa41
eeea46e70074c1de4ad08cb91ae798cc6dc6afd0

Comment 6 Martin Korbel 2018-07-04 10:11:13 UTC
VERIFIED on spacewalk-backend-2.5.3-168.

Reproducer via comment #0

> dnf module list --disablerepo rhel-x86_64-*
This system is receiving updates from Spacewalk server.
Last metadata expiration check: 0:01:07 ago on Wed Jul  4 12:01:05 2018.
mychannel5
Name                       Stream                    Version                            Profiles                       
fruits                     10.2                      201805010000000                    default, red 

> yum clean all

> dnf module list --disablerepo rhel-x86_64-*
This system is receiving updates from Spacewalk server.
mychannel5                                                                             235 kB/s | 493 kB     00:02    
Last metadata expiration check: 0:00:01 ago on Wed Jul  4 12:07:23 2018.
mychannel5
Name                       Stream                    Version                            Profiles                       
fruits                     10.3                      201807010000000                    default, red






> dnf grouplist --disablerepo rhel-x86_64-*
This system is receiving updates from Spacewalk server.
Last metadata expiration check: 0:00:50 ago on Wed Jul  4 12:01:05 2018.
Available Environment Groups:
   Server
   Workstation
Available Groups:
   Container Management
   Development Tools
   Graphical Administration Tools
   Headless Management
   RPM Development Tools
   Scientific Support
   Smart Card Support
   System Tools


> yum clean all

> dnf grouplist --disablerepo rhel-x86_64-*
This system is receiving updates from Spacewalk server.
Last metadata expiration check: 0:00:08 ago on Wed Jul  4 12:07:23 2018.
Available Environment Groups:
   Server
   Workstation
Available Groups:
   Container Management
   Development Tools
   Graphical Administration Tools
   Headless Management
   RPM Development Tools
   Scientific Support
   Smart Card Support 33
   System Tools

Comment 7 Tomáš Kašpárek 2018-07-10 06:51:14 UTC
satellite-sync fails with:
Traceback (most recent call last):
  File "/usr/bin/satellite-sync", line 138, in main
    return satsync.Runner().main()
  File "/usr/lib/python2.6/site-packages/spacewalk/satellite_tools/satsync.py", line 245, in main
    ret = method()
  File "/usr/lib/python2.6/site-packages/spacewalk/satellite_tools/satsync.py", line 370, in _step_packages
    self._affected_channels = self.syncer.import_packages()
  File "/usr/lib/python2.6/site-packages/spacewalk/satellite_tools/satsync.py", line 1677, in import_packages
    return self._link_channel_packages()
  File "/usr/lib/python2.6/site-packages/spacewalk/satellite_tools/satsync.py", line 1712, in _link_channel_packages
    for regenerating in h.fetchall_dict():
TypeError: 'NoneType' object is not iterable

Comment 8 Tomáš Kašpárek 2018-07-10 06:51:41 UTC
spacewalk.git(master): 1315c24413c6330d986b843132c374f14f6c804a

Comment 11 Radovan Drazny 2018-07-10 12:47:46 UTC
Tested on spacewalk-backend-2.5.3-169

$ satellite-sync -m rhel5-i386-x8664-cloners-300pkgs-200erratas -c clone-rhel-i386-server-5
08:41:34 Red Hat Satellite - file-system synchronization
08:41:34    mp:  /root/lookaside/rhel5-i386-x8664-cloners-300pkgs-200erratas
08:41:34    db:  rhnuser/<password>@rhnschema
08:41:34 
08:41:34 Retrieving / parsing channel-families data
08:41:34 channel-families data complete
08:41:34 
08:41:34 Retrieving / parsing product names data
08:41:35 
08:41:35 Retrieving / parsing arches data
08:41:36 arches data complete
08:41:36 
08:41:36 Retrieving / parsing additional arches data
08:41:36 additional arches data complete
08:41:36 
08:41:36 Retrieving / parsing channel data
08:41:36    p = previously imported/synced channel
08:41:36    . = channel not yet imported/synced
08:41:36    base-channels:
08:41:36       . clone-rhel-i386-server-5                  300       full import from Mon Jul 13 00:26:10 2015
08:41:36 
08:41:36 Channel data complete
08:41:36 
08:41:36 Retrieving short package metadata (used for indexing)
08:41:36    Retrieving / parsing short package metadata: clone-rhel-i386-server-5 (300)
08:41:36 Diffing package metadata (what's missing locally?): clone-rhel-i386-server-5
            ________________________________________
Diffing:    ######################################## - complete
08:41:37 
08:41:37 Downloading package metadata
08:41:37    Retrieving / parsing *relevant* package metadata: clone-rhel-i386-server-5 (300)
08:41:37    * WARNING: this may be a slow process.
            ________________________________________
Downloading:######################################## - complete
08:41:52 
08:41:52 Downloading rpm packages
08:41:52    Fetching any missing RPMs: clone-rhel-i386-server-5 (300)

<snip>

08:42:06 Processing rpm packages complete
08:42:06 
08:42:06 Importing package metadata
08:42:06    Importing *relevant* package metadata: clone-rhel-i386-server-5 (300)
            ________________________________________
Importing:  ######################################## - complete
08:43:14 
08:43:14 Linking packages to channels
08:43:15 
08:43:15 Downloading errata data
08:43:15    Retrieving / parsing errata data: clone-rhel-i386-server-5 (200)
            ________________________________________
Downloading:######################################## - complete
08:43:15 Downloading errata data complete
08:43:15 
08:43:15 Downloading kickstartable trees metadata
08:43:15    Retrieving / parsing kickstart data: clone-rhel-i386-server-5 (NONE RELEVANT)
08:43:15 
08:43:15 Downloading kickstartable trees files
08:43:15    Retrieving / parsing kickstart tree files: clone-rhel-i386-server-5 (NONE RELEVANT)
08:43:15 
08:43:15 Importing channel errata
08:43:15    Importing *relevant* errata: clone-rhel-i386-server-5 (200)
            ________________________________________
Downloading:######################################## - complete
08:43:17    No new kickstartable tree to import
    Import complete:
        Begin time: Tue Jul 10 08:41:34 2018
        End time:   Tue Jul 10 08:43:17 2018
        Elapsed:    0 hours, 1 minutes, 42 seconds

VERIFIED

Comment 13 errata-xmlrpc 2018-07-11 15:48:58 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2174


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