From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id BC4EB431FC3 for ; Mon, 7 Oct 2013 15:33:33 -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 b0AYO4UyDqMM for ; Mon, 7 Oct 2013 15:33:27 -0700 (PDT) Received: from dmz-mailsec-scanner-8.mit.edu (dmz-mailsec-scanner-8.mit.edu [18.7.68.37]) by olra.theworths.org (Postfix) with ESMTP id 7011F431FAE for ; Mon, 7 Oct 2013 15:33:27 -0700 (PDT) X-AuditID: 12074425-b7f1c8e0000009c7-12-525336b60477 Received: from mailhub-auth-1.mit.edu ( [18.9.21.35]) by dmz-mailsec-scanner-8.mit.edu (Symantec Messaging Gateway) with SMTP id E9.58.02503.6B633525; Mon, 7 Oct 2013 18:33:26 -0400 (EDT) Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) by mailhub-auth-1.mit.edu (8.13.8/8.9.2) with ESMTP id r97MXP4C008284 for ; Mon, 7 Oct 2013 18:33:26 -0400 Received: from drake.dyndns.org (26-4-172.dynamic.csail.mit.edu [18.26.4.172]) (authenticated bits=0) (User authenticated as amdragon@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id r97MXNoR028497 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT) for ; Mon, 7 Oct 2013 18:33:25 -0400 Received: from amthrax by drake.dyndns.org with local (Exim 4.77) (envelope-from ) id 1VTJMh-0006bf-IN for notmuch@notmuchmail.org; Mon, 07 Oct 2013 18:33:23 -0400 From: Austin Clements To: notmuch@notmuchmail.org Subject: [PATCH 00/11] Fix search tagging races Date: Mon, 7 Oct 2013 18:33:10 -0400 Message-Id: <1381185201-25197-1-git-send-email-amdragon@mit.edu> X-Mailer: git-send-email 1.8.4.rc3 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuplkeLIzCtJLcpLzFFi42IR4hRV1t1mFhxkcGS3pcX1mzOZHRg9nq26 xRzAGMVlk5Kak1mWWqRvl8CVcWv9XPaCT2wV847fZW9gPM/axcjJISFgInFk2x1mCFtM4sK9 9WwgtpDAPkaJv4u0IexzjBJbGxy6GLmA7IdMEndWXWKGSOxmlOhcZQ5iswloSGzbv5wRxBYR kJbYeXc22AJhAX2J6d1TWEBsFgFViVNXn4At4BVwkOh9dp4JYrGSxMJT21gnMPIsYGRYxSib klulm5uYmVOcmqxbnJyYl5dapGuhl5tZopeaUrqJEeRrdhfVHYwTDikdYhTgYFTi4c04GhQk xJpYVlyZe4hRkoNJSZT3gXFwkBBfUn5KZUZicUZ8UWlOavEhRgkOZiURXgEjoBxvSmJlVWpR PkxKmoNFSZz3Fod9kJBAemJJanZqakFqEUxWhoNDSYL3jglQo2BRanpqRVpmTglCmomDE2Q4 D9DwNSA1vMUFibnFmekQ+VOMilLivB9BEgIgiYzSPLheWCy+YhQHekWYl8UUqIoHGMdw3a+A BjMBDdZlDwQZXJKIkJJqYAxOcNBgYxObuPXitP17DmkuPO8Rf0zTvObC4aDHCf0CVTlb9G/M 4UzL+HLtg7S6+e0tx0MDPFr19ll/45DIMGqYuEbs1o7ChxcjnqaZ/t7r8i/8bXJ9yfdrHpf6 pq3hOvvinegO8byzfs8kdk4qfVX8c+kV7jlhklYfZ71nNz0vufa+PZ9zWZASS3FGoqEWc1Fx IgBWwaaPoAIAAA== 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: Mon, 07 Oct 2013 22:33:34 -0000 I was hacking on undo support for notmuch-emacs and sort of accidentally wrote this instead. This series fixes a set of well-known races where tagging from search-mode unexpectedly affects messages that arrived after the search was performed (and hence the user doesn't know they're tagging them). We've attacked this a few times before, but have always run up against something that was missing. It turns out the pieces are finally all in place. The first five patches just clean various things up in preparation. Patches 6 and 7 add support for tagging large queries, which would otherwise become a problem when later patches start using explicit message ID-based queries for tagging. The remaining four patches actually fix the search tagging races using explicit message ID-based queries. It's a fairly long series, but none of the patches are very big.