If I use. git checkout 7d3d89c11d40282afb85befd47bd4747f12181e6
That everything is working properly.
And if.
commit: 52c89dcbe061414ee3f35380da7c29715dfb8bd4
That get the error. Fatal error: Cannot use object of type stdClass as array in [CouchbaseNative]/CouchbaseBucket.class.php on line 284
@Kozlov could you make sure you do not have any modified/old files when you are compiling master branch? Because it is not reproducing, but it reproduces when I do the following steps:
git checkout 52c89dcbe061414ee3f35380da7c29715dfb8bd4
git clean -dfx
git revert 678bb679de2f8f3b360be7b29a3ca2925da1966f
phpize
./configure --with-couchbase
make
sudo make install
@moon0326 the fix has been done almost 7 months ago
The bug is fixed in the code, but never released in v.2.1.x versions and 2.2 is still in beta.
v2.1.0 was released on Nov 4, 2015. The fix was committed on Nov 9. When a stable version is not released, it is not fixed for the customers as far as I concern.
I mean I’m able to reproduce your issue only when I revert the fix 678bb679de2f8f3b360be7b29a3ca2925da1966f, if you run pecl install couchbase-2.2.0beta3 you will get the most recent extension. But make sure you don’t have any other extensions installed.
Yes, you are correct, but Sergey has used version from git and I meant that it have to be fixed in his code base, and because he mentioned issues with discovering shared object I guessed that probably either something messed with working directory where extension has been built, or there are multiple extensions on the system.
He gets error when he installs couchbase sdk through pecl, which is using 2.1.0 by default.
If I do so, the client sees the PHP:
pear config-set php_ini /etc/php5/apache2/php.ini
pecl config-set php_ini /etc/php5/apache2/php.ini
pecl install couchbase
Then I execute the code and get the error:
$cluster = new CouchbaseCluster("http://192.168.0.181:8091", "Administrator", "Pass", "default");
What does say ldd /usr/lib/php5/20121212/couchbase.so, does it use absolute path in php.ini, and does it show any warning, when you say “Does not see extension”?