Bug 219519

Summary: Update rhel-instnum to final combination data
Product: Red Hat Enterprise Linux 5 Reporter: Daniel Riek <riek>
Component: rhel-instnumAssignee: David Lehman <dlehman>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: urgent    
Version: 5.0CC: jcanton
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RC Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-02-08 01:44:21 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
patch
none
rhel-opts-combs spreadsheet used to define products
none
rhel-opts-combs-planning-20061019riek1.ods - Possible Option combinations for RHEL5 GA none

Description Daniel Riek 2006-12-13 18:14:17 UTC
This is a minor change required from the Beta2 instnum list of possible
combinations:

Update to definition with date 20061212

Comment 1 Daniel Riek 2006-12-13 18:15:32 UTC
Making this a blocker as this already was discussed in the RHEL meeting.
Has to happen for Snapshot 4



Comment 2 Daniel Riek 2006-12-13 18:16:35 UTC
Created attachment 143537 [details]
patch

Comment 5 David Lehman 2006-12-14 00:10:07 UTC
rhel-instnum-1.0.6-1.el5 was built today.

Comment 6 RHEL Program Management 2007-02-08 01:44:21 UTC
A package has been built which should help the problem described in 
this bug report. This report is therefore being closed with a resolution 
of CURRENTRELEASE. You may reopen this bug report if the solution does 
not work for you.


Comment 7 joseph canton 2007-03-05 21:12:47 UTC
dave, this change is the only change i've seen re RHEL5 dictionary data. I'd
like to take one last look and compare the Java dictionaries to the "gold" or
latest python installer code. Can you tell me where to look? Joe.

Comment 9 joseph canton 2007-03-07 21:46:53 UTC
Dave, I may have some sort of a problem with the options field encoded by the
java  installation number service we use to generate install numbers.  Some
questions:

1. is this the correct format of the install number:
     
KKKK KKKK KKKK KKKK KKKK KKKK CCCC CCCC OOOO OOOO OOOO OOSS SSVV VTTP PPPP PPPP

Note options is 14 bits. 


2. here is a java generated IN for the above format:  f9ec20 b7 f87 3 da20

I decode as follows:

kkkk kkkk kkkk kkkk kkkk kkkk cccc cccc oooo oooo oooo ooss  xxxx xxxx xxxx xxxx
 f     9   e    c    2    0    b    7     f   8    7    3      d    a    2   0
1111 1001 1110 1100 0010 0000 1011 0111 1111 1000 0111 0011  1011 1010 0010 0000

                 xor'd options are:     1111 1000 0111 00  (14 bits)
                 key bits               1111 1001 1110 11 
                 clear txt options:     0000 0001 1001 11 (binary) or 103 decimal

do you agree that the option code encoded is 103 decimal?

joe







Comment 10 joseph canton 2007-03-07 22:13:33 UTC
more info. output from instnum.py shows wrong options, expecting 103 got
something else:

[jcanton@jcanton-workstation site-packages]$ ./instnum.py f9ec20b7f873da20
Product: RHEL Server
Type: Entitlement
Options: Premium FullProd Virt
Allowed CPU Sockets: Unlimited
Allowed Virtual Instances: Unlimited
Package Repositories: Server VT

key: 16378912 'f9ec20'
checksum: 183 'b7'
options: 784 'Premium FullProd Virt'
socklimit: -1 'Unlimited'
virtlimit: -1 'Unlimited'
type: 1 'Entitlement'
product: 0 'server'

{'Virt': 'VT', 'Base': 'Server'}

f9ec-20b7-f873-da20
[jcanton@jcanton-workstation site-packages]$



Comment 11 David Lehman 2007-03-08 01:37:57 UTC
Here's how it works:

We decode the options portion of the IN. In this case, we end up with 103
decimal. That number is then used as an index into a table of all possible
combinations of options (combinationsMap in instnum.py). 

Here is an interactive python session that shows roughly the path from raw IN
string to actual options:

[dave@purdy rhel-instnum]$ python
Python 2.4.4 (#1, Oct 23 2006, 13:58:18) 
[GCC 4.1.1 20061011 (Red Hat 4.1.1-30)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from instnum import *
>>> in_string = 'f9ec-20b7-f873-da20'
>>> inum = InstNum(in_string)
>>> rawOpts = inum.getRaw(IN_OPTIONS)
>>> product = inum.getRaw(IN_PRODUCT)
>>> print rawOpts
103
>>> print combinationsMap[product][rawOpts]
784
>>> print "0x%x" % combinationsMap[product][rawOpts]
0x310
>>> print inum.get_options_string()
Premium FullProd Virt
>>> 

Does this help?


Comment 12 joseph canton 2007-03-08 14:05:34 UTC
Created attachment 149564 [details]
rhel-opts-combs spreadsheet used to define products

Comment 13 joseph canton 2007-03-08 14:10:36 UTC
Dave, the python code options map indicates 'Standard' as 0x8, but spreadsheet
used to define products seems to indicate 'Standard' is 0x2.  Seems like a
mismatch in spreadsheet definitions. Please look at row 106 in spreadsheet. This
row is for combination  103. Seems like wrong spreadsheet was used for product
definition. Do you concur?

Joe

optionsMap = {
	 PROD_SERVER : {
		0x1     : 'NoSLA',
		0x4     : 'Basic',
		0x8     : 'Standard',
		0x10    : 'Premium',
		0x20    : 'Devel',
		0x40    : 'Eval',
		0x80    : 'Level3',
		0x100   : 'FullProd',
		0x200   : 'Virt',
		0x400   : 'Cluster',
		0x800   : 'ClusterStorage',
		0x2000  : 'VirtPlatform',
		0x4000  : 'HPC',
		0x8000  : 'Directory',
		0x10000 : 'SMB' },:

Comment 14 David Lehman 2007-03-08 16:02:11 UTC
There was a spreadsheet update in December which was distributed to Joe and me,
but not to Matt. So once he updates according to the current spreadsheet these
issues should be resolved.

Comment 15 Daniel Riek 2007-03-08 17:00:14 UTC
The most current one is 20061019riek0, which one I sent out on December 12, 2006
(forgetting to cc Matt. Sorry for that.)

Here is 20061019riek1, which I sent out today to Matt. It has no change in the
combiantions from the riek0 one.

Comment 16 Daniel Riek 2007-03-08 17:06:46 UTC
Created attachment 149588 [details]
rhel-opts-combs-planning-20061019riek1.ods - Possible Option combinations for RHEL5 GA