#37706 [Opn->Bgs]: OCI-Lob read advances wrong internal pointer

From: Date: Mon, 05 Jun 2006 22:21:38 +0000
Subject: #37706 [Opn->Bgs]: OCI-Lob read advances wrong internal pointer
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-98062@lists.php.net to get a copy of this message
ID: 37706 Updated by: tony2001@php.net Reported By: crescentfreshpot at yahoo dot com -Status: Open +Status: Bogus Bug Type: OCI8 related Operating System: Win XP PHP Version: 5CVS-2006-06-05 (snap) New Comment: $row1[0] and $row2[0] are different variables pointing to the same LOB descriptor. This is how it works and it's expected. Previous Comments: ------------------------------------------------------------------------ [2006-06-05 22:18:18] crescentfreshpot at yahoo dot com Description: ------------ I think OCI-Lob::read() is reading from the wrong handle when called multiple times on different lob descriptors. Reproduce code: --------------- sql: create table lobtest (lobdata clob); insert into lobtest (lobdata) values('data data data data data data data data'); insert into lobtest (lobdata) values('data2 data2 data2 data2 data2 data2 data2 data2'); commit; php: $conn = oci_connect('xxx','yyy','zzz'); $stmt = oci_parse($conn, "select lobdata from lobtest"); oci_execute($stmt); $row1 = oci_fetch_array($stmt, OCI_NUM); $row2 = oci_fetch_array($stmt, OCI_NUM); var_dump($row1[0]->tell()); var_dump($row1[0]->read(8192)); var_dump($row2[0]->tell()); var_dump($row2[0]->read(8192)); Expected result: ---------------- int(0) string(39) "data data data data data data data data" int(0) string(0) "data2 data2 data2 data2 data2 data2 data2 data2" Actual result: -------------- int(0) string(39) "data data data data data data data data" int(39) string(0) "" ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=37706&edit=1

« previous php.bugs (#98062) next »