From: David Bremner <david@tethera.net>
To: Istvan Marko <notmuch@kismala.com>, notmuch@notmuchmail.org
Subject: Re: [PATCH] Use the Xapian::DB_RETRY_LOCK flag when available
Date: Tue, 03 May 2016 16:01:44 -0300 [thread overview]
Message-ID: <8760uv6k4n.fsf@zancas.localnet> (raw)
In-Reply-To: <m38tzr2n6v.fsf@zsu.kismala.com>
Istvan Marko <notmuch@kismala.com> writes:
> Xapian 1.3 has introduced the DB_RETRY_LOCK flag (Xapian bug
> 275). Detect it in configure and use it if available. With this flag
> commands that need the write lock will wait for their turn instead of
> aborting when it's not immediately available.
> ---
> configure | 25 ++++++++++++++++++++++++-
> lib/database.cc | 5 +++++
> 2 files changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 6231d2b..0c1d5bc 100755
> --- a/configure
> +++ b/configure
> @@ -371,6 +371,21 @@ if [ ${have_xapian} = "1" ]; then
> esac
> fi
>
> +# DB_RETRY_LOCK is only supported on Xapian > 1.3.2
> +have_xapian_db_retry_lock=0
> +if [ ${have_xapian} = "1" ]; then
> + printf "Checking for Xapian lock retry support... "
> + case "${xapian_version}" in
> + 0.*|1.[012].*|1.3.[0-2])
> + printf "No (only available with Xapian > 1.3.2).\n" ;;
> + [1-9]*.[0-9]*.[0-9]*)
> + have_xapian_db_retry_lock=1
> + printf "Yes.\n" ;;
> + *)
> + printf "Unknown version.\n" ;;
> + esac
> +fi
First, thanks for writing the patch. I'd completely forgotten about this
feature, and it's something pretty important for many notmuch users. I
saw you got some good feedback from Jani. As a less urgent comment, what
about writing the test in the style of
http://article.gmane.org/gmane.mail.notmuch.general/22329
I don't know if there's complete concensus on this, but I personally
much prefer testing features to versions when possible.
d
prev parent reply other threads:[~2016-05-03 19:01 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-03 15:09 [PATCH] Use the Xapian::DB_RETRY_LOCK flag when available Istvan Marko
2016-05-03 16:31 ` Jani Nikula
2016-05-03 19:12 ` [PATCH v2] " Istvan Marko
2016-05-05 10:33 ` David Bremner
2016-06-04 12:29 ` v3 of DB_RETRY_LOCK David Bremner
2016-06-04 12:29 ` [PATCH 1/4] Use the Xapian::DB_RETRY_LOCK flag when available David Bremner
2016-06-04 12:29 ` [PATCH 2/4] test: factor out some boilerplate from C tests David Bremner
2016-06-04 12:37 ` [PATCH] fixup! " David Bremner
2016-06-14 0:57 ` [PATCH 2/4] " David Bremner
2016-06-04 12:29 ` [PATCH 3/4] test: initial tests for locking retry David Bremner
2016-06-04 12:29 ` [PATCH 4/4] lib: add built_with handling for XAPIAN_DB_RETRY_LOCK David Bremner
2016-06-04 12:38 ` [PATCH] fixup! " David Bremner
2016-05-03 19:01 ` David Bremner [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8760uv6k4n.fsf@zancas.localnet \
--to=david@tethera.net \
--cc=notmuch@kismala.com \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).