Bug 202798 - 490 Satellites can't sync against 412 hosted.
Summary: 490 Satellites can't sync against 412 hosted.
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Network
Classification: Retired
Component: RHN/Backend
Version: RHN Devel
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bryan Kearney
QA Contact: Brandon Perkins
URL:
Whiteboard:
Depends On:
Blocks: 189917
TreeView+ depends on / blocked
 
Reported: 2006-08-16 15:00 UTC by James Bowes
Modified: 2013-01-10 09:50 UTC (History)
2 users (show)

Fixed In Version: 414
Clone Of:
Environment:
Last Closed: 2006-11-13 16:33:19 UTC
Embargoed:


Attachments (Terms of Use)

Description James Bowes 2006-08-16 15:00:10 UTC
We uncovered two problems when trying to sync against the 412 codebase with a
490 satellite:

1. 412 was not exporting header_start and header_end values in the sat sync xml.
2. clients could not import <rhn-null /> tags set in int fields.

Fixing these involves adding the two columns to the sql that queries the db, and
also changing the schema to not allow for null values in those fields (instead
we default them to -1)

Comment 1 James Bowes 2006-08-21 15:49:02 UTC
To test, you'll want to try running a sat-sync against webqa (ensuring that you
import packages) with:

- A pre 490 satellite. Make sure that there are no crazy warnings during the
sync and that the content appears ok in the webui/updating with up2date.

- A 490 satellite. Sync a rhel5 channel and ensure that a client can access it
through the satellite with yum. Also, make sure that older channels are imported
correctly, and that up2date can access them.

Comment 2 Beth Nackashi 2006-08-22 12:36:30 UTC
Test item #1, pre-490 satellites:
1- Registered a 4.1 satellite (rlx-3-04, running rhel4.4 AS), a 3.7 satellite
(sat-dev, running rhel4 Gold AS), and a 3.2 satellite (rlx-1-06, running rhel2.1
AS) to stage.
2- Activated the satellites.
3- Ran satellite-sync -l on the satellites (well, except for the 320 one, since
-l isn't a valid option).
4- Synced a base channel on each of the satellites.  This took about a fortnight
to complete.
5- Looked at the web UI on the 4.1 and 3.2 satellites and verified the packages
were synced.  The 3.7 satellite, unfortunately, was rendered useless at midnight
because the certificate expired.  The sync completed but I can't use the UI.
6- Continued testing with the 4.1 and 3.2 satellites by registering a client to
each and running up2date to install the "ddd" package.

Assigning to Brandon to verify the 490 satellite part of this bug.




Comment 3 Brandon Perkins 2006-08-22 18:48:21 UTC
All old satellites are fine.  But 490 is still broken.  Here is the exception:

13:44:18 
SYNC ERROR: unhandled exception occurred:

Exception reported from rlx-3-14.rhndev.redhat.com
Time: Tue Aug 22 13:44:17 2006
Exception type exceptions.ValueError

Exception Handler Information
Traceback (most recent call last):
  File "/usr/bin/satellite-sync", line 134, in main
    return satsync.Runner().main()
  File "/usr/share/rhn/satellite_tools/satsync.py", line 198, in main
    ret = method()
  File "/usr/share/rhn/satellite_tools/satsync.py", line 302, in _step_packages
    self._affected_channels = self.syncer.import_packages()
  File "/usr/share/rhn/satellite_tools/satsync.py", line 1580, in import_packages
    sync_handlers.import_packages(batch)
  File "/usr/share/rhn/satellite_tools/sync_handlers.py", line 400, in
import_packages
    importer.run()
  File "/usr/share/rhn/server/importlib/importLib.py", line 590, in run
    self.submit()
  File "/usr/share/rhn/server/importlib/packageImport.py", line 285, in submit
    transactional=self.transactional)
  File "/usr/share/rhn/server/importlib/backend.py", line 601, in processPackages
    transactional=transactional)
  File "/usr/share/rhn/server/importlib/backend.py", line 1059, in
__processObjectCollection__
    _buildExternalValue(extObject, object, parentTableObj)
  File "/usr/share/rhn/server/importlib/backend.py", line 1570, in
_buildExternalValue
    dict[f] = sanitizeValue(entry[attr], datatype)
  File "/usr/share/rhn/server/importlib/backendLib.py", line 473, in sanitizeValue
    return int(value)
ValueError: invalid literal for int(): ['45624']



from the terminal:

13:42:53 
13:42:53 Importing package metadata
13:42:53    Importing *relevant* package metadata: redhat-advanced-server-i386
(3197)
13:42:53    * WARNING: this may be a slow process.
            ________________________________________
Importing:  +++ sending log as an email +++

SYNC ERROR: unhandled exception occurred:

(Check logs/email for potentially more detail)

invalid literal for int(): ['45624']

pushing to 4121

Comment 4 James Bowes 2006-08-22 20:42:17 UTC
The 490 problem is client side. So, while we still have to fix it, I don't
believe we'll need to push anything to production.

Comment 5 Brandon Perkins 2006-10-09 21:10:35 UTC
Verified.  This has been fixed on the sat-side of things.


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