Re: [PATCH] lib: add support for thread:<message-id> queries

Subject: Re: [PATCH] lib: add support for thread:<message-id> queries

Date: Tue, 17 Oct 2017 14:33:00 -0400

To: Jani Nikula, notmuch@notmuchmail.org

Cc:

From: Daniel Kahn Gillmor


On Mon 2017-10-16 22:07:54 +0300, Jani Nikula wrote:
> Add support for querying threads using message-ids in addition to
> thread-ids. The main benefit is that thread queries via message-ids
> are portable across databases, re-indexing, and thread joining, while
> thread ids can be somewhat transient. A thread:<message-id> query can
> be shared between notmuch users, while a thread:<thread-id> query may
> cease to work after the regular delivery of a message that joins
> threads.
>
> What previously required:
>
> $ notmuch search $(notmuch search --output=threads id:<message-id>)
>
> can now be reduced to:
>
> $ notmuch search thread:<message-id>
>
> We limit the query to message-ids that have @ to optimize regular
> thread-id queries and to avoid collisions with thread-ids which are
> guaranteed (or which we can guarantee) to not contain @. This seems
> reasonable, as valid message-ids will have @.
>
> The performance penalty for regular thread-id queries seems to be
> neglible, and thread queries via message-ids seem to be about 10%
> slower than the direct thread-id query counterpart.

The rationale for this patch really good.  This is functionality we
should make available directly without the shell substitution
shenanigans described above, and i like the elegance of determining
whether it's a message-id or a thread id based on the presence of an '@'
symbol.

i have read the patch and it seems reasonable to me, though i'm not
particularly confident in my ability to catch any subtle bugs in logic
about manipulating Xapian.

I think we should adopt this proposal, though i welcome additional
review from people with more Xapian-fu than myself.

       --dkg
signature.asc (application/pgp-signature)
_______________________________________________
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch

Thread: