Commit Graph

362 Commits

Author SHA1 Message Date
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Antony Dovgal
4106eee7c7 fix segfault in ZTS mode when statements containing sub-statements are destroyed in wrong order 2006-11-10 16:33:41 +00:00
Antony Dovgal
91a1333c21 MFH: fix PECL bug #9061 (oci8 might reuse wrong persistent connection) 2006-10-18 14:23:23 +00:00
Antony Dovgal
d1202b7986 declare oci_lob_seek() 2006-09-12 20:27:28 +00:00
Antony Dovgal
d221f46ab6 update version in phpinfo() 2006-08-24 13:03:04 +00:00
Antony Dovgal
f6bbb02da6 bump version number 2006-08-24 12:46:54 +00:00
Antony Dovgal
567cf55085 compat fixes 2006-08-24 12:05:19 +00:00
Antony Dovgal
08a9ab02ba minor improvements 2006-08-22 11:09:12 +00:00
Antony Dovgal
70e59e2999 MFH: fix PECL bug #8112 (OCI8 persistent connections misbehave when Apache process times out) 2006-08-21 16:41:13 +00:00
Antony Dovgal
3a0f857173 minor CS/WS fixes 2006-08-15 13:08:34 +00:00
Antony Dovgal
88e752c007 MFH: error message might be NULL 2006-08-15 12:27:24 +00:00
Antony Dovgal
8c170d480a MFH: OCIBreak() is not supported on Windows 2006-08-15 12:19:46 +00:00
Antony Dovgal
ae61bb7bb8 improve connection character set detection:
* output a warning if invalid character set was passed to the function
* use NLS_LANG by default
2006-08-10 12:15:58 +00:00
Antony Dovgal
4c5691bd02 MFH: fix #8112 (Persistent connections misbehave when Apache process times out) 2006-08-09 10:16:50 +00:00
Antony Dovgal
861c55b417 long -> int 2006-08-06 14:09:58 +00:00
Antony Dovgal
a1a42253d9 fix PECL bug #7827
add small optimization
2006-08-05 20:56:43 +00:00
Antony Dovgal
1bf915ca2d improve error message on Win32 2006-08-01 12:08:25 +00:00
Antony Dovgal
f5b5d34a27 MFH: fix #37581 (oci_bind_array_by_name clobbers input array when using SQLT_AFC, AVC) 2006-07-31 10:30:23 +00:00
Antony Dovgal
7987bba743 improve connection timeout check (implements FR #38210) 2006-07-26 06:59:40 +00:00
Antony Dovgal
0212ec6c71 MFH: fix #37931 (possible crash after database restart when using persistent connections) 2006-06-28 15:03:33 +00:00
Antony Dovgal
1fdd8d7b2a MFH: fix typo and bug #37886 2006-06-23 08:26:15 +00:00
Antony Dovgal
ba8f17e483 MFH: display oci8 version in phpinfo() 2006-06-19 18:21:28 +00:00
Dmitry Stogov
1dbaae2795 Added automatic module globals management 2006-06-15 18:33:09 +00:00
Antony Dovgal
a588f2dc60 MFH: fix OCIPasswordChange() parameters (patch by pholdaway at technocom-wireless dot com)
prevent username, password and new password from being empty
2006-06-05 07:35:32 +00:00
Antony Dovgal
be0fc2b801 MFH: fix #37531 (oci8 persistent connection corruption) 2006-05-29 10:59:30 +00:00
Antony Dovgal
749f4ac2ab MFH: fix #37487 (oci_fetch_array() array-type should always default to OCI_BOTH) 2006-05-18 13:21:08 +00:00
Antony Dovgal
0881dbd101 MFH: fix #37392 (Unnecessary call to OCITransRollback() at the end of request) 2006-05-10 10:07:28 +00:00
Antony Dovgal
5751903b1b fix #37059 (oci_bind_by_name() doesn't support RAW and LONG RAW fields)
add tests
2006-04-12 19:21:35 +00:00
Antony Dovgal
2d2f1cf0c6 oops.. I didn't want to commit this.. 2006-04-12 18:01:35 +00:00
Antony Dovgal
2e461783d0 correct fix for bug #37055 2006-04-12 17:59:32 +00:00
Antony Dovgal
bac1fda336 fix #37055 (incorrect reference counting for persistent OCI8 connections) 2006-04-12 13:37:51 +00:00
Antony Dovgal
6c101d6400 fix #36820 (Privileged connection with an Oracle password file fails) 2006-03-22 09:45:39 +00:00
Antony Dovgal
6ce1f43902 MFH
add workaround for Oracle server crash, use OCIServerVersion() instead of OCIPing()
fix #36250 (PHP Causes ORA-07445 Core dump in Oracle server 9.2.x)
2006-03-07 07:47:43 +00:00
Antony Dovgal
1d72f55e7d MFH: reorganize resource destruction 2006-01-18 10:12:34 +00:00
Antony Dovgal
4278ffd3b4 MFH: fix #36055 (possible OCI8 crash in multithreaded environment) 2006-01-17 23:44:51 +00:00
Antony Dovgal
92f050786f MFH: destroy regular connections in RSHUTDOWN if ZTS is used
this fixes problem with Oracle9 (not Oracle10) and Apache2/worker - connections are not being closed correctly
see #35205 and similar issues
2006-01-10 08:34:28 +00:00
Antony Dovgal
8eb44c317e MFH: delete descriptor from the hash and avoid crashes on commit/rollback 2006-01-05 13:42:35 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
foobar
a3af52c11e MFH: list_entry -> zend_rsrc_list_entry 2005-12-05 23:38:04 +00:00
Antony Dovgal
3756201e04 upgrade bundled OCI8 to v.1.1 2005-12-01 13:39:48 +00:00
Antony Dovgal
c797466259 MF44: fix #33383 (crash when retrieving empty LOBs) 2005-10-10 10:44:39 +00:00
Antony Dovgal
e0e9b5ac39 fix #34731, patch by novicky at aarongroup dot cz 2005-10-04 18:15:18 +00:00
foobar
9477097564 MFH: Nuked EOLs from error messages 2005-08-18 13:34:41 +00:00
foobar
23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
Antony Dovgal
2a128504a2 destroy session after destroying error handle
SQLT_CHR is allowed too
2005-06-13 09:30:49 +00:00
Antony Dovgal
5ca4b8383e handle unsupported datatype (OCIBindByName segfaults somewhere in OCI lib when
unknown type is provided)
2005-04-28 14:10:42 +00:00
Antony Dovgal
d0427feee4 fix bug #31623 (OCILogin does not support password grace period) 2005-01-20 18:39:48 +00:00
Andi Gutmans
7c3eaef39d - Don't reuse Oracle connections in multi-threaded environments until
- we decide to either not support ZTS connection pooling (kind of
- pointless as PHP isn't stable in ZTS mode) or fix the 100% reproducable
- crash bug on oci_connect() under Windows most probably due to this
- problem.
2004-11-22 21:44:42 +00:00
Andi Gutmans
737568997b *** empty log message *** 2004-11-21 06:17:32 +00:00
Antony Dovgal
07f84de680 commit fixes by <mikael dot suvi at trigger dot ee>
(segfaults under heavy load)
2004-10-23 09:32:44 +00:00
Antony Dovgal
3a5822585e fix possible segfault 2004-10-10 15:04:21 +00:00
Antony Dovgal
b0b4b6eff2 prevent deadlocks when re-using previously established persistent connection 2004-10-10 10:54:26 +00:00
Antony Dovgal
454b9659c5 fix bug #29652 (number of FD to ocius.msb is growing)
many thanks to Sergei V. Rozinov <S dot Rozinov at sibron dot ru> for testing
2004-09-28 16:59:10 +00:00
Antony Dovgal
cbd5396cbb fix build 2004-07-19 07:35:41 +00:00
Andi Gutmans
56f8195fe5 - Nuke empty_string. It is a reminanent from the time where RETURN_FALSE()
used to return "" and not bool(false). It's not worth keeping it because
  STR_FREE() and zval_dtor() always have to check for it and it slows down
  the general case. In addition, it seems that empty_string has been abused
  quite a lot, and was used not only for setting zval's but generally in
  PHP code instead of "", which wasn't the intention. Last but not least,
  nuking empty_string should improve stability as I doubt every place
  correctly checked if they are not mistakenly erealloc()'ing it or
  calling efree() on it.
  NOTE: Some code is probably broken. Each extension maintainer should
  check and see that my changes are OK. Also, I haven't had time to touch
  PECL yet. Will try and do it tomorrow.
2004-07-19 07:19:50 +00:00
Antony Dovgal
f6eb507b2c fix #29012 (Potential race during first connection) thanks to cjbj at hotmail dot com 2004-07-15 11:00:14 +00:00
Antony Dovgal
08486a0ea3 fix #28978 (multiple OCIBindByName on the same placeholder eats memory) 2004-07-12 07:40:05 +00:00
Antony Dovgal
af96ad84b5 hmm. this comma is supposed to be a semicolon. 2004-04-26 14:49:41 +00:00
Ard Biesheuvel
81f05c18f5 Wordsize fixes 2004-02-25 20:16:27 +00:00
Antony Dovgal
7837416c2b this should really fix compile failure with gcc 2.96 2004-02-20 12:47:56 +00:00
foobar
26332c0436 Fix compile failure 2004-02-20 03:16:51 +00:00
foobar
6e15162724 Only use Z_TYPE* with zvals.. 2004-02-20 03:05:42 +00:00
Stig Bakken
4127b304ea * email address update 2004-02-12 19:05:41 +00:00
Stig Bakken
f8125ed92d * update my email address 2004-02-12 19:03:03 +00:00
Antony Dovgal
d3cd05c95a fix bug #27149
(offset should start with 1)
2004-02-05 08:29:16 +00:00
Antony Dovgal
f1c40a4a22 -remove obsolete types
-changes in config.m4 to make oci8 to compile with Oracle 10g
(thanks to cjbj at hotmail dot com for reporting both problems)
2004-02-03 14:21:09 +00:00
Antony Dovgal
c7699856fc add missing alias for ocifreecursor() 2004-02-02 08:26:15 +00:00
Antony Dovgal
fec01159b1 fix yet another possible segfault 2004-02-02 08:09:53 +00:00
Antony Dovgal
fab593566e two fixes:
-oci_lob_load shouldn't reset LOB's length to zero
-Oracle feels bad, but reports no error, when trying to erase LOB with offset bigger than LOB
2004-01-28 07:15:55 +00:00
Antony Dovgal
6fe26e966d change to use different allocator (Sascha, thanks =) ) 2004-01-26 15:42:24 +00:00
Antony Dovgal
83a1eaf75a fix this annoying notice about limited range 2004-01-26 15:25:32 +00:00
Antony Dovgal
f64928bdce improve debug messages 2004-01-26 15:21:52 +00:00
Antony Dovgal
9fcb1dd2c9 oops =(
forgot these brackets..
2004-01-26 14:02:08 +00:00
Antony Dovgal
15f22a5796 fix oci_field_type_raw's proto
oci_collection_element_get should return FALSE only if there is no such element and NULL, if it's null
2004-01-26 13:59:42 +00:00
Antony Dovgal
dbb29baefe add missing protos
and some minor changes
2004-01-22 08:39:50 +00:00
Antony Dovgal
261726099c MFB
oci_lob_save() should be removed indeed, but we're already in feature freeze =(
2004-01-22 08:05:14 +00:00
Antony Dovgal
02ded9766a *change constant name, coz it doesn't comply with others
*add constant's alias, coz others do have aliases
*change protos (oops =))
*add notices to collection functions
*change coll_element_get & coll_assign to inform user, that this type of element is not supported yet.
2004-01-21 16:18:58 +00:00
Antony Dovgal
c375c68073 fix potential segfault in oci_lob_write()
change oci_lob_trim() - truncate length should be 0 by default.
2004-01-21 12:30:05 +00:00
Antony Dovgal
649b844c3c Fix bug #26892, ORA-21301 in ocinewcollection() call.
pEnv should be initialized in object mode too.
2004-01-15 15:06:57 +00:00
foobar
ad11617f29 Fix typo 2004-01-15 06:30:23 +00:00
Andi Gutmans
dbeb4158d2 - A belated happy holidays and PHP 5 2004-01-08 08:18:22 +00:00
foobar
0eead3672c ws + cs 2004-01-02 15:32:09 +00:00
foobar
2cf5871377 another ZTS fix 2004-01-02 14:09:49 +00:00
foobar
3c73c91e7a fix ZTS build 2004-01-02 02:21:44 +00:00
Antony Dovgal
12c7ae9f55 workaround for possible ORA-22280 warning if buffers were not flushed 2003-12-25 13:54:50 +00:00
Antony Dovgal
f95db00d6c separate oci_lob_flush() to use it in oci_lob_append() etc. in the future 2003-12-24 15:01:54 +00:00
Antony Dovgal
107221252c add oci_fetch_assoc(), oci_fetch_object(), oci_fetch_array() & oci_fetch_row()
change ocifetchinto() to use php_oci_fetch_row()
2003-12-23 16:02:53 +00:00
Antony Dovgal
7aac9069d4 huge patch
change almost all func names to match naming conventions
keep ocifetchinto & *buffering for awhile - they will be rewritten soon
old names are kept as aliases
2003-12-23 15:45:36 +00:00
Antony Dovgal
cf45beedb5 do not delete connection ids, we need them 2003-12-23 09:21:14 +00:00
Antony Dovgal
c002553d7c fix bug #26133 (thanks to Harald)
rename constant and add library check to config.m4
add info lines to see if Collection & Temp Lob support enabled or not
add OCI_THREADED to use thread safe OCI mode with ZTS (should fix bug #26558)
2003-12-16 15:58:10 +00:00
Antony Dovgal
c0e519e6ea fix warning, concerned to second _oci_close_server() call 2003-12-16 15:48:20 +00:00
Harald Radi
e0a0e9d831 fix non-zts build errors 2003-12-16 11:15:55 +00:00
Harald Radi
85b4b63a47 @- fixed #20006, #22674 and #24531 (harald)
@- added ZTS connection pooling support to the oci extension
@  connections will now be pooled per process and not
@  per thread anymore. the number of persistent and active
@  connections is now also shown in the phpinfo() output (harald)
2003-12-16 10:29:11 +00:00
Antony Dovgal
18096396d2 add new functions:
ocitelllob(); [ OCI_Lob->tell(); ] - ftell(); analogue for Lobs
ociwritelob(); [ OCI_Lob->write(); ] - fwrite(); analogue for Lobs
ocitruncatelob(); [ OCI_Lob->truncate(); ] - ftruncate(); analogue for Lobs
ocieraselob(); [ OCI_Lob->erase(); ] - erases specified part of a Lob (for BLOBs it means zero-filling, for CLOBs - space-filling)
ociflushlob(); [ OCI_Lob->flush(); ] - flushes Lob buffer (if buffering was enabled before)
ocisetbufferinglob(); [ OCI_Lob->setBuffering(); ] - turns on/off buffering for the current Lob
ocigetbufferinglob(); [ OCI_Lob->getBuffering(); ] - gets buffering' current state
ocirewindlob(); [ OCI_Lob->rewind(); ] - rewind(); analogue for Lobs
ocireadlob(); [ OCI_Lob->read(); ] - fread(); analogue for Lobs
ocieoflob(); [ OCI_Lob->eof(); ] - feof(); analogue for Lobs
ociseeklob(); [ OCI_Lob->seek(); ] - fseek(); analogue for Lobs
ocilobgetlength(); [ OCI_Lob->getLength(); ] - filesize(); analogue for Lobs

ociappendlob(); - appends data from a Lob to another Lob
ocicopylob(); - copies data from a Lob to another Lob
ociisequallob(); - compares 2 Lobs and checks if they are equal

TODO cleanup
and other minor fixes
2003-12-15 13:53:01 +00:00
Sascha Schumann
db56268231 WS 2003-11-06 14:31:33 +00:00
Sascha Schumann
5a32c21f46 Fix a format string
Nuke a sprintf (slooow)

And embed the charset as part of the hashed details (persistent conn key),
because the function otherwise happily returns incompatible connections.
(e.g. US7ASCII vs. UTF8; the client-side charset is not alterable once a
 connection has been established.)
2003-11-06 14:29:09 +00:00
Zeev Suraski
8767205afa Fix Win32 linkage problems 2003-08-31 12:41:53 +00:00
Andrey Hristov
9ac579c2c0 proto fixes(Mehdi Achour) 2003-08-12 11:37:40 +00:00
Ilia Alshanetsky
93bcd55eaf emalloc -> safe_emalloc 2003-08-12 00:58:52 +00:00
Zeev Suraski
538d58dd5f Use new infrastructure.
There are bound to be some messups, please report build/runtime bugs!
2003-08-03 17:44:39 +00:00