[Spacewalk-list] RHEL 4 client management

Pierre Casenove pcasenove at gmail.com
Fri May 11 15:21:15 UTC 2012


OK, I'm really lost now!
I've modify the code to set arch to null if it is not set, and the
result is simple: spacewalk doesn't work! All rpm are listed without
arch. So Spacewalk don't know which package it should push to the
client.
Upon registration of a redhat 4 client, almost all RPM are listed and
then we have a traceback. For the packages that are stored in the
database, an arch is specified. But I don't know where Spacewalk find
the information, as the up2date client doesn't provide it!
spaceschema=# select * from rhnServerPackage where server_id=1000010049
spaceschema-# ;
 server_id  | name_id | evr_id | package_arch_id |            created
          | installtime
------------+---------+--------+-----------------+-------------------------------+-------------
 1000010049 |      46 |   7781 |             119 | 2012-05-11
14:35:00.617812+00 |
 1000010049 |     454 |   7782 |             101 | 2012-05-11
14:35:00.617812+00 |
 1000010049 |    2220 |   7783 |             119 | 2012-05-11
14:35:00.617812+00 |
 1000010049 |    4714 |   7784 |             119 | 2012-05-11
14:35:00.617812+00 |
 1000010049 |    1884 |   7785 |             119 | 2012-05-11
14:35:00.617812+00 |
 1000010049 |     176 |   5360 |             100 | 2012-05-11
14:35:00.617812+00 |
[...]
(909 rows)


If I call the PL/SQL function with an empty string, it crash, as in
the traceback:

spaceschema=# select * from rhnServerPackage where
server_id=1000010049 and package_arch_id=LOOKUP_PACKAGE_ARCH('');
ERROR:  -20243 : (package_arch_not_found) - Package architecture could
not be found
CONTEXT:  SQL statement "SELECT
rhn_exception.raise_exception('package_arch_not_found')"


Now, I'm really lost!
How Spacewalk find the arch information during registration of the client?
Why is it failing after 909 packages only? it seems that it is failing
only on packages that are not in spacewalk channels (such a
gpg-pubkey)
What could be a correct correction of this bug?

Thanks

Pierre



2012/5/11 Pierre Casenove <pcasenove at gmail.com>:
> I managed to get the packages that are not synced.
> The packages are gpg-pubkey and 8 packages not provided by redhat,
> which are not in any channel of my spacewalk server.
>
> To go further down, I need to understand how arch detection works:
> - If I modifiy python code to set to None the arch field if it is
> empty, the package sync is working, but all packages are listed with
> architecture set as "not specified"
> - The up2date client does not provide the arch information to the
> spacewalk server (as we can see in the traceback)
> - With the actual python code, the sync is done partially (909
> packages out of 918) but the arch is set
>
> Where does spacewalk find the arch information when it is not provided
> by the client?
>
> Thanks,
>
> Pierre
>
>
>
>
> 2012/5/11 Pierre Casenove <pcasenove at gmail.com>:
>> Thanks,
>> Which definitly leave me confused, as I don't see where the problem is!
>> And finding the 9 RPMs that are not synced on a system with 920 RPM is not easy
>> How could I log the package that is problematic?
>>
>> Pierre
>>
>>
>> 2012/5/11 Miroslav Suchy <msuchy at redhat.com>:
>>> On 11.5.2012 10:54, Pierre Casenove wrote:
>>>>
>>>> Hello,
>>>> I'm analyzing the traceback in order to understand a bit more what I am
>>>> doing.
>>>> And I'm suprized to see that there are some exclamation mark in the
>>>> traceback:
>>>>                package_data =<type 'dict'>  {'a': ['', '', '', '', '', '',
>>>> '',
>>>> '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
>>>> '',
>>>> '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''!
>>>>  , '', ''
>>>> , '', '', ''
>>>>
>>>> Is it normal or could it be the reason of failure?
>>>
>>>
>>> It is just formatting of TB, it means just: "we are putting here \n but in
>>> original data there is neither \n nor whitespace".
>>>
>>> Mirek
>>>
>>>
>>> _______________________________________________
>>> Spacewalk-list mailing list
>>> Spacewalk-list at redhat.com
>>> https://www.redhat.com/mailman/listinfo/spacewalk-list




More information about the Spacewalk-list mailing list