Commit graph

88 commits

Author SHA1 Message Date
Christopher Jones
f7ef5d2219 Merge branch 'PHP-7.1'
* PHP-7.1:
  oci8 - Implementation of Oracle TAF Callback
2017-06-20 14:34:05 +10:00
KoenigsKind
1b797f7ad3 oci8 - Implementation of Oracle TAF Callback
Adds support for the Transparent Application Failover Callback.
The php_oci_connection struct got a char* added which will contain the
callback function, it should be set to PHP_OCI_TAF_DISABLE_CALLBACK at
the end of a php request for permanent connections so that, if a TAF
callback occurs, no userspace function will be called.
Maybe add support for registering object functions (via array),
currently the register function only accepts a string. I didn't know how
to implement it correctly. As a failover occurs very rarely it might be
better to not keep the cache when saving the zend_fcall_info.

Things to do
[ ] config.m4 needs to compile oci8_failover.c
[ ] Check if correctly implemented (especially for multithreading)
[ ] Add support for registering callback function via array
2017-06-20 14:32:52 +10:00
Sammy Kaye Powers
478f119ab9 Update copyright headers to 2017 2017-01-04 11:14:55 -06:00
Sammy Kaye Powers
9e29f841ce Update copyright headers to 2017 2017-01-02 09:30:12 -06:00
Christopher Jones
8be59a1301 Fixed bug #71148 (Bind reference overwritten on PHP 7) 2016-10-17 12:40:14 +11:00
Christopher Jones
dd7cdab8e4 Remove old $Id$ tags 2016-08-07 10:24:56 +10:00
Christopher Jones
944d473eaa Sync with 7.1 branch changes from Nikita & Dimitri to keep OCI8 code identical 2016-08-07 10:17:06 +10:00
Christopher Jones
12cd25bb1a Fixed bug #71600 (oci_fetch_all segfaults when selecting more than 8 columns) (Tian Yang) 2016-04-14 14:09:16 +10:00
Lior Kaplan
ed35de784f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Happy new year (Update copyright to 2016)
2016-01-01 19:48:25 +02:00
Lior Kaplan
49493a2dcf Happy new year (Update copyright to 2016) 2016-01-01 19:21:47 +02:00
Christopher Jones
f66e25a82b Fixed LOB implementation size_t/zend_long mismatch reported by gcov 2015-11-20 09:14:05 +11:00
Christopher Jones
a57b205383 Fix compile warnings about comparison of unsigned expression always being true 2015-11-07 02:14:18 +11:00
Christopher Jones
9047b567e3 Resolve build warnings. Bump ver. Better range check. Fix diffs 2015-08-19 10:42:53 +10:00
Christopher Jones
b7031ba743 Further PHP 7 compat for OCI8 2015-08-12 21:57:16 +10:00
Christopher Jones
70a7221540 More PHP7 compat (Rajendra/Senthil) 2015-07-30 20:25:40 +10:00
Christopher Jones
e6d9061e85 More OCI8 diff fixes (Rajendra) 2015-07-16 13:06:35 +10:00
Christopher Jones
8586e67c1c Some OCI8 fixes (Rajendra) 2015-07-13 11:50:00 +10:00
Christopher Jones
99cac5055e More PHP 7 patches (Rajendra/Abdullah) 2015-06-30 13:54:40 +10:00
Cameron Porter
621698d3f9 Correct oci8 hash destructors to prevent segfaults, and a few other fixes. 2015-06-28 13:05:25 +02:00
Rasmus Lerdorf
28d7bb97a1 Fix more proto comments 2015-06-23 17:46:20 -04:00
Cameron Porter
3cf0bea098 Get oci8 extension compiling with php7. 2015-06-06 13:05:19 -05:00
Xinchen Hui
fc33f52d8c bump year 2015-01-15 23:27:30 +08:00
Xinchen Hui
0579e8278d bump year 2015-01-15 23:26:37 +08:00
Anatol Belski
bdeb220f48 first shot remove TSRMLS_* things 2014-12-13 23:06:14 +01:00
Johannes Schlüter
d0cb715373 s/PHP 5/PHP 7/ 2014-09-19 18:33:14 +02:00
Anatol Belski
466a4c97b2 replace zend_hash_find with zend_hash_str_find which fixes leaking the key 2014-09-10 13:22:23 +02:00
Anatol Belski
e3ded277a5 second big shot on porting ext/oci8
still a lot to do, but most raw things done
2014-09-10 12:41:43 +02:00
Anatol Belski
686213a242 first shot on fixing ext/oci8 2014-09-10 12:41:42 +02:00
Anatol Belski
2e085df5c0 basic datatype fixes for ext/oci8 2014-09-10 12:41:41 +02:00
Anatol Belski
c3e3c98ec6 master renames phase 1 2014-08-25 19:24:55 +02:00
Anatol Belski
63d3f0b844 basic macro replacements, all at once 2014-08-19 08:07:31 +02:00
Dmitry Stogov
f9927a6c97 Merge mainstream 'master' branch into refactoring
During merge I had to revert:
	Nikita's patch for php_splice() (it probably needs to be applyed again)
	Bob Weinand's patches related to constant expression handling (we need to review them carefully)
	I also reverted all our attempts to support sapi/phpdbg (we didn't test it anyway)

Conflicts:
	Zend/zend.h
	Zend/zend_API.c
	Zend/zend_ast.c
	Zend/zend_compile.c
	Zend/zend_compile.h
	Zend/zend_constants.c
	Zend/zend_exceptions.c
	Zend/zend_execute.c
	Zend/zend_execute.h
	Zend/zend_execute_API.c
	Zend/zend_hash.c
	Zend/zend_highlight.c
	Zend/zend_language_parser.y
	Zend/zend_language_scanner.c
	Zend/zend_language_scanner_defs.h
	Zend/zend_variables.c
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/date/php_date.c
	ext/dom/documenttype.c
	ext/hash/hash.c
	ext/iconv/iconv.c
	ext/mbstring/tests/zend_multibyte-10.phpt
	ext/mbstring/tests/zend_multibyte-11.phpt
	ext/mbstring/tests/zend_multibyte-12.phpt
	ext/mysql/php_mysql.c
	ext/mysqli/mysqli.c
	ext/mysqlnd/mysqlnd_reverse_api.c
	ext/mysqlnd/php_mysqlnd.c
	ext/opcache/ZendAccelerator.c
	ext/opcache/zend_accelerator_util_funcs.c
	ext/opcache/zend_persist.c
	ext/opcache/zend_persist_calc.c
	ext/pcre/php_pcre.c
	ext/pdo/pdo_dbh.c
	ext/pdo/pdo_stmt.c
	ext/pdo_pgsql/pgsql_driver.c
	ext/pgsql/pgsql.c
	ext/reflection/php_reflection.c
	ext/session/session.c
	ext/spl/spl_array.c
	ext/spl/spl_observer.c
	ext/standard/array.c
	ext/standard/basic_functions.c
	ext/standard/html.c
	ext/standard/mail.c
	ext/standard/php_array.h
	ext/standard/proc_open.c
	ext/standard/streamsfuncs.c
	ext/standard/user_filters.c
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
	main/php_variables.c
	sapi/phpdbg/phpdbg.c
	sapi/phpdbg/phpdbg_bp.c
	sapi/phpdbg/phpdbg_frame.c
	sapi/phpdbg/phpdbg_help.c
	sapi/phpdbg/phpdbg_list.c
	sapi/phpdbg/phpdbg_print.c
	sapi/phpdbg/phpdbg_prompt.c
2014-04-26 00:32:51 +04:00
Dmitry Stogov
050d7e38ad Cleanup (1-st round) 2014-04-15 15:40:40 +04:00
Christopher Jones
6c20b07190 OCI8: fix prototypes for oci_field_*(). They can take a column index or name. 2014-03-19 15:20:40 -07:00
Xinchen Hui
c081ce628f Bump year 2014-01-03 11:08:10 +08:00
Christopher Jones
12f9939b79 Bump mininum requirements for PHP OCI8 2.0 to PHP 5.2 and Oracle
client library 10.2 (Note this will connect to Oracle Database 8.1.7
onwards). Use the older OCI8 1.4 from PECL if using an earlier PHP
version or older Oracle client library support is necessary.
2013-10-07 17:23:11 -07:00
Christopher Jones
954a0f8bf4 OCI8 2.0: Added a new oci_set_db_operation() user space function for the "DB Operation" tracing feature of Oracle DB 12c.
Currently this code is #ifdef'd out, since I can't consider the feature stable until an Oracle-side fix for Oracle bug 16695981 is available.  Having the code available in PHP OCI8 facilitates testing of any fix.
2013-09-30 16:51:07 -07:00
Christopher Jones
9b9eaba083 OCI8: Fix alloc function and DLL generation 2013-09-27 17:00:41 -07:00
Christopher Jones
5ac7c533a0 More OCI8 DTrace probe updates.
Change php.ini-* doc to match an earlier change to config.w32
2013-09-26 21:12:11 -07:00
Christopher Jones
43289d664c Remove obsolete flag 2013-09-06 10:12:16 -07:00
Christopher Jones
4b778faa80 Make oci_set_*($connection,...) errors retrievable via oci_error($connection).
Improve some error handling to produce error text on some rare edge cases.
Disambiguate the Oracle library function call return status values from ORA error numbers.
Review and unify error data types.
2013-09-05 18:18:29 -07:00
Christopher Jones
8aca4e45bb Leave it to DTrace FBT to trace underlying library calls 2013-08-26 14:20:58 -07:00
Christopher Jones
85b66e9e21 OCI8 extension: Allow Implicit Result Set statement resources to inherit the parent's current prefetch count 2013-07-26 13:34:45 -07:00
Christopher Jones
586fc4909e Fix --enable-maintainer-zts mode in OCI8 2.0 2013-07-25 16:15:32 -07:00
Christopher Jones
bfc3c223da Initial PHP OCI8 2.0.0-dev commit.
Includes Oracle Database 12c Implicit Result Set support, DTrace
support, and various code cleanups.

See package.xml for details.
2013-07-24 15:33:22 -07:00
Xinchen Hui
a666285bc2 Happy New Year 2013-01-01 16:37:09 +08:00
Felipe Pena
8775a37559 - Year++ 2012-01-01 13:15:04 +00:00
Christopher Jones
16b744d2d4 Add oci_client_version() returning the runtime Oracle client library version - predominantly useful for the test suite 2011-06-10 17:38:07 +00:00
Christopher Jones
c287e682f2 Sync OCI8 branches. Allow 'pecl install' to work on both PHP 5.3 & 5.4 2011-06-07 23:53:02 +00:00
Felipe Pena
4737910b69 - Added new parameter parsing option (p - for valid path (string without null byte in the middle))
# The tests will be fixed in the next commits
2011-06-06 21:28:16 +00:00