β04-11-2012 01:34 AM
Hi,
I had to get ODM to work in a Solaris 10 container (aka zone) and wanted to make sure that Oracle did indeed use ODM and direct I/O to the Oracle files. I could not find documentation for the Veritas dtrace probes but after some trying and guessing the following dtrace script turned out to be helpful.
#!/usr/sbin/dtrace -s #pragma D option quiet fbt:odm:odm_vx_*io:entry /!self->trace/ { self->trace = 1; } fbt:vxfs:vx_dio_rdwri:entry, fbt:vxfs:vx_dio_check:entry /self->trace/ { printf("%s %s\n", probefunc, stringof(((struct vnode *) ((struct vx_inode*) arg0)->i_vnode)->v_path)); } fbt:odm:odm_vx_*io:return /self->trace/ { self->trace = 0; }
vx_dio_check /zones/ora/root/orcldata/bodm1/control02.ctl vx_dio_rdwri /zones/ora/root/orcldata/bodm1/control02.ctl vx_dio_check /zones/ora/root/orcldata/bodm1/control01.ctl vx_dio_rdwri /zones/ora/root/orcldata/bodm1/control01.ctl vx_dio_check /zones/ora/root/orcldata/bodm1/system01.dbf vx_dio_rdwri /zones/ora/root/orcldata/bodm1/system01.dbf vx_dio_check /zones/ora/root/orcldata/bodm1/example01.dbf vx_dio_check /zones/ora/root/orcldata/bodm1/example01.dbf vx_dio_check /zones/ora/root/orcldata/bodm1/control01.ctl vx_dio_rdwri /zones/ora/root/orcldata/bodm1/control01.ctl