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
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: Oliver dot Reiniger at promatis dot de
New email:
PHP Version: OS:

 

 [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

Pull Requests

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: Sun Dec 22 10:01:28 2024 UTC