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