APAR status
Closed as program error.
Error description
Can you take a look at this recommendation from AIX Kernel team: I am thinking that this is starting to look to be a very expensive call on the frame the way prtconf (lsconf) works, if all that is needed out of it is the Machine's Serial Number. Since we store the Machine Serial number on the LPAR itself (in the AIX native database called the ODM) that maybe the end game solution might best be served by instead of using lsconf (prtconf) and grepping for the Machine Serial number that we may have all the data locally in the AIX that your application is looking for without going all the way down to the hardware for it. SO: I am tossing out this idea for TADDM developer: Since AIX already keeps the parts Serial number on the filesystem locally once it has discovered it for it's own use - and there is a command to retrieve ut- the command to retrieve it would be: # odmget CuAt | grep -p systemid (this command avoids going all the way down to the hardware all over again, - which looking more and more like something we shouldn't be doing often in the interest of being efficient). Which will return the following text paragraph: CuAt: name = "sys0" attribute = "systemid" value = "IBM,030694FCG" type = "R" generic = "D" rep = "s" nls_index = 62 From there, further use of grep and either awk or can narrow it down to just the digits of the serial number you are looking for (as the above "IBM,030694FCG" is a bit more long version than you get from the lsconf command, but that can be fixed with a pipe through awk - let me elaborate..). example: odmget CuAt | grep -p systemid | awk '$1 == "value" { print substr($3,8,7) }' (for the awk part this translates to "if the $1 (first value) on the line is "value" then print the $3 (third value) starting at position 8 and print 7 of them. returns: 0694FCG # lsconf | grep -e "Machine Serial" Machine Serial Number: 0694FCG I did a preliminary test of performance gains using the AIX "time" command, and this is on an idle LPAR: compare the time spent in real,user, and sys spaces for the 2 commands: # time lsconf | grep -e "Machine Serial" Machine Serial Number: 0694FCG real 0m6.10s user 0m0.00s sys 0m0.00s (total 6.1 secs) versus: # time odmget CuAt | grep -p systemid | awk '$1 == "value" { print substr($3,8,7) }' 0694FCG real 0m0.15s user 0m0.01s sys 0m0.01s (total 0.16s) Switching TADDM to use this command may gain up to 60 times faster response using 1/60th of the local CPU time. Of course the words "Machine Serial Number: can be added back in to the output, but that can be done either locally, or back on the TADDM server before storing the value into it's database. Maybe a consideration, since even if we found a way to speed up the ops down in the bottom end where lsconf goes to get the data, I don't think it would ever be quite as fast as this.
Local fix
Problem summary
LSCONF TO GET THE SERIAL NUMBER FROM AIX IS INEFFICIENT
Problem conclusion
The fix for this APAR is contained in the following maintenance packages: | Fix Pack | 7.1.2.0-TIV-ITADDM-FP0005
Temporary fix
Comments
APAR Information
APAR number
IZ60683
Reported component name
APP DEPENDENCY
Reported component ID
5724N5500
Reported release
710
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2009-09-16
Closed date
2009-10-31
Last modified date
2009-10-31
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
APP DEPENDENCY
Fixed component ID
5724N5500
Applicable component levels
R712 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSPLFC","label":"Tivoli Application Dependency Discovery Manager"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"710","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
31 October 2009