[Spacewalk-list] bug in channel.software.mergeErrata?
Florian Gleixner
Florian.Gleixner at lrz.de
Mon Sep 11 13:40:06 UTC 2017
Am 30.08.2017 um 15:33 schrieb Lichtinger, Bernhard:
> Hello,
>
> I see a strange behavior of spacewalk using spacewalk-manage-channel-lifecycle:
> Everytime I promote a channel all erratas which source and destination channel have in common are removed from the source channel.
>
> For example: source channel has 4 (newer) errata more than the destination channel. Then after running "spacewalk-manage-channel-lifecycle -c source_channel --promote" my destination channel has all old errata plus the 4 new ones, but my source channel has only the 4 new errata left.
>
> The rpm packages in each channel are still linked to the errata, but the source channel looses all "old" erratas.
>
> It happens with all my channels, RHEL-6,7 and SLES-11,12.
>
> I have spacewalk-2.6 on centos-7. I can also reproduce the behavior on my test machine with spacewalk-2.6 on centos-6:
> I have 2 phases for spacewalk-manage-channel-lifecycle defined: test and prod.
> So I have 3 baselines of channels: daily (is synced daily with upstream repos), test and prod.
>
> For a fresh start I clear all erratas from the database:
> rhnschema=# truncate rhnErrata CASCADE;;
>
> After a full sync of daily with upstream repo, errata count for my channels:
> daily: 590
> test: 0
> prod: 0
>
> After "spacewalk-manage-channel-lifecycle -c daily --promote" errata count for my channels:
> daily: 590
> test: 590
> prod: 0
>
> After "spacewalk-manage-channel-lifecycle -c test --promote" errata count for my channels:
> daily: 590
> test: 590
> prod: 590
>
> So far everything is ok.
>
> Now I after a second "spacewalk-manage-channel-lifecycle -c daily --promote" errata count for my channels:
> daily: 0
> test: 590
> prod: 590
>
> And after a second "spacewalk-manage-channel-lifecycle -c test --promote" errata count for my channels:
> daily: 0
> test: 0
> prod: 590
>
> With the next sync of daily with upstream daily gets again all erratas:
> daily: 590
> test: 0
> prod: 590
>
> And this cycle can go on and on.
>
> I am not sure, but I think this started after the upgrade from 2.5 to 2.6, but I could not find any relevant changes in the source code of the channel.software.mergeErrata API call. This is all code which was not touched in recent times.
>
> So, is this a bug in spacewalk or did I only break my installations?
>
>
Hi,
i did some more debugging, and when turning on hibernate logging i see a
delete command, that seems to be responsible for deleting erratas in
this case:
[2017-09-05 17:44:44,128] DEBUG - Pre-invalidating space [rhnChannelErrata]
[2017-09-05 17:44:44,128] DEBUG - Deleting collection:
[com.redhat.rhn.domain.channel.Channel.erratas#212]
[2017-09-05 17:44:44,128] DEBUG - about to open PreparedStatement (open
PreparedStatements: 0, globally: 0)
[2017-09-05 17:44:44,128] DEBUG - delete from rhnChannelErrata where
channel_id=?
[2017-09-05 17:44:44,128] DEBUG - delete from rhnChannelErrata where
channel_id=?
[2017-09-05 17:44:44,130] DEBUG - done deleting collection
Digging in spacewalks source i could not find many changes in 2.6 that
can be responsible for that. One candidate is commit
95345b58a86b134084bcc5a8c07ae452f1574670 from Tomas Lestach, but i do
not fully understand the code, so probably Tomas or another one can have
a look at our issue? If you need more logs, we can send them.
Thanks
Florian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/spacewalk-list/attachments/20170911/0a007c7e/attachment.sig>
More information about the Spacewalk-list
mailing list