#32325 [Fbk-Opn]: Can't retrieve collection using OCI8

2005-04-12 Thread ldixon at communityconnect dot com
 ID:   32325
 User updated by:  ldixon at communityconnect dot com
 Reported By:  ldixon at communityconnect dot com
-Status:   Feedback
+Status:   Open
 Bug Type: OCI8 related
 Operating System: Fedora Core release 2 (Tettnang)
 PHP Version:  5.0.3
 New Comment:

[ldixon: ~/download/php5-200503221330]$ gdb sapi/cli/php
GNU gdb Red Hat Linux (6.0post-0.20040223.19rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for
details.
This GDB was configured as i386-redhat-linux-gnu...Using host
libthread_db library /lib/tls/libthread_db.so.1.
 
(gdb) run /home/ldixon/devel/ctk/collections/coll_test_pure_pure.php
Starting program: /home/ldixon/download/php5-200503221330/sapi/cli/php
/home/ldixon/devel/ctk/collections/coll_test_pure_pure.php
[Thread debugging using libthread_db enabled]
[New Thread -1208073568 (LWP 17322)]
Detaching after fork from child process 17325.
OCIDebug: _oci_open_server new conn=0 dname=br /
OCIDebug: _oci_open_session new sess=5 user=ctk_mainbr /
OCIDebug: oci_do_connect: id=6br /
OCIDebug: oci_parse 
begin
select ut_num_list_t(1,2,3,4) into :list from dual;
end; id=7 conn=6br /
about to execute...
kgepop: no error frame to pop to for error 21522
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
Errors in file :
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
 
 
- Call Stack Trace -
Cannot open /proc/17322/exe.
calling  call entryargument values in
hex
location type point(? means dubious
value)
  

Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
Cannot find symbol in /proc/17322/exe.
 
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1208073568 (LWP 17322)]
0x0144fc08 in slrac () from
/opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
(gdb) bt
#0  0x0144fc08 in slrac ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#1  0x014a2d33 in kgdsaaddr ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#2  0x014a27ae in kgdsdst ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#3  0x0107a60c in skgudmp ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#4  0x014849be in kgepop ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#5  0x0148513a in kgesev ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#6  0x01484f3f in kgesec0 ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#7  0x0131ca90 in kodogr2lt ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#8  0x012a72bc in kosindcv ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#9  0x012a6d36 in kosiend ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#10 0x012a8115 in kpctor ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#11 0x012bd5fa in ttca2p ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#12 0x0128a850 in ttcacr ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#13 0x0128b723 in ttcdrv ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#14 0x0115c8e9 in nioqwa ()
   from /opt/oracle/product/10.1.0.3/lib/libclntsh.so.10.1
#15 0x00fe0b56 in upirtrc ()
   from /opt/oracle/product/10.1.0.3/lib

#32325 [Fbk-Opn]: Can't retrieve collection using OCI8

2005-03-18 Thread ldixon at communityconnect dot com
 ID:   32325
 User updated by:  ldixon at communityconnect dot com
 Reported By:  ldixon at communityconnect dot com
-Status:   Feedback
+Status:   Open
 Bug Type: OCI8 related
 Operating System: Fedora Core release 2 (Tettnang)
 PHP Version:  5.0.3
 New Comment:

I tried the using the source from the link you provided, and I get the
same error (at the execute call).  I left the stack trace out for
brevity:

[ldixon: ~/download/php5-200503181730]$ sapi/cli/php
/home/ldixon/devel/ctk/collections/coll_test_pure_pure.php
OCIDebug: _oci_open_server new conn=0 dname=br /
OCIDebug: _oci_open_session new sess=5 user=ctk_mainbr /
OCIDebug: oci_do_connect: id=6br /
OCIDebug: oci_parse 
begin
select ut_num_list_t(1,2,3,4) into :list from dual;
end; id=7 conn=6br /
about to execute...
kgepop: no error frame to pop to for error 21522
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
Errors in file :
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)


Previous Comments:


[2005-03-18 19:25:46] [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





[2005-03-15 20:42:06] ldixon at communityconnect dot com

Description:

SYS INFO

kernel: 2.6.10-1.14_FC2 #1
httpd:  apache2
Oracle:
SQL select * from v$version;
 
BANNER

Oracle Database 10g Release 10.1.0.3.0 - Production
PL/SQL Release 10.1.0.3.0 - Production
CORE10.1.0.3.0  Production
TNS for Linux: Version 10.1.0.3.0 - Production
NLSRTL Version 10.1.0.3.0 - Production

I can create a collection and pass it to oracle fine, but it crashes
everytime I try to read one.  I've tried several variations (select
from a nested table directly, bind :list  to and out param of a stored
proc, etc).  They all fail in the same way.



Reproduce code:
---
#!/usr/local/bin/php
?php
 
/*
create or replace type ut_num_list_t as table of number;
*/
 
$conn = oci_connect(ctk_main, ctk_main);
 
$sql  = 
begin
select ut_num_list_t(1,2,3,4) into :list from dual;
end;;
 
$stmt = oci_parse($conn, $sql);
 
$collection = oci_new_collection($conn, UT_NUM_LIST_T);
 
oci_bind_by_name($stmt, :list,  $collection, -1, OCI_B_NTY);
 
oci_execute($stmt);
?

Expected result:

I expect to be able to access the elements of $collection using
$collection-getElem(1), etc.

Actual result:
--
$ ./coll_test.php
kgepop: no error frame to pop to for error 21522
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
Errors in file :
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
 
 
- Call Stack Trace -
Cannot open /proc/4283/exe.
calling  call entryargument values in
hex
location type point(? means dubious
value)
  

Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
0107A607 CALL 00EAF428 107A536 ? 0 ?
8408FFC ?
   BFFF773C ? 14849BE
?
   8408FFC ?
014849BC CALLr 0 ? BFFF775C ?
01485135 CALL

#32325 [NEW]: Can't retrieve collection using OCI8

2005-03-15 Thread ldixon at communityconnect dot com
From: ldixon at communityconnect dot com
Operating system: Fedora Core release 2 (Tettnang)
PHP version:  5.0.3
PHP Bug Type: OCI8 related
Bug description:  Can't retrieve collection using OCI8

Description:

SYS INFO

kernel: 2.6.10-1.14_FC2 #1
httpd:  apache2
Oracle:
SQL select * from v$version;
 
BANNER

Oracle Database 10g Release 10.1.0.3.0 - Production
PL/SQL Release 10.1.0.3.0 - Production
CORE10.1.0.3.0  Production
TNS for Linux: Version 10.1.0.3.0 - Production
NLSRTL Version 10.1.0.3.0 - Production

I can create a collection and pass it to oracle fine, but it crashes
everytime I try to read one.  I've tried several variations (select from a
nested table directly, bind :list  to and out param of a stored proc, etc).
 They all fail in the same way.



Reproduce code:
---
#!/usr/local/bin/php
?php
 
/*
create or replace type ut_num_list_t as table of number;
*/
 
$conn = oci_connect(ctk_main, ctk_main);
 
$sql  = 
begin
select ut_num_list_t(1,2,3,4) into :list from dual;
end;;
 
$stmt = oci_parse($conn, $sql);
 
$collection = oci_new_collection($conn, UT_NUM_LIST_T);
 
oci_bind_by_name($stmt, :list,  $collection, -1, OCI_B_NTY);
 
oci_execute($stmt);
?

Expected result:

I expect to be able to access the elements of $collection using
$collection-getElem(1), etc.

Actual result:
--
$ ./coll_test.php
kgepop: no error frame to pop to for error 21522
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
Errors in file :
OCI-21522: attempted to use an invalid connection in OCI (object mode
only)
 
 
- Call Stack Trace -
Cannot open /proc/4283/exe.
calling  call entryargument values in hex
location type point(? means dubious
value)
  

Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
Cannot find symbol in /proc/4283/exe.
0107A607 CALL 00EAF428 107A536 ? 0 ? 8408FFC
?
   BFFF773C ? 14849BE ?
   8408FFC ?
014849BC CALLr 0 ? BFFF775C ?
01485135 CALL 014848DE BFFF777C ? 1484F3F ?
   8408FFC ?
01484F3A CALL 00E9BEC8 BFFF77C4 ? 131CA90 ?
   8408FFC ? 840D2A4 ?
5412 ?
0131CA8B CALL 00EADF18 84ACADC ? 0 ? 84C0A50
?
012A72B7 CALL 00E996E8 17EDF84 ? 84C062C ?
84670B4 ?   17EDF84 ?
84C062C ? 84670B4 ?012A6D31 CALL 012A708C
8408FFC ? 84670B4 ? 84BFE10 ? 
 8469374 ? BFFF796C ?
   12A8115 ?
012A8113 CALLr 0 ? 0 ?
012BD5F5 CALL 00EB1BC8 18B0BFC ? 84ACB08 ? 0 ?
0 ?
   0 ? 0 ?
0128A84D CALLr 84692EC ? 84ACBE0 ? 0 ?
0 ?
   0 ? 0 ?
0128B71E CALL 00EA7F68 84ACDA8 ? 1 ? BFFF8194
? 0 ?
   B7D13010 ? ADD760 ?
0115C8E7 CALLr 8467158 ? 0 ?
00FE0B53