From:             iolaire dot mckinnon at vcint dot com
Operating system: RedHat Linux 9
PHP version:      4.3.3
PHP Bug Type:     OCI8 related
Bug description:  Valid select using OCI8 causes integer overflow error in Oracle

Description:
------------
I'm using Redhat 9, connecting to a Oracle 8.7.1 db. I have the following
PHP configuration:
 './configure' '--with-iodbc' '--with-mssql=/usr/local'
'--sysconfdir=/etc' '--with-mysql' '--with-layout=GNU' '--with-gettext'
'--with-apxs2=/usr/local/apache2/bin/apxs' '--with-config-file-path=/etc/'
'--enable-ftp' '--enable-memory-limit' '--enable-xslt'
'--with-xslt-sablot' '--with-oracle=/store/OraHome1'
'--with-oci8=/store/OraHome1'

I connect successfully to the db using OCI8, but when I perform any
select, I get an "ORA-03120: two-task conversion routine: integer
overflow" error. This occurs even if I am only selecting one row. I can
successfully select using the same query with the standard Oracle
interface, and with SQLPlus. I also had this problem with php-4.3.2.


Reproduce code:
---------------
putenv("ORACLE_SID=REP");
putenv("ORACLE_HOME=/store/OraHome1");
putenv("TNS_ADMIN=/store/tnsnames.ora");
OCIInternalDebug(1);
$username = "MCKINNONI";
$passwd = "xxxxxxx";
$db="(DESCRIPTION=
          (ADDRESS_LIST=
            (ADDRESS=
              (PROTOCOL=TCP)
              (HOST=xxxx)(PORT=1521)
            )
          )
           (CONNECT_DATA=(SERVICE_NAME=REP))
     )";
$conn = OCILogon($username,$passwd,$db);
$stmt = ociparse($conn,"select EMAIL from SpinroomEmailAddresses where
EMAIL = '[EMAIL PROTECTED]
int.com'");
ociexecute($stmt);
while (ocifetch($stmt))
   echo "[".ociresult($stmt,"EMAIL")."]\n";



Expected result:
----------------
[EMAIL PROTECTED]

Actual result:
--------------
OCIDebug: _oci_open_server new conn=0 dname=(DESCRIPTION=
          (ADDRESS_LIST=
            (ADDRESS=
              (PROTOCOL=TCP)
              (HOST=xxxx)(PORT=1521)
            )
          )
           (CONNECT_DATA=(SERVICE_NAME=REP))
     )<br />
OCIDebug: _oci_open_session new sess=5 user=MCKINNONI<br />
OCIDebug: oci_do_connect: id=6<br />
OCIDebug: oci_parse "select EMAIL from SpinroomEmailAddresses where EMAIL
= '[EMAIL PROTECTED]'" id=7 conn=6<br />

Warning: ociexecute(): OCIStmtExecute: ORA-03120: two-task conversion
routine: integer overflow
 in /var/www/html/oracletest2.php on line 21
OCIDebug: START php_rshutdown_oci<br />
OCIDebug: END   php_rshutdown_oci<br />


-- 
Edit bug report at http://bugs.php.net/?id=25818&edit=1
-- 
Try a CVS snapshot (php4):  http://bugs.php.net/fix.php?id=25818&r=trysnapshot4
Try a CVS snapshot (php5):  http://bugs.php.net/fix.php?id=25818&r=trysnapshot5
Fixed in CVS:               http://bugs.php.net/fix.php?id=25818&r=fixedcvs
Fixed in release:           http://bugs.php.net/fix.php?id=25818&r=alreadyfixed
Need backtrace:             http://bugs.php.net/fix.php?id=25818&r=needtrace
Try newer version:          http://bugs.php.net/fix.php?id=25818&r=oldversion
Not developer issue:        http://bugs.php.net/fix.php?id=25818&r=support
Expected behavior:          http://bugs.php.net/fix.php?id=25818&r=notwrong
Not enough info:            http://bugs.php.net/fix.php?id=25818&r=notenoughinfo
Submitted twice:            http://bugs.php.net/fix.php?id=25818&r=submittedtwice
register_globals:           http://bugs.php.net/fix.php?id=25818&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=25818&r=php3
Daylight Savings:           http://bugs.php.net/fix.php?id=25818&r=dst
IIS Stability:              http://bugs.php.net/fix.php?id=25818&r=isapi
Install GNU Sed:            http://bugs.php.net/fix.php?id=25818&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=25818&r=float

Reply via email to