From 6d0847fbb889a1d9b012fff43fc11ffdb2d3acec Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Tue, 14 Aug 2012 14:57:13 +0200 Subject: [PATCH] =?utf8?q?Re:=20=E2=80=98class=20Xapian::Database=E2=80=99?= =?utf8?q?=20has=20no=20member=20named=20=E2=80=98close=E2=80=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- 30/0fa239dfaed5db7b2c8453a3f19c27b91c39d8 | 116 ++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 30/0fa239dfaed5db7b2c8453a3f19c27b91c39d8 diff --git a/30/0fa239dfaed5db7b2c8453a3f19c27b91c39d8 b/30/0fa239dfaed5db7b2c8453a3f19c27b91c39d8 new file mode 100644 index 000000000..b264b8c41 --- /dev/null +++ b/30/0fa239dfaed5db7b2c8453a3f19c27b91c39d8 @@ -0,0 +1,116 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id 0889C431FB6 + for ; Tue, 14 Aug 2012 05:57:24 -0700 (PDT) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: -0.7 +X-Spam-Level: +X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 + tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id VQUuaCR1H7r6 for ; + Tue, 14 Aug 2012 05:57:23 -0700 (PDT) +Received: from mail-gg0-f181.google.com (mail-gg0-f181.google.com + [209.85.161.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 69EC8431FAE + for ; Tue, 14 Aug 2012 05:57:23 -0700 (PDT) +Received: by ggmb6 with SMTP id b6so510412ggm.26 + for ; Tue, 14 Aug 2012 05:57:22 -0700 (PDT) +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=google.com; s=20120113; + h=from:to:subject:in-reply-to:references:user-agent:date:message-id + :mime-version:content-type:content-transfer-encoding + :x-gm-message-state; + bh=DmAOBiBC7M46bZfRQHsCfRxICV9EQ/AIx2SzW3xgMns=; + b=hKkrh4mg6WgPhmPDF9SCaso64jSagnPjB88i59caCAUjd78ARG4A1OrU+0FkdH8ToN + u2U1FTCFK7NxeEYznSXbA/hgnyUdqghSbooqwSbUJQ8GcSLfTc5DoFWMqfpmdkX8m4Wv + /ZJfYllzyUL2Hgxdeg4FGDTwaJ04qB80WDDC0efuzRyDyMtUkRs6QZHXR89s+ZIFB4TQ + qTmzR0xtAIwVwD56/6usPJnTM34kYOQBh75CHT+PC9h3K65pj4rrOcM0Qrf8T7zjKY5H + WTm/nllb6fIcRMdCGtFEsQGgjaL2gXG588ZlDArnGlQB8g8v/ZrQx8ElsXQuXvirur47 + k4XQ== +Received: by 10.236.136.39 with SMTP id v27mr11549192yhi.96.1344949042587; + Tue, 14 Aug 2012 05:57:22 -0700 (PDT) +Received: from localhost ([2001:4b98:dc0:43:216:3eff:fe1b:25f3]) + by mx.google.com with ESMTPS id c64sm4677778yhj.17.2012.08.14.05.57.18 + (version=SSLv3 cipher=OTHER); Tue, 14 Aug 2012 05:57:21 -0700 (PDT) +From: Jani Nikula +To: Michal Nazarewicz , David Bremner , + notmuch@notmuchmail.org +Subject: Re: =?utf-8?Q?=E2=80=98class_Xapian=3A=3ADatabase=E2=80=99?= has no + member named =?utf-8?B?4oCYY2xvc2XigJk=?= +In-Reply-To: +References: + <87a9xx4yuj.fsf@maritornes.cs.unb.ca> +User-Agent: Notmuch/0.13.2+131~gff9267e (http://notmuchmail.org) Emacs/23.2.1 + (x86_64-pc-linux-gnu) +Date: Tue, 14 Aug 2012 14:57:13 +0200 +Message-ID: <87fw7p1viu.fsf@nikula.org> +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: quoted-printable +X-Gm-Message-State: + ALoCoQmAWGn+8xlrRJGnxezmo7kwSxyZt7fZJdbI7HjuTDoeQKr9w2qwCs2HpDQKd6W3iGkg7wtD +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Tue, 14 Aug 2012 12:57:24 -0000 + +On Tue, 14 Aug 2012, Michal Nazarewicz wrote: +> Yeah, it seems that INSTALL claims =E2=80=9CNotmuch will work best with X= +apian +> 1.0.18 (or later) or Xapian 1.1.4 (or later)=E2=80=9D, which doesn't seem= + to be +> the case. +> +> On top of that, configure does not seem to even check the version +> number. + +Someone(tm) should fix both of the above. + +> Is close() really required though? The comment justifies it saying +> that: +> +> Many Xapian objects hold references to the database, so merely +> deleting the database may not suffice to close it. Thus, we +> explicitly close it here. +> +> but wouldn't the database get closed when the last reference gets +> deleted anyway? + +IIRC this was related to how closing is handled in the python +bindings. The close was introduced in the commit below, not too long +ago. I just reverted that one when I had to use notmuch with ancient +xapian (but the usual disclaimers apply). + +BR, +Jani. + + +commit cfc5f1059aa16753cba610c41601cacc97260e08 +Author: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Fri Mar 2 15:58:39 2012 +0100 + + Actually close the xapian database in notmuch_database_close +=20=20=20=20 + Formerly the xapian database object was deleted and closed in its + destructor once the object was garbage collected. Explicitly call + close() so that the database and the associated lock is released + immediately. +=20=20=20=20 + The comment is a courtesy of Austin Clements. +=20=20=20=20 + Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de> -- 2.26.2