Re: OCI8 1.1 announce

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,


Yesterday OCI8 extension have been updated in the PHP CVS (HEAD only).
This updated driver resolves a large amount of bug reports and adds
some improvements both functionality and performance, and much better
documentation (see here: http://php.net/oci8).

A lot of time has been invested in updating this driver including
help from Wez Furlong and the OCI team which gave a lot of feedback
on how to do things the best and most efficient way.

I have just tried this version and at least one of two problems that I had with version 1.0 was solved.

The problem that seems solved used to crash PHP if ORACLE_HOME and ORACLE_SID were not set before running PHP. I have tested it with Metabase OCI driver class and previously have documented the problem in the OCI driver notes of Metabase documentation.

http://www.meta-language.net/metabase.html#232.2.4

Metabase uses PHP putenv() function to set these variables but with OCI8 1.0 extension not setting these variables before running PHP was causing segmentation or the error ORA-03117: two-task save area overflow.

Anyway, now that no longer seems to be a problem, as in past versions prior to PECL OCI8 1.0 extension.


The other problem that I am still having is about host_os variable in the configure script being set to linux but the configure script generated by phpize expects linux-gnu. The consequence of this is that even when you use --enable-shared as configure argument makes it always build as static.

I use SuSE Linux Professional 9.0 with PHP 4.3.11-1 RPM archives provided in SuSE FTP site here:

ftp://ftp.suse.com/pub/projects/apache/mod_php4/9.0-i386/

To solve the problem, I had to hack the configure script generated by phpize adding a few case options to consider linux as host_os alias of linux-gnu .

Using that hack the extension builds and installs properly, passing 15 out of 16 tests of Metabase driver class test suite. The only test that fails is due to a known "feature" of Oracle of storing NULL when you mean to store an empty string on a VARCHAR fields. So, all works well as expected. Congratulations! ;-)

--

Regards,
Manuel Lemos

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/

PHP Reviews - Reviews of PHP books and other products
http://www.phpclasses.org/reviews/

Metastorage - Data object relational mapping layer generator
http://www.meta-language.net/metastorage.html

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux