*** Bug 246471 has been marked as a duplicate of this bug. ***
[packages]$ svn diff Index: rhn_channel.pkb =================================================================== --- rhn_channel.pkb (revision 131533) +++ rhn_channel.pkb (working copy) @@ -139,6 +139,11 @@ FROM rhnServer WHERE id = server_id_in; + select current_members + from rhnPrivateChannelFamily + where org_id = org_id_in and channel_family_id = channel_family_id_val + for update of current_members; + available_subscriptions := rhn_channel.available_family_subscriptions(channel_family_id_val, server_org_id_val); IF available_subscriptions IS NULL OR [packages]$ svn ci Sending packages/rhn_channel.pkb Transmitting file data . Committed revision 131673.
testplan ======== To test this, get a satellite set up so that it has exactly 1 subscription available of the channel you want to test with. Register 4 systems at exactly the same time. The best way to do this is to call up2date.py 4 times in a row from a bash script and running each command in the background (&). 1 and exactly 1 system should get registered each time you perform the test. The other 3 should fail with the Error Class Code: 70 All available subscriptions for the requested channel have been exhausted exception.
QA Verified; ran this test attempting four simultaneous registrations; the first one works and subsequent others don't.
User jslagle's account has been closed
Using the up2date.py method verified against stage by: * Reducing core server allocation for my org to one more than was currently used. * Spawning 4 fake system registrations using the above method. Result: Only one system appeared in satellite, correct number of entitlements used in satellite, and three error msgs on the console where the test was run. Release pending.
5.1 Sat GA so Closed for Current Release.