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