--- /dev/null
+Return-Path: <wking@tremily.us>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by olra.theworths.org (Postfix) with ESMTP id 200D1431FBC\r
+ for <notmuch@notmuchmail.org>; Thu, 2 Oct 2014 12:41:43 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.1\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.1 tagged_above=-999 required=5\r
+ tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
+ RCVD_IN_DNSWL_NONE=-0.0001] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+ by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id sxBMIq1Sfde6 for <notmuch@notmuchmail.org>;\r
+ Thu, 2 Oct 2014 12:41:39 -0700 (PDT)\r
+Received: from resqmta-po-10v.sys.comcast.net (resqmta-po-10v.sys.comcast.net\r
+ [96.114.154.169])\r
+ (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\r
+ (No client certificate requested)\r
+ by olra.theworths.org (Postfix) with ESMTPS id B0F73431FB6\r
+ for <notmuch@notmuchmail.org>; Thu, 2 Oct 2014 12:41:37 -0700 (PDT)\r
+Received: from resomta-po-14v.sys.comcast.net ([96.114.154.238])\r
+ by resqmta-po-10v.sys.comcast.net with comcast\r
+ id yKeE1o00158ss0Y01KhcD2; Thu, 02 Oct 2014 19:41:36 +0000\r
+Received: from odin.tremily.us ([24.18.63.50])\r
+ by resomta-po-14v.sys.comcast.net with comcast\r
+ id yKhb1o00C152l3L01KhbKS; Thu, 02 Oct 2014 19:41:36 +0000\r
+Received: by odin.tremily.us (Postfix, from userid 1000)\r
+ id DD31A13E8F25; Thu, 2 Oct 2014 12:41:34 -0700 (PDT)\r
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tremily.us; s=odin;\r
+ t=1412278894; bh=O2cBIB7jTFDxjqukbJuHzOPTC3oLSdqPHL/wEYcJN0o=;\r
+ h=Date:From:To:Cc:Subject:References:In-Reply-To;\r
+ b=baXXcoT/rJf6/NHhmo4t02CC5nfjjZoAMJeLN4sKo9rjAP5C/iOoHS6OR30YINrw9\r
+ txS3jZrNrIQFfLNSTpsNcDEQAvUdkqavBn2XCvQCfVhwaRrQQLgVs78rfphj0FpyDt\r
+ SgywKu73i7u1XpCwE7hkyQHhsZwaWjmeMRfuqmtc=\r
+Date: Thu, 2 Oct 2014 12:41:34 -0700\r
+From: "W. Trevor King" <wking@tremily.us>\r
+To: Austin Clements <aclements@csail.mit.edu>\r
+Subject: Re: [PATCH v4] lib: Simplify close and codify aborting atomic section\r
+Message-ID: <20141002194134.GP3770@odin.tremily.us>\r
+References: <87mw9ee0vf.fsf@csail.mit.edu>\r
+ <1412277548-3445-1-git-send-email-aclements@csail.mit.edu>\r
+MIME-Version: 1.0\r
+Content-Type: multipart/signed; micalg=pgp-sha1;\r
+ protocol="application/pgp-signature"; boundary="o6HUWsywbRjTg5uW"\r
+Content-Disposition: inline\r
+In-Reply-To: <1412277548-3445-1-git-send-email-aclements@csail.mit.edu>\r
+OpenPGP: id=39A2F3FA2AB17E5D8764F388FC29BDCDF15F5BE8;\r
+ url=http://tremily.us/pubkey.txt\r
+User-Agent: Mutt/1.5.23 (2014-03-12)\r
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net;\r
+ s=q20140121; t=1412278896;\r
+ bh=faIeKtbIFY36XTV19ZnnHdUyOUQFb6Gk3sq2XMAvSCQ=;\r
+ h=Received:Received:Received:Date:From:To:Subject:Message-ID:\r
+ MIME-Version:Content-Type;\r
+ b=FwrbQu+MOthsa7Vz7UsplJSW2bGWtE+ubbSgSmyq9WDfvQwlCvxmOIAeB1l+sSeNB\r
+ If3Fr7RFnuYKkfLrCiud3zRaMTQdwbEiIcpYZIRBncL3esAVVXYX6ehnGTWSqihhup\r
+ 9a+o5LwyqDZADMy9MIvw+wKxdGA3uD4orV72c31rfS6e/4Cr4h0edDIYFQNwVWQTu7\r
+ 0kyOHsJHcBEzMPBtBZdPfyUpIuSeFNYwjjy4syxe05ko8yaqhtUhoqQspq+uZLbG4B\r
+ lClagwY0sFMtCyf4QtAA9uu5Xrol8O2NxLlndHu7ljg2v83lFVOiY0hQh3zWX8OY1m\r
+ f8by3CnX5+Ufg==\r
+Cc: notmuch@notmuchmail.org\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Thu, 02 Oct 2014 19:41:43 -0000\r
+\r
+\r
+--o6HUWsywbRjTg5uW\r
+Content-Type: text/plain; charset=utf-8\r
+Content-Disposition: inline\r
+Content-Transfer-Encoding: quoted-printable\r
+\r
+On Thu, Oct 02, 2014 at 03:19:08PM -0400, Austin Clements wrote:\r
+> This patch simplifies notmuch_database_close to explicitly abort any\r
+> outstanding transaction and then just call Database::close. This\r
+> works for both read-only and read/write databases, takes care of\r
+> committing changes, unifies the exception handling path, and codifies\r
+> aborting outstanding transactions.\r
+\r
+I don't expect atomic blocks are particularly useful for read-only\r
+connections. If they aren't, I'd quibble with the =E2=80=9CThis works for\r
+both read-only=E2=80=A6=E2=80=9D wording above. If they are, I'd drop the =\r
+read/write\r
+check below:\r
+\r
+> + /* If there's an outstanding transaction, it's unclear if\r
+> + * closing the Xapian database commits everything up to\r
+> + * that transaction, or may discard committed (but\r
+> + * unflushed) transactions. To be certain, explicitly\r
+> + * cancel any outstanding transaction before closing. */\r
+> + if (notmuch->mode =3D=3D NOTMUCH_DATABASE_MODE_READ_WRITE &&\r
+> + notmuch->atomic_nesting)\r
+> + (static_cast <Xapian::WritableDatabase *> (notmuch->xapian_db))\r
+> + ->cancel_transaction ();\r
+\r
+Thats a very minor quibble though, and I'd be glad to see this patch\r
+land as is.\r
+\r
+Cheers,\r
+Trevor\r
+\r
+--=20\r
+This email may be signed or encrypted with GnuPG (http://www.gnupg.org).\r
+For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy\r
+\r
+--o6HUWsywbRjTg5uW\r
+Content-Type: application/pgp-signature; name="signature.asc"\r
+Content-Description: OpenPGP digital signature\r
+\r
+-----BEGIN PGP SIGNATURE-----\r
+Version: GnuPG v2\r
+\r
+iQIcBAEBAgAGBQJULapsAAoJEG8/JgBt8ol8GN4QAOFz/qxrPe+yBpxImBYdcwFC\r
+/pVN73sS+1n8nlNtZn+r7HLIJZIvSd56jKTeE9+kopLZ2wqUiyr8xT8V2iY5oUu6\r
+sVLP/YV6hxqeu+bkT/kWhzAZz2VFKdnKeKWL/Oz89ZUDH6PFAyJxcA0eID12+Ojw\r
+EnqjCSRqXv1T4vCFsMWEsFN4mwW3yC258Wgoa3xZwOsxR7eQ+bxKfP7J+hhPj/Tt\r
+7Vj5wP6bPojjSol+r15uaeFthSE5ZN56myQvvybUHMvGMvAgOT/0N8MS5UwOhmtW\r
+BRtvVs2kmCDrVKLYVdb8R5pp28ClF4yj9PlQkR5lE829t6fJnyu91w8aen5FZ7vw\r
+rqrgv5b8N931IxNEG3mcN5MH4lrohUVWWxenqyvqCJz1ijp3bjJIOszhqGv+oC6V\r
+5PVDaFP8oIjsmHjf4V/w0EzhTtzdg+7vXCTmQIxrBUhDwRudmAMCmyEhQAHFDzoY\r
+VxwZBaEbrYdoI4tkbW5gelfXS722gZa8CnmAEYQ7yKPOtTIgaEk1kP+sjTakNh1q\r
+sBHS8kezjwiAeH4BbqEOyo273f2vv1iI3z7od/tCDLF6k1miFXUURs+0qGsYglvs\r
+AX9yh3YgtxqQbaIT6w2LbB6djbshGTILBW27F6trm4ci6w7gkqxC5x0jo+b/X7YP\r
+PLFsWNT3UESGIV2BYsj4\r
+=aGWW\r
+-----END PGP SIGNATURE-----\r
+\r
+--o6HUWsywbRjTg5uW--\r