[Gluster-devel] libgfapi version format change affecting QEMU-GlusterFS

Anand Avati avati at gluster.org
Sat Jan 25 10:11:06 UTC 2014


On Sat, Jan 25, 2014 at 1:58 AM, Harshavardhana
<harsha at harshavardhana.net>wrote:

> > QEMU uses pkg-config to get the version of libgfapi and accordingly
> enable
> > features. Currently, it checks for version 3 for base libgfapi support,
> > version 5 for discard API support and version 6 for zerofill API support.
> >
> > However with recent commit c2b09dc87, libgfapi version changed from 6 to
> > 0.0.6. So the question now is:
> >
> > Will there be any major/minor release of GlusterFS that will go out with
> > libgfapi version as 6 which QEMU should support or should QEMU just
> switch
> > over to using 0.0.6 ?
>
> 0.0.6 version from '6' - change was to address linking concerns and
> provide versioning
> support to not break linking objects in future while there are
> internal API changes.
>
> Sorry for the trouble it was an overlook on our part.
>
> Ideally it would have been great to check for GLFS_API_VERSION in 'glfs.h'
>  than
>  `pkg-config` so that all other third party linking objects could just
> probe this in their
> build rather than relying on `pkg-config` to make it more portable.
>
> AFAICS the patch only exists in 'master' branch its not present on
> release-3.5 or 3.4
> might not cause any trouble for QEMU in near future? or do you wish to
> have both
> version styles to make it backward compatible even on 'master' branch?
>
> Thanks
> --
>


This needs to be sorted out. I'm not (yet) sure if we needed the X.Y.Z
libtool versioning. Gfapi has been following the "do not change an
interface once published" model, and only new APIs are added along with a
bump in the corresponding pkg-version number. This is probably a
safer/platform independent model than using libtool versioning.

Avati
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://supercolony.gluster.org/pipermail/gluster-devel/attachments/20140125/2ebb70ff/attachment-0001.html>


More information about the Gluster-devel mailing list