As Miladin Modrakovic recently pointed out, Oracle Database 11g Release 2 includes, for the first time ever, a copy of the ORacle IO Numbers (ORION) disk throughput test tool. The executable has been put into $ORACLE_HOME/bin.
This is just a quick blog entry to point out that the executable does work, but I had to file a bug since it only functions if executed with a full path name. At least that is the case on Linux, I can’t try it on Solaris.
This one goes out to the wayward Googler looking for the search terms error 27155 at location skgpchild2.
The following shows the diagnostic for why a relative path name fails and a full path name succeeds. When invoked without a full path name, the second invocation of execve(2) (called by a child thread) fails ENOENT. The last set of strace(1) output shows that the full path name is the fix.
Note, you can hover over the following box and an icon will appear that allows you to open the text in a better viewer.
$ uname -s -r -v -m -p -i -o Linux 2.6.18-128.1.16.0.1.el5 #1 SMP Tue Jun 30 16:48:30 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux $ type orion orion is hashed (/u01/app/oracle/product/11.2.0/dbhome_1/bin/orion) $ orion -run normal -testname ext3 -num_disks 1 ORION: ORacle IO Numbers -- Version 11.2.0.1.0 ext3_20091106_1024 Calibration will take approximately 19 minutes. Using a large value for -cache_size may take longer. Error in spawning child process Additional information: : error 27155 at location skgpchild2 - execv() - No such file or directory orion_main: orion_spawn sml failed Test aborted due to errors. $ $ strace -o strace.out -f orion -run normal -testname ext3 -num_disks 1 ORION: ORacle IO Numbers -- Version 11.2.0.1.0 ext3_20091106_1025 Calibration will take approximately 19 minutes. Using a large value for -cache_size may take longer. Error in spawning child process Additional information: : error 27155 at location skgpchild2 - execv() - No such file or directory orion_main: orion_spawn sml failed Test aborted due to errors. $ grep execve strace.out 25824 execve("/u01/app/oracle/product/11.2.0/dbhome_1/bin/orion", ["orion", "-run", "normal", "-testname", "ext3", "-num_disks", "1"], [/* 31 vars */]) = 0 25825 execve("orion", ["orion", "_ranseq", "0", "33010150\370x%;\377\177"], [/* 34 vars */]) = -1 ENOENT (No such file or directory) $ $ strace -o strace.out -f $ORACLE_HOME/bin/orion -run normal -testname ext3 -num_disks 1 ORION: ORacle IO Numbers -- Version 11.2.0.1.0 ext3_20091106_1026 Calibration will take approximately 19 minutes. Using a large value for -cache_size may take longer. $ grep execve strace.out 26223 execve("/u01/app/oracle/product/11.2.0/dbhome_1/bin/orion", ["/u01/app/oracle/product/11.2.0/d", "-run", "normal", "-testname", "ext3", "-num_disks", "1"], [/* 31 vars */]) = 0 26224 execve("/u01/app/oracle/product/11.2.0/dbhome_1/bin/orion", ["/u01/app/oracle/product/11.2.0/d", "_ranseq", "0", "1771981131\33\351\377\177"], [/* 34 vars */]) = 0
This seems to be a generic Oracle 11gR2 bug. I just tried this out on the latest S10 release…
$ orion -run simple
ORION: ORacle IO Numbers — Version 11.2.0.1.0
orion_20091119_0853
Calibration will take approximately 9 minutes.
Using a large value for -cache_size may take longer.
Error in spawning child process
Additional information: : error 27155 at location skgpchild2 – execv() – No such file or directory
orion_main: orion_spawn sml failed
Test aborted due to errors.
Segmentation Fault(coredump)
i had to file another bug (Bug 9104898: ORION FAILS WITH ORA-27061: WAITING FOR ASYNC I/OS FAILED).
Orion runs just fine until it comes to random large i/o:
ran (large): VLun = 0 Size = 2914705735680
Error completing IO
(storax_aiowait)
ORA-27061: waiting for async I/Os failed
Linux-x86_64 Error: 14: Bad address
Additional information: -1
Additional information: 1048576
lun_aiowait: storax_aiowait failed.
rwbase_run_test: rwbase_reap_req failed
rwbase_run_process: rwbase_run_test failed
rwbase_rwluns: rwbase_run_process failed
orion_thread_main:rwbase_rwluns failed
Orion 11.1.0.0.0 works, Orion 11.1.0.7.0 shows the same error.
regards,
-ap