From 91d897c57591099e482feb8799bd6899251e48a8 Mon Sep 17 00:00:00 2001 From: Pieter Praet Date: Tue, 5 Jul 2011 21:04:55 +0200 Subject: [PATCH] Re: [PROTO] possible solution for "Race condition for '*' command" --- 8b/ee159b3da091e18a843690180c890cd86963e7 | 84 +++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 8b/ee159b3da091e18a843690180c890cd86963e7 diff --git a/8b/ee159b3da091e18a843690180c890cd86963e7 b/8b/ee159b3da091e18a843690180c890cd86963e7 new file mode 100644 index 000000000..c6989cdb7 --- /dev/null +++ b/8b/ee159b3da091e18a843690180c890cd86963e7 @@ -0,0 +1,84 @@ +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 1C4E6431FD0 + for ; Tue, 5 Jul 2011 12:05:01 -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 4BUepHQQyEQw for ; + Tue, 5 Jul 2011 12:05:00 -0700 (PDT) +Received: from mail-wy0-f181.google.com (mail-wy0-f181.google.com + [74.125.82.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 0DB5E431FB6 + for ; Tue, 5 Jul 2011 12:04:59 -0700 (PDT) +Received: by wyh22 with SMTP id 22so4842771wyh.26 + for ; Tue, 05 Jul 2011 12:04:58 -0700 (PDT) +Received: by 10.227.184.65 with SMTP id cj1mr6552746wbb.51.1309892698560; + Tue, 05 Jul 2011 12:04:58 -0700 (PDT) +Received: from localhost ([109.131.155.31]) + by mx.google.com with ESMTPS id fi5sm5522913wbb.56.2011.07.05.12.04.56 + (version=TLSv1/SSLv3 cipher=OTHER); + Tue, 05 Jul 2011 12:04:57 -0700 (PDT) +From: Pieter Praet +To: Austin Clements +Subject: Re: [PROTO] possible solution for "Race condition for '*' command" +In-Reply-To: <87sjqldgr7.fsf@praet.org> +References: <20110703171743.GL15901@mit.edu> + <1309762318-4530-1-git-send-email-pieter@praet.org> + + <87sjqldgr7.fsf@praet.org> +User-Agent: Notmuch/0.5-329-g1bb6068 (http://notmuchmail.org) Emacs/23.1.50.1 + (x86_64-pc-linux-gnu) +Date: Tue, 05 Jul 2011 21:04:55 +0200 +Message-ID: <87iprg7dm0.fsf@praet.org> +MIME-Version: 1.0 +Content-Type: text/plain; charset=us-ascii +Cc: Notmuch Mail +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, 05 Jul 2011 19:05:01 -0000 + +On Mon, 04 Jul 2011 20:48:12 +0200, Pieter Praet wrote: +> On Mon, 04 Jul 2011 13:56:26 -0400, Austin Clements wrote: +> > I should probably emit two lists per thread: one of matched IDs and +> > one of unmatched IDs. Tagging a region can then operate on the +> > concatenation of these, while * can operate only on the matched +> > lists. This should be easy to do. I'll send an updated patch when I'm +> > back at a computer. +> +> The matched MsgIds will be sufficient, as we'll want to operate on +> either the matched messages or the entire thread (for which the +> `thread-id' property is already present). +> +> Can't think of a use case for non-matched messages right now, +> but if required, we'll just use `set-exclusive-or'. + +Wasn't thinking clearly: + +You're right, we *will* be needing both a list of matched as well as one +of unmatched Message-Id's per result. Otherwise there would still be a +potential race condition when tagging with +/-. + + +Peace + +-- +Pieter -- 2.26.2