ID:               26892
 User updated by:  tomy at envox dot hr
 Reported By:      tomy at envox dot hr
 Status:           Open
 Bug Type:         OCI8 related
 Operating System: Suse 8.2
 PHP Version:      4CVS-2004-01-13 (stable)
 New Comment:

config.log says:
"
...
configure:54726: checking for ncurses support
configure:55705: checking for Oracle-OCI8 support
configure:55750: checking Oracle Install-Dir
configure:56045: checking Oracle version
configure:56697: checking for OCIEnvNlsCreate in -lclntsh
configure:56716: gcc -o conftest -g -O2 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib
conftest.c -lclntsh  -lmysqlclient -lmcrypt -lltdl -lpng -lz -lz
-lresolv -lm -ldl -lnsl  -lxml2 -lz -lm -lxml2 -lz -lm -ldl -lm -lnsl
-lclntsh 1>&5
configure:56816: checking for OCINlsCharSetNameToId in -lclntsh
configure:56835: gcc -o conftest -g -O2 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib
conftest.c -lclntsh  -lmysqlclient -lmcrypt -lltdl -lpng -lz -lz
-lresolv -lm -ldl -lnsl  -lxml2 -lz -lm -lxml2 -lz -lm -ldl -lm -lnsl
-lclntsh 1>&5
configure:56971: checking for OCILobIsTemporary in -lclntsh
configure:56990: gcc -o conftest -g -O2 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib
conftest.c -lclntsh  -lmysqlclient -lmcrypt -lltdl -lpng -lz -lz
-lresolv -lm -ldl -lnsl  -lxml2 -lz -lm -lxml2 -lz -lm -ldl -lm -lnsl
-lclntsh 1>&5
configure:57266: checking for OCICollAssign in -lclntsh
configure:57285: gcc -o conftest -g -O2 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib 
-Wl,-rpath,/opt/oracle/product/9ir2/lib -L/opt/oracle/product/9ir2/lib
conftest.c -lclntsh  -lmysqlclient -lmcrypt -lltdl -lpng -lz -lz
-lresolv -lm -ldl -lnsl  -lxml2 -lz -lm -lxml2 -lz -lm -ldl -lm -lnsl
-lclntsh 1>&5
configure:57575: checking for Adabas support
...
"

I do not know how it should look like....

Makefile created has:
"
...
MYSQL_INCLUDE = -I/usr/include/mysql
OCI8_SHARED_LIBADD =
OCI8_DIR = /opt/oracle/product/9ir2
OCI8_VERSION = 9.2
PCRE_SHARED_LIBADD =
...
"

I checked via simple #ifdef and oci_debug wether
PHP_OCI8_HAVE_COLLECTIONS is defined and it was not.
So I defined it myself but it produces same error as before.....


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

[2004-01-14 07:36:21] [EMAIL PROTECTED]

PHP_OCI8_HAVE_COLLECTIONS should be defined in ./configure execution
process. you should not change its value manually.
./configure checks if there are appropriate functions in oracle client
and decides if there is possibility to turn on collection support.
so, check ./config.log, plz.
it seems, that there is no OCICollAssign function in your OCI version.
that's rather strange, 'cause I've tested it successfully with Oracle
9.2.0.1

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

[2004-01-14 04:31:19] tomy at envox dot hr

Downloaded http://snaps.php.net/php5-latest.tar.gz
and compiled.
Had to install mysql-develop packages and newer libxml2 packages (I had
to "borrow these from Suse 9.0 since there are no libxml2-2.5.10 for
Suse 8.2, only 2.5.3, hope this is ok).

After compiling and installing I got an error saying that there is no
function named ocinewcollection.
Revised the source in ext/oci8/oci8.c and noticed that
PHP_OCI8_HAVE_COLLECTIONS is note defined, so I defined it and compiled
again.

After that I got same error from the original bug report in slightly
different from. The result of ocinewcollection is still false :(.
Output follows
"
OCIDebug: _oci_open_server new conn=0
dname=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.41)(PORT=1521)))(CONNECT_DATA=(SID=pirana)(SERVER=DEDICATED)))
OCIDebug: _oci_open_session new sess=3 user=system
OCIDebug: oci_do_connect: id=4

Warning: ocinewcollection() [function.ocinewcollection]: OCITypeByName:
ORA-21301: not initialized in object mode in
/srv/www/htdocs/envox/info2.php on line 14
Collection failed
OCIDebug: START php_rshutdown_oci
OCIDebug: END php_rshutdown_oci
OCIDebug: START _oci_coll_list_dtor: 5
OCIDebug: END _oci_coll_list_dtor: 5
OCIDebug: START _oci_conn_list_dtor: id=4
OCIDebug: nothing to do..
OCIDebug: START _oci_close_session: logging-off sess=3
OCIDebug: END _oci_conn_list_dtor: id=4
"

So, yes, you can place this bug into 5CVS also .....
I can only mention once more that the last version that worked is
4.3.1. 4.3.2 introduced this bug and it exists ever since.....

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

[2004-01-13 13:50:07] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip



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

[2004-01-13 13:44:58] [EMAIL PROTECTED]

Please, try PHP5 latest snapshots and check if it works with them.

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

[2004-01-13 11:24:47] tomy at envox dot hr

Did some trial/error testing with earlier PHP versions and
found out that this problem does not exist with version 4.3.1, appears
in version 4.3.2 and exists ever since...
It is even possible to bypass it by copying 4.3.1 oci extension source
to latest CVS snapshot and then the problem does not exist anymore.
Also it seems, although I cannot confirm that with 100% certainity,
that it only exists if 9.2 client is used by php. It seems that 8.0
client is not affected.
Hope this helps.

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

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/26892

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

Reply via email to