[PATCH] lib: work around xapian bug with get_mset(0,0, x)

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Apr 19 07:12:51 PDT 2018


On Wed 2018-04-18 20:13:54 -0300, David Bremner wrote:
> Daniel Kahn Gillmor <dkg at fifthhorseman.net> writes:
>> On Fri 2018-04-06 08:43:07 -0300, David Bremner wrote:
>>> At least Fedora28 triggers this Xapian bug due to some toolchain change .
>>>
>>>    https://bugzilla.redhat.com/show_bug.cgi?id=1546162
>>>
>>> The underlying bug is fixed in xapian commit f92e2a936c1592, and
>>> should be fixed in Xapian 1.4.6
>>
>> is there any way that we can apply this change only if we detect that
>> we're running with an unfixed version of Xapian?
>
> It's possible, but I think we'd need a new configure check, and some
> ifdefs. We could consider doing that later, but I don't think it's the
> right approach for a bugfix release.

I was thinking of a runtime check, not a compile-time check -- to ensure
that we drop the workaround as soon as the library is upgraded beneath
us.

But if we want a compile-time check, i don't think we'd need anything
fancier than something like (potentially even directly in query.cc):

    #if XAPIAN_AT_LEAST(1,4,6)
    #define MSET_GET_MIN_COUNT 0
    #else
    #define MSET_GET_MIN_COUNT 1
    #endif

what else were you thinking we'd need?

     --dkg


More information about the notmuch mailing list