I am unit testing a bunch of scripts that normally run off the UNIX cron. Luckily they output their status to a log file. However the log keeps saying I have an SP2-0750 error. The text of this error is "You may need to set ORACLE_HOME to your Oracle Software directory."

Well I set my ORACLE_HOME. I can run SQL*Plus fine from the command line. Then I thought maybe the process I am spawning to run the scripts is not inheriting my environment variables. Nope. That can't be right.

Finally I try running the script in a different way. I make sure any changes the scripts make get reflected in my own parent environment. Wouldn't you know it? Somebody is resetting my ORACLE_HOME to an invalid directory. Further investigation shows that the scripts initially source a profile that has the wrong ORACLE_HOME.

I knew a little bit about what was going on. However all signs were pointing in the wrong direction. It took a high level of debugging skills, coupled with a lot of test time to figure this one out. I get the feeling that I am going to be having a great challenge testing out these scripts.