[CDRIVER-1040] Export symbols required by pecl/mongodb Created: 08/Dec/15  Updated: 24/Dec/15  Resolved: 24/Dec/15

Status: Closed
Project: C Driver
Component/s: libmongoc
Affects Version/s: 1.3.0
Fix Version/s: 1.4.0

Type: Bug Priority: Major - P3
Reporter: Remi Collet Assignee: Hannes Magnusson
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Fedora


Issue Links:
Related
related to CDRIVER-1015 Package libmongoc-priv for deb Closed
is related to PHPC-495 Upgrade bundled libbson and libmongoc... Closed

 Description   

ABI change in 1.3.0 without soname change

Trying to load pecl/mongo build with 1.2.0 when 1.3.0 is installed result in

undefined symbol: mongoc_cluster_preselect



 Comments   
Comment by A. Jesse Jiryu Davis [ 24/Dec/15 ]

This was determined not to be a C Driver bug, correct?

Comment by Remi Collet [ 08/Dec/15 ]

Ok, right about the private API.

I just open https://github.com/mongodb/mongo-php-driver/pull/154 just to better check this.

Comment by Hannes Magnusson [ 08/Dec/15 ]

Thats not strictly our ABI.

pecl/mongodb uses the -priv.so, not actual exported API or traditionally shipped ABI.

That is the reason why pecl/mongodb literally embeds mongoc into itself without compiling "against it".

This is something we are working on, and the PHP team is reviewing which private symbols their are using and compiling a list and looking into why - which we hope to make into stable public API for our next release.
This work is taking the team a tad longer then expected so we don't know if we can make all the symbols available for 1.4, but we'll do so as soon as we possibly can.

Generated at Wed Feb 07 21:11:22 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.