From: dbaffaleuf at ixis-cib dot com Operating system: Linux 2.6.9-22 RedHat AMD64 PHP version: 4.4.2RC2 PHP Bug Type: Sybase-ct (ctlib) related Bug description: sybase_query() fails on AMD64
Description: ------------ Acutally I have the problem both in PHP 4.4.1 and 4.4.2RC3 Always returns a correct resource id for the handler, but FALSE for the query (see the following code) The Sybase OpenClient warning code suggest an overflow in the CS_DATAFMT.maxlength C struct. When returning, the datalength is sized whether the type is CS_NUMERIC, CS_MONEY, etc... in the php_sybase_fetch_result_set() fonction (src: php_sybase_ct.c). Works fine in DB-LIB. The configure : ./configure \ --prefix=/msmorzine/sgbd/contrib/src/php4-STABLE-200601091335/MKTEST \ --with-sybase-ct=/msmorzine/sgbd/MX_MT_MSMORZINE/ASE1253/OCS-12_5/devlib \ --enable-static=sybase-ct \ --with-config-file-path=/msmorzine/sgbd/contrib/src/php4-STABLE-200601091335/MKTEST \ --with-apxs2=/msmorzine/sgbd/contrib/bin/apxs \ --with-gd=/msmorzine/sgbd/contrib/ \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm Reproduce code: --------------- The following code: $STR = "select name from syslogins"; $DBH = @sybase_connect("MX_MT_MSMORZINE","sa", "mypassword"); $QUERY = sybase_query($STR,$DBH); var_dump($DBH); var_dump($QUERY); while($row = sybase_fetch_row($QUERY)) { while(list($k, $v) = each($row)) { echo "\$row[$k] => $v\n"; } } Expected result: ---------------- int(4) int(5) $row[0] => probe $row[0] => sa Actual result: -------------- "Warning: sybase_query(): Sybase: Client message: (): user api layer: internal common library error: The bind of result set item 1 resulted in truncation. (severity 116) in /msmorzine/sgbd/contrib/src/php4-STABLE-200601091335/MKTEST/bin/test_sybase_ct.php on line 5 resource(4) of type (sybase-ct link) bool(false)". -- Edit bug report at http://bugs.php.net/?id=35945&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=35945&r=trysnapshot44 Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=35945&r=trysnapshot51 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=35945&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=35945&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=35945&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=35945&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=35945&r=needscript Try newer version: http://bugs.php.net/fix.php?id=35945&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=35945&r=support Expected behavior: http://bugs.php.net/fix.php?id=35945&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=35945&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=35945&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=35945&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=35945&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=35945&r=dst IIS Stability: http://bugs.php.net/fix.php?id=35945&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=35945&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=35945&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=35945&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=35945&r=mysqlcfg