Edit report at https://bugs.php.net/bug.php?id=49803&edit=1

 ID:                 49803
 Updated by:         s...@php.net
 Reported by:        stronk7 at moodle dot org
 Summary:            OCI statement cache causes ORA-01007
-Status:             Assigned
+Status:             Suspended
 Type:               Bug
 Package:            OCI8 related
 Operating System:   MacOS X (any)
 PHP Version:        5.2.11
 Assigned To:        sixd
 Block user comment: N
 Private report:     N

 New Comment:

I've logged an Oracle enhancement (#13366134) so this request can be better 
tracked by Oracle's normal enhancement process.


Previous Comments:
------------------------------------------------------------------------
[2010-01-06 19:42:18] s...@php.net

Doh.  I've got it.

------------------------------------------------------------------------
[2010-01-06 19:40:49] s...@php.net

What's the testcase?

------------------------------------------------------------------------
[2009-10-07 16:29:46] stronk7 at moodle dot org

Description:
------------
Under certain circumstances (multiple DDL creation) OCI client statement 
cache causes ORA-01007: variable not in select list error in simple 
queries against those tables. Only disabling the cache ( 
oci8.statement_cache_size = 0 in php.ini, from default 20) alleviates 
the problem. Running with cache disabled has a big impact in oci 
performance.

It should be some explicit way to clean the cache from php oci or the 
driver itself should be "clever enough" to clean it when DDL statements 
are executed.

Reproduce code:
---------------
http://tracker.moodle.org/secure/attachment/18556/testing_oci_stmt_cache_pureoci.php

Expected result:
----------------
TESTING MOODLE 2.0 OCI DRIVER WITH oci8.statement_cache_size = 0 (from 
php.ini)
Created table unit_table (id, course, name). Ok
Selected 0 records from table. Ok
Dropped table unit_table (id, course, name). Ok
Created table unit_table (id, course). Ok
Selected 0 records from table. Ok
Dropped table unit_table (id, course). Ok

Actual result:
--------------
TESTING MOODLE 2.0 OCI DRIVER WITH oci8.statement_cache_size = 20 (from 
php.ini)
Created table unit_table (id, course, name). Ok
Selected 0 records from table. Ok
Dropped table unit_table (id, course, name). Ok
Created table unit_table (id, course). Ok
Error selecting records from table!!
ORA-01007: variable not in select list
Dropped table unit_table (id, course). Ok


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



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

Reply via email to