Re: missing alert.log mystery (it's not what you think)
Date: Mon, 16 May 2011 14:06:19 -0500
Message-ID: <BANLkTikXx8SfR9mPmqBcwh+oADaRq-S5Lg_at_mail.gmail.com>
Some here is something I found interesting - if I truss a sqlplus "alter system" call in any other database, I get results like the following:
2801: access("./alert_TEMQA.log", F_OK) Err#2 ENOENT
2801: access("/u01/app/oracle/local/bin/alert_TEMQA.log", F_OK) Err#2
ENOENT
2801: open("/u01/app/oracle/diag/rdbms/temqa/TEMQA/trace/alert_TEMQA.log",
O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0660) = 11
I would be curious if you all get the same thing. I used "truss -aefo
some_output_filename sqlplus / as sysdba" and did something like "alter
system set timed_statistics=TRUE;".
I find it interesting that Oracle is always (always?) looking for
./alert_$SID.log first. Where exactly is ./ ? Next it looks in another
directory defined in our PATH. Note how both attempts to access the
alert.log result in Err#2 ENOENT. However, in my bizarre example with TEMDEV
the first access does not produce an error, which implies that Oracle found
the file at ./ Is there some kind of logic in the code which says "if -e
./alert.log then skip_everything_else"?
-- Charles Schultz -- http://www.freelists.org/webpage/oracle-lReceived on Mon May 16 2011 - 14:06:19 CDT