ID:               36764
 Updated by:       [EMAIL PROTECTED]
 Reported By:      mauroi at digbang dot com
-Status:           Open
+Status:           Closed
 Bug Type:         PDO related
 Operating System: Win XP SP2
 PHP Version:      5CVS-2006-03-16 (snap)
 New Comment:

Thanks for the patch, applied.
But it will be used only if the client library supports those types
(i.e. version >= 10.x).


Previous Comments:
------------------------------------------------------------------------

[2006-03-18 22:40:49] mauroi at digbang dot com

Oracle server is working (thank god :o) ).
But I'm terribly sorry I made a mistake and forgot to deactivate the
user_error_handler. So this is the warning I get on Linux:
"PDOStatement::fetch() [function.fetch]: column 0 data was too large
for buffer and was truncated to fit it
  at PDOStatement->fetch in [...]temp.php:6"
On windows, as I said, it hangs.

I changed pdo_oci/oci_statement.c with the following patch, and it
seems to work:
http://webmail.digbang.com/patch_binary_float.txt

Thanks in advance.

------------------------------------------------------------------------

[2006-03-18 21:55:09] [EMAIL PROTECTED]

>gdb only shows  "Detaching after fork from child process xxxx".
Please try to run the script with PHP CLI binary.
And check the server - maybe the problem is that Oracle _server_
crashes?

------------------------------------------------------------------------

[2006-03-18 21:52:03] mauroi at digbang dot com

Well, I tried to generate a backtrace but there's no real crash here.
On windows it hangs, on linux the script doesn't finish (it stops after
the fetch, but with no segfault). gdb only shows  "Detaching after fork
from child process xxxx".
Is there anything else I can do?
(I can use another datatype. Maybe you could wait for someone that
can't live without binary_float).

Thanks....

------------------------------------------------------------------------

[2006-03-18 21:13:03] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.

All I get is:
array(2) {
  ["FIELD"]=>
  string(4) "1.0E"
  [0]=>
  string(4) "1.0E"
}
(I did "insert into foo values (1)")

------------------------------------------------------------------------

[2006-03-18 20:54:55] mauroi at digbang dot com

I'm using oracle instant client (on windows), and oracle 10R2 on linux
also.
I tried this script on linux (centos4, same machine):

$conn = new PDO('oci:dbname= :o)', 'user', 'pass');
$a = $conn->prepare('SELECT * FROM foo');
var_dump($a->execute());
echo 'aa';
var_dump($a->fetch());
echo 'bb';

and got this:

"bool(true) aa"
(row information and bb missing)

I don't get anything wrong in the error_log. Just the usual line in the
access_log.
Did you insert data on the table? With an empty table it doesn't
happen.

Thank you.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/36764

-- 
Edit this bug report at http://bugs.php.net/?id=36764&edit=1

Reply via email to