I'm using Perl with DBI in a CGi program, which opens a conexion with an
Oracle server 7.3.4. I use the most recent versions of DBI and Oracle DBD.
The web server and Oracle server run on different machines, both under Sun
Sparc Solaris.
After some executions of this CGI, the listener on Oracle server machine
goes down.
For a while, other clients that was connected to the Oracle server can still
access it, althought it is not possible to stabilish new connections to
Oracle.
After some more time, the dabase stops definitivelly and needs to be restarted.
The CGI basically opens an Oracle connection and fetchs 2 SELECT's. The
second query reads from a LONGRAW column. The Perl code is simple and an
overview can be presented here like follows:
$v_dbh = DBI->connect("dbi:Oracle:$v_server", $v_username, $v_password,
{ PrintError => 0, RaiseError => 0, AutoCommit
=> 0 })
or &html_erro;
$v_sql1 = 'select count(numero) ' . " ... ";
$v_count = $v_dbh->selectrow_array($v_sql1, {RaiseError => 1});
$v_dbh->{LongReadLen} = 128 * 1024;
$v_dbh->{LongTruncOk} = 1;
$v_sth = $v_dbh->prepare($v_sql2);
$v_sth->execute();
while (... $v_sth->fetchrow_array)
...
$v_sth->finish;
$v_dbh->disconnect;
I'd like to know if somebody knows about pitfalls and problematic situations
related to DBI, Oracle server 7.3.4, or in the stablishment of various quick
and simultaneos connections to Oracle (as occurs with the typical use of
this CGI), which can be result in a listener crash.
The only error detected is just AFTER the listener crash, obviously a TNS
error.
Any clues?
Thanks in advance,
Giovanni -- Brazil
[EMAIL PROTECTED]
________________________________________
Quer saber tudo sobre os bastidores da fama ? Dirce conta aqui o que todo mundo vai
saber depois. Veja agora: http://www.dirce.com.br