Bug 244750 - ISE when registering to webqa if IN on disk
Summary: ISE when registering to webqa if IN on disk
Alias: None
Product: Red Hat Network
Classification: Red Hat
Component: RHN/Backend
Version: rhn500
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Bryan Kearney
QA Contact: Mike Orazi
Depends On:
Blocks: 239809 239816
TreeView+ depends on / blocked
Reported: 2007-06-18 21:49 UTC by Máirín Duffy
Modified: 2013-01-10 09:10 UTC (History)
2 users (show)

Fixed In Version: 5.0.2
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2007-07-25 18:30:07 UTC

Attachments (Terms of Use)
error output from /var/log/up2date (1.06 KB, text/plain)
2007-06-18 21:49 UTC, Máirín Duffy
no flags Details

Description Máirín Duffy 2007-06-18 21:49:16 UTC
Description of problem:
I get an ISE when registering to webqa (18-jun-2007) if I have an installation
number on disk that indicates child channels and system entitlements to be
subscribed to.

Version-Release number of selected component (if applicable):
rhn webqa from 18-jun-07 push

Steps to Reproduce:
1. run rhn_register to register using the GUI on a rhel 5 x86 system, with the
following installation number on disk at /etc/sysconfig/rhn/install-num:
2. register to webqa using satellite url option, https://xmlrpc.rhn.webqa.red
3. username maureenduffy
4. pops up system profile screen, click next... gives me the registering your
system... progress bar
5. then you'll get a popup error window "Problem registering system:Internal
Server Error"
6. i'm attaching the /var/log/up2date output.

Expected results:

System should be successfully registering with virt and mgmt system entitlements
and the following software channel subs: rhel5 desktop, rhn tools, desktop
multios, desktop workstation

Note that registering this system to production (rhn.redhat.com) is successful
and provides the software channels and system entitlements specified by the
installation number.

Note that deleting the installation number from disk results in a successful
webqa registration. However it fails for the indicated installation number.

"<jbowes> it's blowing up at automagic child channel subscription"

Comment 1 Máirín Duffy 2007-06-18 21:49:16 UTC
Created attachment 157334 [details]
error output from /var/log/up2date

Comment 2 Máirín Duffy 2007-06-18 21:50:29 UTC
er i registered using https://xmlrpc.rhn.webqa.redhat.com/XMLRPC as the server
url, sorry about the typo

Comment 3 James Bowes 2007-06-18 21:51:09 UTC
Server error log:

Exception Handler Information
Traceback (most recent call last):
  File "/usr/share/rhn/server/apacheRequest.py", line 108, in call_function
    response = apply(func, params)
  File "/usr/share/rhn/server/handlers/xmlrpc/registration.py", line 683, in new
  File "/usr/share/rhn/server/handlers/xmlrpc/registration.py", line 772, in _au
    os_release_version, arch, repositories)
  File "/usr/share/rhn/server/rhnChannel.py", line 1927, in subscribe_child_chan
    _subscribe_sql(system_id, channel['id'], 1)
  File "/usr/share/rhn/server/rhnChannel.py", line 1801, in _subscribe_sql
    raise rhnException(e)
rhnException: (1403, 'ORA-01403: no data found', 'ORA-06512: at "RHN.RHN_CHANNEL
", line 73\nORA-06512: at "RHN.RHN_CHANNEL", line 173\nORA-06512: at line 1\n', 

Comment 4 Bret McMillan 2007-06-19 02:21:51 UTC
Making this block the -must list, since something looks like it got garbled...

Comment 5 James Bowes 2007-06-19 10:40:08 UTC
John, can you check to see if this is a side-affect of your changes to then
rhn_server plsql?

Comment 6 James Bowes 2007-06-19 14:04:31 UTC
On seconds thoughts, this probably happened because the database was updated,
but the rhnxml machine wasn't restarted. Once the restart is done, we'll have to
check again to see if it still happens

Comment 7 James Bowes 2007-06-19 14:55:39 UTC
Nope, still happening

Comment 8 Máirín Duffy 2007-06-19 16:59:07 UTC
Hi, just an update, I tested this with different installation numbers and
discovered that the issue is unique to installation numbers for RHEL 5 client
that have the client-vt channel specified in them. For example:

- da3122afdb7edd23 (Red Hat Enterprise Linux Desktop + Workstation Option) works
fine, correctly subscribed to necessary child channel
- 7fcc43557e9bbc42 (Red Hat Enterprise Linux Desktop + Workstation + DualOS
Option (Virtualization)) busticated, ISE
- fed67649ff918c77 (Red Hat Enterprise Linux Desktop + DualOS Option
(Virtualization)) busticated, ISE

I noticed with my sat i've registered to webqa that I couldn't sync the
client-vt channel. So I think probably the client vt channels are missing from

So, maybe we're getting the ISE because the logic doesn't handle the case where
the IN-requested channel doesn't exist.

Comment 9 John Sanda 2007-06-21 13:55:46 UTC
The registration is failing on a call from the python code to the PL/SQL stored
procedure rhn_channel.subscribe_server. In this procedure, I have added a call
to obtain_read_lock, which does a SELECT FOR UPDATE to eliminate the race
condition described in bug 239816. If for whatever reason the SELECT FOR UPDATE
returns an empty result set, oracle will raise a NO_DATA_FOUND exception, and it
is not handled; so, the exception will propagate back up to the python code. I
am going to add exception handling code so that we can throw a custom exception
that the python stack knows about.

If an exception is thrown, that would indicate that the org does not have
entitlements for the channel family. We need to verify that the org does in fact
have entitlements for the channel family.

Comment 10 John Sanda 2007-06-21 15:32:42 UTC
Checked in some new exception handing code for the stored procedure
under revision 117189.

Comment 11 James Bowes 2007-06-26 21:14:22 UTC
Máirín says this is cleared up now. Verified.

Comment 12 James Bowes 2007-07-25 15:16:39 UTC
rhn502 released.

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