perl script querying a oracle 10g DATABASE

  We've recently upgraded to oracle 10G Release 2.

When browsing a  web page that executes a perl script in the backend, it fails with a oracle error ora-03113 end of file on communication channel throws that error to the apache logs and crashes....the server is running perl 5.8.5 with DBD-Oracle was running fine when we had oracle 9i running...

execute error: ORA-03113: end-of-file on communication channel (DBD ERROR:
OCIStmtExecute) (DBD ERROR:
    <- DESTROY= undef during global destruction

can someone advice?

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

trance12Author Commented:
It fails on a read query selecting from a table...however if i run that same query in sqlplus, it works fine..
can ypu please post the corresponding perl command
The DBD::Oracle module has a newer version: 1.22.  You could try upgrading to the latest version.
Rowby Goren Makes an Impact on Screen and Online

Learn about longtime user Rowby Goren and his great contributions to the site. We explore his method for posing questions that are likely to yield a solution, and take a look at how his career transformed from a Hollywood writer to a website entrepreneur.

trance12Author Commented:
This is the exact error

[Mon Nov 17 16:25:21 2008] null: DBD::Oracle::db DESTROY failed: ORA-03113: end-of-file on communication channel (DBD ERROR: OCITransRollback) during global destruction.

The error happens at random...however once we restart apache, the error does not appear for a few hours and then all of a sudeen it starts again...

i've checked memory stats etc on the server and it looks fine..

trance12Author Commented:
That error is what writes to the apache logs...

On the web page though, it throws this error

Can't call method "execute" on an undefined value at /usr/local/apache/htdocs/resell/index.cgi line 26.

which is this query

my $sql = "SELECT product_id, header_link,footer_link, middle_page_link FROM  reseller WHERE  reseller_id = '$resell'";

my $sth = $WAP::lda->prepare($sql);

The error on the webpage indicates that $WAP::lda is note defined.  How is this created?

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
my $sql = 'SELECT product_id, header_link,footer_link, middle_page_link FROM  reseller WHERE  reseller_id = ?';
my $sth = $WAP::lda-->prepare($sql);

# assuming that $ WAP::lda is correct
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.