php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #5871 Connection gets lost
Submitted: 2000-07-31 13:57 UTC Modified: 2000-07-31 14:05 UTC
From: Oliver dot Reiniger at promatis dot de Assigned:
Status: Closed Package: Other
PHP Version: 4.0.1pl2 OS: Sun Solaris 2.7
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem:
7 + 24 = ?
Subscribe to this entry?

 
 [2000-07-31 13:57 UTC] Oliver dot Reiniger at promatis dot de
Using the script given below once a second, everything is working fine, but when we simulate a high load on the server (pressing the reload-button as often as possible) connection to ORACLE breaks up. PHP says: Error on OCIExcute (ORA-03114) you are not longer connected to ORACLE. 

Examining the error-log of Apache I've found another ORACLE Error: failed to rollback outstanding transactions!: ORA-12571: TNS:packet writer failure.

Trace-Files of ORACLE-Database give no hint.

When the error occurs the script cannot be executed any more. Restarting Apache the script is executed but the error is reproducable. Rebooting the whole box, the error cannot be reproduced for about two or three days uptime, but comes back afterwards.

Avoiding the PHPLIB-Objects using a plain script with OCILogon, OCIParse, OCIExecute, OCIFetch, OCILogoff seems to be stable but perhaps it's just using less execution time and space on the server (cannot rely on that).

This is what we're using:
- Apache/1.3.12 (Unix) ApacheJServ/1.1.2 PHP/4.0.1pl2 PHPLib 7.2c
- Skript:
 -------------------------------------8<----------------------------------------------------------------
<?php

/*
 * PROMATIS AG O.Reiniger, 26.07.2000
 *
 */

//
// Include necessary PHP-Library
//  
include("db_oci8.inc");
 
//
// Define a new DB-Connection-Class using PHP_LIB
//
class OO_DB_Connect extends DB_Sql {
  var $ClassName = "OO_DB_Connect"; 
  var $Database  = "ORCL";
  var $User      = "scott";
  var $Password  = "tiger";

}
 
//
// Instanciate Object of DB-Connection-Clss
// (connect should be done now)
//
$q = new OO_DB_Connect;

//
// Execute Query
//
$query = "Select bezeichnung from rubriken";
$q->query($query);

//
// Fetch the results and print a table containing it's content
//
 
echo "<TABLE>";
echo "<TR>";

$j = 0;
while ($q->next_record()) {
   $j ++;
   if(($j % 10) == 0) {
     echo "</TR>";
     echo "<TR>";
   }
   echo "<TD>";
   echo $q->f("bezeichnung");
   echo "</TD>";
}

echo "</TR>";
echo "</TABLE>";
 
?>
------------------------------------------------------------>8----------------------------------------------------------------

+ PHP-Config:
---------------------------------------------------------8<-------------------------------------------------------------------
./configure' '--prefix=/data/php4'
                                                       '--with-apxs=/data/apache_bms2/bin/apxs'
                                                       '--with-oci8=/ora8/app/oracle/product/8.1.6/' '--enable-trans-sid'
                                                       '--with-xml'
------------------------------------------------------------>8----------------------------------------------------------------
+ ORACLE 8.1.6 Enterprise Edition
+ OCI        8.1.0.0.0


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2000-07-31 14:05 UTC] waldschrott@php.net
this is not the right place to ask PHPLIB questions, place
contact the adequate PHPLIB forum/list/...
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Mar 19 08:01:29 2024 UTC