sixd Thu Jun 19 19:56:12 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/oci8 README package2.xml php_oci8.h /php-src/ext/oci8/tests bind_char_1.phpt bind_char_2.phpt bind_char_3.phpt bind_char_4.phpt bug27303.phpt bug27303_2.phpt bug27303_4.phpt connect.inc debug.phpt details.inc Log: Test updates and bundle 1.3.3
http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/README?r1=1.1.2.2.2.1.2.5&r2=1.1.2.2.2.1.2.6&diff_format=u Index: php-src/ext/oci8/README diff -u php-src/ext/oci8/README:1.1.2.2.2.1.2.5 php-src/ext/oci8/README:1.1.2.2.2.1.2.6 --- php-src/ext/oci8/README:1.1.2.2.2.1.2.5 Thu Jun 5 23:43:10 2008 +++ php-src/ext/oci8/README Thu Jun 19 19:56:11 2008 @@ -169,12 +169,11 @@ 6. DRCP and FAN Support ----------------------- -The PHP 5.3 OCI8 Beta extension has support for the Oracle Database -Resident Connection Pool (DRCP) and Fast Application Notification -(FAN). +The PHP OCI8 extension has support for the Oracle Database Resident +Connection Pool (DRCP) and Fast Application Notification (FAN). -This release is for Beta testing only. Questions and issues can be -raised on the Oracle OTN forum (free registration required) +Questions and issues can be raised on the Oracle OTN forum (free +registration required): http://www.oracle.com/technology/forums/php.html @@ -184,9 +183,9 @@ 9iR2 onwards. However, full functionality (e.g. DRCP support) is only available when Oracle 11g is used. -For other, general database functionality, the version of the Oracle -libraries used by PHP does not necessarily have to match the version -of the database. +For general database functionality the version of the Oracle libraries +used by PHP does not necessarily have to match the version of the +database. 6.2. Database Resident Connection Pooling (DRCP) @@ -329,16 +328,15 @@ 6.4.2 Closing Connections -With the PHP 5.3 OCI8 Beta extension, persistent connections can now -be closed by the user, allowing greater control over connection -resource usage. Persistent connections will now also be closed -automatically when there is no PHP variable referencing them, such as -at the end of scope of a PHP user function. This will rollback any -uncommitted transaction. These changes to persistent connections make -them behave similarly to non-persistent connections, simplifying the -interface, allowing for greater application consistency and -predictability. Use oci8.old_oci_close_semantics=1 to retain the -historical behavior. +With the PHP OCI8 extension, persistent connections can now be closed +by the user, allowing greater control over connection resource usage. +Persistent connections will now also be closed automatically when +there is no PHP variable referencing them, such as at the end of scope +of a PHP user function. This will rollback any uncommitted +transaction. These changes to persistent connections make them behave +similarly to non-persistent connections, simplifying the interface, +allowing for greater application consistency and predictability. Use +oci8.old_oci_close_semantics=1 to retain the historical behavior. 6.4.3 LOGON Triggers can be used to set session properties http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/package2.xml?r1=1.1.2.8.2.6&r2=1.1.2.8.2.7&diff_format=u Index: php-src/ext/oci8/package2.xml diff -u php-src/ext/oci8/package2.xml:1.1.2.8.2.6 php-src/ext/oci8/package2.xml:1.1.2.8.2.7 --- php-src/ext/oci8/package2.xml:1.1.2.8.2.6 Thu Jun 5 23:41:35 2008 +++ php-src/ext/oci8/package2.xml Thu Jun 19 19:56:11 2008 @@ -33,24 +33,21 @@ <active>yes</active> </lead> - <date>2008-04-17</date> - <time>16:00:00</time> + <date>2008-06-19</date> + <time>12:00:00</time> <version> - <release>1.3.2</release> - <api>1.3.2</api> + <release>1.3.3</release> + <api>1.3.3</api> </version> <stability> - <release>beta</release> - <api>beta</api> + <release>stable</release> + <api>stable</api> </stability> <license uri="http://www.php.net/license">PHP</license> <notes> -Refine DRCP connection pooling functionality -Do scope-end release for oci_pconnect (oci8.old_oci_close_semantics=1 gives old behavior) -Fixed bug #44372 (compilation with Oracle 10gR1 libraries) -Fixed PECL bug #12431 (PEAR install using x86_64 RPM builds) -Allow builds with PHP 4.3.9 onwards +Changed OCI NLS initialization for consistency and technical correctness +Removed obsolete macros </notes> <contents> <dir name="/"> @@ -154,6 +151,14 @@ <file name="connect.inc" role="test" /> <file name="connect_old.phpt" role="test" /> <file name="connect.phpt" role="test" /> + <file name="connect_scope1.phpt" role="test" /> + <file name="connect_scope2.phpt" role="test" /> + <file name="connect_scope_try1.phpt" role="test" /> + <file name="connect_scope_try2.phpt" role="test" /> + <file name="connect_scope_try3.phpt" role="test" /> + <file name="connect_scope_try4.phpt" role="test" /> + <file name="connect_scope_try5.phpt" role="test" /> + <file name="connect_scope_try6.phpt" role="test" /> <file name="connect_with_charset_001.phpt" role="test" /> <file name="connect_without_oracle_home_old.phpt" role="test" /> <file name="connect_without_oracle_home.phpt" role="test" /> @@ -204,7 +209,6 @@ <file name="fetch_all3.phpt" role="test" /> <file name="fetch_all.phpt" role="test" /> <file name="fetch_array.phpt" role="test" /> - <file name="fetch_assoc.php" role="test" /> <file name="fetch_assoc.phpt" role="test" /> <file name="fetch_into1.phpt" role="test" /> <file name="fetch_into2.phpt" role="test" /> @@ -264,6 +268,7 @@ <file name="lob_null.phpt" role="test" /> <file name="lob_temp1.phpt" role="test" /> <file name="lob_temp.phpt" role="test" /> + <file name="minfo.phpt" role="test" /> <file name="num.phpt" role="test" /> <file name="oci8safemode.phpt" role="test" /> <file name="oci_execute_segfault.phpt" role="test" /> @@ -328,6 +333,25 @@ </extsrcrelease> <changelog> +<release> + <version> + <release>1.3.2</release> + <api>1.3.2</api> + </version> + <stability> + <release>beta</release> + <api>beta</api> + </stability> + <license uri="http://www.php.net/license">PHP</license> + <notes> +Refine DRCP connection pooling functionality +Do scope-end release for oci_pconnect (oci8.old_oci_close_semantics=1 gives old behavior) +Fixed bug #44372 (compilation with Oracle 10gR1 libraries) +Fixed PECL bug #12431 (PEAR install using x86_64 RPM builds) +Allow builds with PHP 4.3.9 onwards + </notes> +</release> + <release> <version> <release>1.3.1</release> http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/php_oci8.h?r1=1.36.2.2.2.1.2.6&r2=1.36.2.2.2.1.2.7&diff_format=u Index: php-src/ext/oci8/php_oci8.h diff -u php-src/ext/oci8/php_oci8.h:1.36.2.2.2.1.2.6 php-src/ext/oci8/php_oci8.h:1.36.2.2.2.1.2.7 --- php-src/ext/oci8/php_oci8.h:1.36.2.2.2.1.2.6 Fri Apr 18 02:34:42 2008 +++ php-src/ext/oci8/php_oci8.h Thu Jun 19 19:56:11 2008 @@ -25,7 +25,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_oci8.h,v 1.36.2.2.2.1.2.6 2008/04/18 02:34:42 sixd Exp $ */ +/* $Id: php_oci8.h,v 1.36.2.2.2.1.2.7 2008/06/19 19:56:11 sixd Exp $ */ #if HAVE_OCI8 # ifndef PHP_OCI8_H @@ -46,7 +46,7 @@ */ #undef PHP_OCI8_VERSION #endif -#define PHP_OCI8_VERSION "1.3.3-dev" +#define PHP_OCI8_VERSION "1.3.3" extern zend_module_entry oci8_module_entry; #define phpext_oci8_ptr &oci8_module_entry http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bind_char_1.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/oci8/tests/bind_char_1.phpt diff -u php-src/ext/oci8/tests/bind_char_1.phpt:1.1.2.2 php-src/ext/oci8/tests/bind_char_1.phpt:1.1.2.3 --- php-src/ext/oci8/tests/bind_char_1.phpt:1.1.2.2 Tue Mar 4 21:46:24 2008 +++ php-src/ext/oci8/tests/bind_char_1.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- SELECT oci_bind_by_name with SQLT_AFC aka CHAR --SKIPIF-- -<?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bind_char_2.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/oci8/tests/bind_char_2.phpt diff -u php-src/ext/oci8/tests/bind_char_2.phpt:1.1.2.2 php-src/ext/oci8/tests/bind_char_2.phpt:1.1.2.3 --- php-src/ext/oci8/tests/bind_char_2.phpt:1.1.2.2 Tue Mar 4 21:46:24 2008 +++ php-src/ext/oci8/tests/bind_char_2.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- SELECT oci_bind_by_name with SQLT_AFC aka CHAR and dates --SKIPIF-- -<?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bind_char_3.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/oci8/tests/bind_char_3.phpt diff -u php-src/ext/oci8/tests/bind_char_3.phpt:1.1.2.2 php-src/ext/oci8/tests/bind_char_3.phpt:1.1.2.3 --- php-src/ext/oci8/tests/bind_char_3.phpt:1.1.2.2 Tue Mar 4 21:46:24 2008 +++ php-src/ext/oci8/tests/bind_char_3.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- PL/SQL oci_bind_by_name with SQLT_AFC aka CHAR to CHAR parameter --SKIPIF-- -<?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bind_char_4.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/oci8/tests/bind_char_4.phpt diff -u php-src/ext/oci8/tests/bind_char_4.phpt:1.1.2.2 php-src/ext/oci8/tests/bind_char_4.phpt:1.1.2.3 --- php-src/ext/oci8/tests/bind_char_4.phpt:1.1.2.2 Tue Mar 4 21:46:24 2008 +++ php-src/ext/oci8/tests/bind_char_4.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- PL/SQL oci_bind_by_name with SQLT_AFC aka CHAR to VARCHAR2 parameter --SKIPIF-- -<?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bug27303.phpt?r1=1.1.2.3.2.2.2.1&r2=1.1.2.3.2.2.2.2&diff_format=u Index: php-src/ext/oci8/tests/bug27303.phpt diff -u php-src/ext/oci8/tests/bug27303.phpt:1.1.2.3.2.2.2.1 php-src/ext/oci8/tests/bug27303.phpt:1.1.2.3.2.2.2.2 --- php-src/ext/oci8/tests/bug27303.phpt:1.1.2.3.2.2.2.1 Tue Feb 26 01:05:59 2008 +++ php-src/ext/oci8/tests/bug27303.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- Bug #27303 (OCIBindByName binds numeric PHP values as characters) --SKIPIF-- -<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bug27303_2.phpt?r1=1.1.2.3.2.1.2.1&r2=1.1.2.3.2.1.2.2&diff_format=u Index: php-src/ext/oci8/tests/bug27303_2.phpt diff -u php-src/ext/oci8/tests/bug27303_2.phpt:1.1.2.3.2.1.2.1 php-src/ext/oci8/tests/bug27303_2.phpt:1.1.2.3.2.1.2.2 --- php-src/ext/oci8/tests/bug27303_2.phpt:1.1.2.3.2.1.2.1 Tue Feb 26 01:05:59 2008 +++ php-src/ext/oci8/tests/bug27303_2.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- Bug #27303 (OCIBindByName binds numeric PHP values as characters) --SKIPIF-- -<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/bug27303_4.phpt?r1=1.1.2.3.2.1.2.1&r2=1.1.2.3.2.1.2.2&diff_format=u Index: php-src/ext/oci8/tests/bug27303_4.phpt diff -u php-src/ext/oci8/tests/bug27303_4.phpt:1.1.2.3.2.1.2.1 php-src/ext/oci8/tests/bug27303_4.phpt:1.1.2.3.2.1.2.2 --- php-src/ext/oci8/tests/bug27303_4.phpt:1.1.2.3.2.1.2.1 Tue Feb 26 01:05:59 2008 +++ php-src/ext/oci8/tests/bug27303_4.phpt Thu Jun 19 19:56:11 2008 @@ -1,7 +1,15 @@ --TEST-- Bug #27303 (OCIBindByName binds numeric PHP values as characters) --SKIPIF-- -<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die ("skip no oci8 extension"); +require(dirname(__FILE__)."/connect.inc"); +$sv = oci_server_version($c); +$sv = preg_match('/11.1/', $sv, $matches); +if ($sv !== 1) { + die ("skip expected output only valid when using Oracle 11g database"); +} +?> --FILE-- <?php http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/connect.inc?r1=1.2.4.1.2.1&r2=1.2.4.1.2.1.2.1&diff_format=u Index: php-src/ext/oci8/tests/connect.inc diff -u php-src/ext/oci8/tests/connect.inc:1.2.4.1.2.1 php-src/ext/oci8/tests/connect.inc:1.2.4.1.2.1.2.1 --- php-src/ext/oci8/tests/connect.inc:1.2.4.1.2.1 Tue Dec 12 13:00:01 2006 +++ php-src/ext/oci8/tests/connect.inc Thu Jun 19 19:56:11 2008 @@ -2,29 +2,17 @@ include "details.inc"; -/* - * You should have privileges to create tables in this schema - * - * */ -/* -$schema = "system"; -*/ +if (!empty($dbase)) { + $c = @oci_connect($user, $password, $dbase); +} +else { + $c = @oci_connect($user, $password); +} -$table_name = "tb".substr(str_replace(Array(".", "-"), "_", php_uname("n")), 0, 5); -$type_name = strtoupper("tp".substr(str_replace(Array(".", "-"), "_", php_uname("n")), 0, 5)); - - if (!empty($dbase)) { - $c = ocilogon($user,$password,$dbase); - } - else { - $c = ocilogon($user,$password); - } - - if (!empty($schema)) { - $schema = $schema."."; - } - else { - $schema = ''; - } +if (!$c) { + echo "connect.inc: Failed to connect as '$user' to '$dbase'\n"; + $e = oci_error(); + echo $e['message']."\n"; +} ?> http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/debug.phpt?r1=1.1.2.4.4.2&r2=1.1.2.4.4.3&diff_format=u Index: php-src/ext/oci8/tests/debug.phpt diff -u php-src/ext/oci8/tests/debug.phpt:1.1.2.4.4.2 php-src/ext/oci8/tests/debug.phpt:1.1.2.4.4.3 --- php-src/ext/oci8/tests/debug.phpt:1.1.2.4.4.2 Sat Feb 16 01:20:22 2008 +++ php-src/ext/oci8/tests/debug.phpt Thu Jun 19 19:56:11 2008 @@ -1,11 +1,20 @@ --TEST-- oci_internal_debug() --SKIPIF-- -<?php if (!extension_loaded('oci8')) die("skip no oci8 extension"); ?> +<?php +if (!extension_loaded('oci8')) die("skip no oci8 extension"); +ob_start(); +phpinfo(INFO_MODULES); +$phpinfo = ob_get_clean(); +$iv = preg_match('/Oracle .*Version => 11/', $phpinfo); +if ($iv !== 1) { + die ("skip expected output only valid when using Oracle 11g client libraries"); +} +?> --FILE-- <?php -require dirname(__FILE__)."/connect.inc"; +require(dirname(__FILE__)."/details.inc"); oci_internal_debug(true); @@ -21,14 +30,32 @@ ?> --EXPECTF-- OCI8 DEBUG: OCINlsEnvironmentVariableGet at (%s:%d) -OCI8 DEBUG L1: Got a cached connection: (%s) at (%s:%d) -Done +OCI8 DEBUG L1: Got NO cached connection at (%s:%d) +OCI8 DEBUG: OCIEnvNlsCreate at (%s:%d) +OCI8 DEBUG: OCIHandleAlloc at (%s:%d) +OCI8 DEBUG: OCIHandleAlloc at (%s:%d) +OCI8 DEBUG: OCISessionPoolCreate at (%s:%d) +OCI8 DEBUG: OCIAttrSet at (%s:%d) +OCI8 DEBUG L1: create_spool: (%s:%d) +OCI8 DEBUG L1: using shared pool: (%s:%d) +OCI8 DEBUG: OCIHandleAlloc at (%s:%d) +OCI8 DEBUG: OCIHandleAlloc at (%s:%d) +OCI8 DEBUG: OCIAttrSet at (%s:%d) +OCI8 DEBUG: OCIAttrSet at (%s:%d) +OCI8 DEBUG: OCIAttrGet at (%s:%d) +OCI8 DEBUG: OCIAttrGet at (%s:%d) +OCI8 DEBUG L1: (%s:%d) +OCI8 DEBUG: OCISessionGet at (%s:%d) +OCI8 DEBUG: OCIAttrGet at (%s:%d) +OCI8 DEBUG: OCIAttrGet at (%s:%d) +OCI8 DEBUG: OCIContextGetValue at (%s:%d) +OCI8 DEBUG: OCIContextGetValue at (%s:%d) +OCI8 DEBUG: OCIMemoryAlloc at (%s:%d) +OCI8 DEBUG: OCIContextSetValue at (%s:%d) +OCI8 DEBUG: OCIAttrSet at (%s:%d) +OCI8 DEBUG L1: New Non-Persistent Connection address: (%s) at (%s:%d) +OCI8 DEBUG L1: num_persistent=(%s:%d) OCI8 DEBUG: OCISessionRelease at (%s:%d) OCI8 DEBUG: OCIHandleFree at (%s:%d) OCI8 DEBUG: OCIHandleFree at (%s:%d) -OCI8 DEBUG: OCISessionPoolDestroy at (%s:%d) -OCI8 DEBUG: OCIHandleFree at (%s:%d) -OCI8 DEBUG: OCIHandleFree at (%s:%d) -OCI8 DEBUG: OCIHandleFree at (%s:%d) -OCI8 DEBUG: OCIHandleFree at (%s:%d) -OCI8 DEBUG: OCIHandleFree at (%s:%d) +Done http://cvs.php.net/viewvc.cgi/php-src/ext/oci8/tests/details.inc?r1=1.1.2.3.2.2&r2=1.1.2.3.2.3&diff_format=u Index: php-src/ext/oci8/tests/details.inc diff -u php-src/ext/oci8/tests/details.inc:1.1.2.3.2.2 php-src/ext/oci8/tests/details.inc:1.1.2.3.2.3 --- php-src/ext/oci8/tests/details.inc:1.1.2.3.2.2 Sat Feb 16 01:20:22 2008 +++ php-src/ext/oci8/tests/details.inc Thu Jun 19 19:56:11 2008 @@ -33,9 +33,17 @@ } else { $user = "system"; $password = "system"; - $dbase = "oracle"; - $oracle_on_localhost = FALSE; + $dbase = "localhost/XE"; + $oracle_on_localhost = TRUE; $test_drcp = FALSE; } +/* + * Common object names for scripts to use + */ + +$table_name = "tb".substr(str_replace(Array(".", "-"), "_", php_uname("n")), 0, 5); +$type_name = strtoupper("tp".substr(str_replace(Array(".", "-"), "_", php_uname("n")), 0, 5)); +$schema = ''; + ?>
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php