Category Archives: AIX

Limit nmon to certain disks

I am often working on systems with large number of LUNs, going into the hundreds. Trying to keep track is difficult at best. Sometimes though you might want to limit yourself to a specific number of disks-I knew about the dskfilt option in collectl but only today learned about a similar feature in nmon. The following is a very greatly simplified example of course, but it gives you the idea.

Assume you are interested in 4 disks-sd{a,b,c,d}. Let’s further assume that your disks are used for 2 ASM disk groups, DATA and RECO. You could create a file “disks.dat” with the following contents:

DATA sda sdb
RECO sdc sdd

Then pass that file to nmon with the -g flag. When you type “g” now, you are shown IO stats for those disks.

─────────────────Hostname=test──────────────────────Refresh= 2secs ───15:13.02─┐
│ Disk-Group-I/O ──────────────────────────────────────────────────────────────│
│ Name          Disks AvgBusy Read|Write-KB/s  TotalMB/s   xfers/s BlockSizeKB │
│ DATA               2   0.0%       0.0|0.0          0.0       0.0    0.0      │
│ RECO               2   0.0%       0.0|0.0          0.0       0.0    0.0      │
│ Groups= 2 TOTALS   4   0.0%       0.0|0.0          0.0       0.0             │

That is terrific, and very useful to hunt for bottlenecks. In addition, you have the “minimal mode” as well, which displays only busy disks and processors. Invoke it by pressing the “.” in interactive mode.

Grouping disks also works for the capacity planning mode. From the online help:

For Data-Collect-Mode = spreadsheet format (comma separated values)
 Note: use only one of f,F,z,x or X and make it the first argument
 -g <filename> User Defined Disk Groups (see above) - see BBBG & DG lines

Nothing stopping you now from benchmarking properly and focusing on the relevant detail! Don’t forget to run the raw file through nmon analyzer to get some eye-candy even a non-techie understands (it has lots of nice color!)

Frightening number of linking errors for on AIX 5.3 TL11

I just applied PSU 3 for on AIX 5.3 TL11. That would have been more straight forward, had  there not been a host of errors when relinking oracle. There were loads of these:

SEVERE:OPatch invoked as follows: 'apply '
Oracle Home       : /u01/app/oracle/product/
Central Inventory : /u01/app/oracle/product/oraInventory
 from           : /etc/oraInst.loc
OPatch version    :
OUI version       :
OUI location      : /u01/app/oracle/product/
Log file location : /u01/app/oracle/product/
[more output]
INFO:Running make for target ioracle
INFO:Start invoking 'make' at Mon Nov 01 09:29:26 GMT 2010Mon Nov 01 09:29:26 GMT 2010
INFO:Finish invoking 'make' at Mon Nov 01 09:29:40 GMT 2010
OPatch found the word "error" in the stderr of the make command.
Please look at this stderr. You can re-run this make command.
Stderr output:
ld: 0711-415 WARNING: Symbol ldxdts is already exported.
ld: 0711-415 WARNING: Symbol ldxsto is already exported.
ld: 0711-415 WARNING: Symbol lnxadd is already exported.
ld: 0711-319 WARNING: Exported symbol not defined: cout__3std
ld: 0711-224 WARNING: Duplicate symbol: .kotgscid
ld: 0711-783 WARNING: TOC overflow. TOC size: 219488    Maximum size: 65536
 Extra instructions are being generated for each reference to a TOC
 symbol if the symbol is in the TOC overflow area.

Wow, that looked like a completely corrupted installation of Oracle now, and I got ready to roll the change back. However, MOS had an answer to this!

These errors can be ignored as per this MOS document: Relinking causes many warning on AIX [ID 1189533.1]. See also MOS note Note 245372.1 TOC overflow Warning Can Safely Be Ignored and BUG:9828407 – TOO MANY WARNING MESSAGES WHEN INSTALLING ORACLE 11.2 for more information.