|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-09-27 20:33 UTC] sixd@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 03 07:00:01 2025 UTC |
Description: ------------ Sorry for selecting PHP version that we don't have but only on that way I could send you this bug. Reason for that is that it is very difficultu at this point to change version but if you confirm me that that is the only way to solve this problem than we will do it. We use Oracle 9.2.1.6, PHP 5.0.4. In query we call stored procedure that returns xml. Problem is that when I call some query that take some time to execute (for example 2 minutes) php create one connection to oracle that is active. When other users try to call some other query php don't create new connection and wait until first procedure (or query) is done. I try to make several connections with oci_new_connect and it only work when connections are inactive, when I have some connection that is active it wait's until that connection is released. Thanks! Reproduce code: --------------- function get_xml() { $obj_dbms = new dbms_oracle(); $cnnID = $obj_dbms->database_connect(); $out_xml = OCINewDescriptor($cnnID, OCI_D_LOB); $stored_proc = OCIParse($cnnID,$query); oci_bind_by_name($stored_proc, ":out_xml", $out_xml, -1, OCI_B_CLOB); OCIExecute($stored_proc); $obj_dbms->database_disconnect($cnnID); } class dbms_oracle { function database_connect() { $cnnID = oci_new_connect($username,$password,$database); return $cnnID; } Expected result: ---------------- I expect that many users can execute function get_xml() regardless if some of them call procedure that take some time or not. Now if some call procedure of that type others can't work.