go to bug id or search bugs for
In oci_statement.c both calls to OCIStmtRelease() pass the OCI_STRLS_CACHE_DELETE flag. This means the statement cache (configure d with oci8.statement_cache_size) is flushed. There should be no reason to flush the cache at these points.
The fix is to change both OCI_STRLS_CACHE_DELETE flags to OCI_DEFAULT.
With this change even a simple script repeating one statement in a loop proves Oracle is able to use the cache, reducing the number of times the statement is parsed by the DB.
The change will also benefit users of persistent connections.
Add a Patch
Add a Pull Request
This bug has been fixed in CVS.
Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
Thank you for the report, and for helping us make PHP better.