]> granicus.if.org Git - php/commit
Updated OCI8 driver
authorAntony Dovgal <tony2001@php.net>
Tue, 6 Sep 2005 19:31:59 +0000 (19:31 +0000)
committerAntony Dovgal <tony2001@php.net>
Tue, 6 Sep 2005 19:31:59 +0000 (19:31 +0000)
commit3df94e11125a5001984ef1d6209fbd21162b9d10
tree4ce9e48f1f1dd55e5dc308b157e15c31056813c9
parent8774e8e1aac1240bb11e7808f038b29fa6faaa94
Updated OCI8 driver

This updated fixes (this list is not complete):
-------------------
#33915 - crash in _oci_close_session
#26393 - Segfault during request shutdown in _oci_close_session() (oci8.c:2443)

#32741 - hang on ociexecute() with collections (only with 10g, works with 9i)
#32325 - can't retrieve collection using OCI8
#33583 - Apache1.3.33 Segmentation fault with php5 & OCI_New_Collection

#32361 - connection oci_connect stay persist after process the php
#29013 - multiple logins cause handles become invalid
#28944 - OCITypeByName: OCI-21522 with two connections

Fixed by connection handling rewrite.

#32140 - NVARCHAR columns are truncated
#31042 - oci_fetch_* sets field value to false
#27156 - OCIFetchInto returns false as column value when column contains >1 umlaut

Fixed by multiplying buffer size by 3.

#33866 - OCIlogon do not returns conn resource for account with expired paswd
#33365 - logon fails when password expires

Fixed by adding new oci_password_change() call syntax.

#33159 - DB-connect via webserver fails after DB-restart ORA-24327
#30808 - oci8 cannot connect after restarting DB
#30127 - lost oracle connection. need restart apache.
#29902 - oci8 doesn't disconnect sessions, overloads oracle server
#29779 - (the same issue with the Oracle server going offline)
#26829 - Killed Oracle Sessions openned with OCIPLogon()

Fixed by adding oci8.ping_interval option.

#32988ext/oci8: OCI doesn't support DB external authentication

Fixed by adding support of external credentials (turned off by default).

Added new INI options:
----------------------
oci8.ping_interval
oci8.max_persistent
oci8.persistent_timeout
oci8.privileged_connect
oci8.statement_cache_size
oci8.default_prefetch
oci8.old_oci_close_semantics

See the updated docs for the detailed descriptions.

Major changes:
--------------
- connection handling algorithm rewritten. That should add stability and fix all non-reproducible crashes etc;
- extension refactored and divided into several files to improve readability and to make it easier to maintain;
- added support of statement caching;
- added support of privileged connections using external credentials;
- added new INI options to manage persistent connections;
- fixed oci_close() to close connections correctly.
ext/oci8/README [new file with mode: 0644]
ext/oci8/config.m4
ext/oci8/oci8.c
ext/oci8/oci8_collection.c [new file with mode: 0644]
ext/oci8/oci8_interface.c [new file with mode: 0644]
ext/oci8/oci8_lob.c [new file with mode: 0644]
ext/oci8/oci8_statement.c [new file with mode: 0644]
ext/oci8/php_oci8.h
ext/oci8/php_oci8_int.h [new file with mode: 0644]