php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #28224 ghost processes <defunct> appearing after correct oracle login - logout
Submitted: 2004-04-30 00:14 UTC Modified: 2004-10-10 09:16 UTC
Votes:6
Avg. Score:3.2 ± 1.7
Reproduced:2 of 2 (100.0%)
Same Version:1 (50.0%)
Same OS:1 (50.0%)
From: michel02 at hotmail dot com Assigned:
Status: Wont fix Package: Oracle related
PHP Version: 4.3.6 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: michel02 at hotmail dot com
New email:
PHP Version: OS:

 

 [2004-04-30 00:14 UTC] michel02 at hotmail dot com
Description:
------------
When connecting/disconnecting to oracle with each (successfull) ora_logon session after decent logoff an additional ghost process called <defunct> will appear. After serving several pages these processes will appear in huge numbers. Only after Apache shutdown these processes are dissapearing.

PHP is compiled with:

LD_LIBRARY_PATH=/usr/local/lib:/usr/local/ssl/lib

./configure --prefix=/usr/local/php-4_3_6 --with-apxs2=/export/home/local/apache_2_0_48/bin/apxs --with-
oracle=/export/home/oracle/product/7.3.4 --with-openssl=/usr/local/ssl --enable-ftp --enable-sigchild

OS: Sun Solaris 2.7
ORACLE version = 7.3.4
PHP version = 4.3.6
Apache version 2.0.48

When using PHP3 these ghost processes are not appearing is not the case. Is there a solution? Maybe it is a bug of php4?

Reproduce code:
---------------
<?php
// ORACLE Login
function Login() {
    $oracle_conn = ora_logon('oracle_username', 'oracle_passwd');
    if(!$oracle_conn) { Error("Can't connect to database."); }
    ora_commitoff($oracle_conn);
    $oracle_curs = ora_open($oracle_conn);
}

// ORACLE Logout
function Logout() {
    if ($oracle_conn) ora_logoff($oracle_conn);
    if ($oracle_curs) ora_close($oracle_curs);
}
Login();
Logout();
?>

Expected result:
----------------
a normal login and logout to oracle, no additional ghost processes appear in the ps -ef|grep defunct list.

Actual result:
--------------
each time code is run a new <defunct> ghost process is started: ps -ef|grep def
    root   419   406  0                   0:00 <defunct>
  oracle 27661 27579  0                   0:00 <defunct>
  oracle 27595 27579  0                   0:00 <defunct>
  oracle 27663 27579  0                   0:00 <defunct>
  oracle 27659 27579  0                   0:00 <defunct>
    root 27672   718  0 00:09:04 pts/1    0:00 grep def
  oracle 27670 27579  0                   0:00 <defunct>
  oracle 27662 27579  0                   0:00 <defunct>
  oracle 27669 27579  0                   0:00 <defunct>
  oracle 27660 27579  0                   0:00 <defunct>
  oracle 27584 27579  0                   0:00 <defunct>
  oracle 27668 27579  0                   0:00 <defunct>
  oracle 27585 27579  0                   0:00 <defunct>
etc., etc..

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2004-10-10 09:16 UTC] tony2001@php.net
ora module is outdated and is not maintained anymore.
Use OCI8 module instead. 
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Sun Jan 05 00:01:29 2025 UTC