[PCBC-163] Typo cause runtime linking to fail Created: 12/Dec/12  Updated: 13/Dec/12  Resolved: 13/Dec/12

Status: Resolved
Project: Couchbase PHP client library
Component/s: library
Affects Version/s: 1.1.0
Fix Version/s: 1.1.1
Security Level: Public

Type: Bug Priority: Critical
Reporter: Trond Norbye Assignee: Trond Norbye
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File PCBC-163-couchbase.so    

 Description   
There is a typo for the touch_multi (double __ in the function name for the function couchbase_touch_multi) causing the runtime linker to abort if the function is being called.

The current unit tests didn't cover the functional touch interface.


 Comments   
Comment by Trond Norbye [ 12/Dec/12 ]
http://review.couchbase.org/#/c/23229/
Comment by Trond Norbye [ 12/Dec/12 ]
THe current workaround is to use the object-oriented interface
Comment by Tim Smith (Inactive) [ 13/Dec/12 ]
This is more important than that. PHP can't open couchbase.so at all, no matter if you use any couchbase functions or not. Just trying to start up php-fpm to load couchbase.so fails:

Starting php-fpm: [13-Dec-2012 14:08:49] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/root/php-lib/php-ext-couchbase/couchbase.so' - /root/php-lib/php-ext-couchbase/couchbase.so: undefined symbol: php_couchbase_touch__multi_impl in Unknown on line 0

This was tested on Centos 5.8 and 6.3 (with install from the centos55 and centos62 rpms).

I recompiled couchbase.so from current master php-ext-couchbase, and it does work OK.

Please get a new 1.1 official release out as soon as possible. The current one is not usable at all.

Comment by Tim Smith (Inactive) [ 13/Dec/12 ]
Unofficial (user-supplied) build that fixes this issue. Just copy it as couchbase.so into your php lib directory.
Generated at Wed Sep 17 17:52:00 CDT 2014 using JIRA 5.2.4#845-sha1:c9f4cc41abe72fb236945343a1f485c2c844dac9.