1 Return-Path: <patricktotzke@googlemail.com>
\r
2 X-Original-To: notmuch@notmuchmail.org
\r
3 Delivered-To: notmuch@notmuchmail.org
\r
4 Received: from localhost (localhost [127.0.0.1])
\r
5 by olra.theworths.org (Postfix) with ESMTP id 9BC86431FD0
\r
6 for <notmuch@notmuchmail.org>; Thu, 26 May 2011 01:31:26 -0700 (PDT)
\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
\r
11 X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5
\r
12 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,
\r
13 FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled
\r
14 Received: from olra.theworths.org ([127.0.0.1])
\r
15 by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)
\r
16 with ESMTP id 2tIukY+nYDmV for <notmuch@notmuchmail.org>;
\r
17 Thu, 26 May 2011 01:31:25 -0700 (PDT)
\r
18 Received: from mail-ww0-f45.google.com (mail-ww0-f45.google.com
\r
19 [74.125.82.45]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client
\r
20 certificate requested) by olra.theworths.org (Postfix) with ESMTPS id
\r
21 B12C5431FB6 for <notmuch@notmuchmail.org>; Thu, 26 May 2011 01:31:25 -0700
\r
23 Received: by wwi36 with SMTP id 36so382374wwi.2
\r
24 for <notmuch@notmuchmail.org>; Thu, 26 May 2011 01:31:24 -0700 (PDT)
\r
25 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
\r
26 d=googlemail.com; s=gamma;
\r
27 h=domainkey-signature:subject:from:to:date:message-id:user-agent
\r
28 :content-transfer-encoding:mime-version:content-type;
\r
29 bh=T2ESQbAGTs2QzpnGBGyewFEWJKxAF+qsQVDgOJDxABs=;
\r
30 b=pBsBxcifgs0Qh5gL1R4CgJFOoNjuaQZuJLMKAc/ilr/WqRs6NgMYxJpEVvRE+eH9KO
\r
31 f8uaVp205S9+LytLRcD7eGRl5DdwUkpZZ/kp42VXyB+HwvkANjD5nYZ90whI2vwKawKm
\r
32 w+F6moIY0CV4GRAKPyA2spLHSPPvqI4FRCNH4=
\r
33 DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma;
\r
34 h=subject:from:to:date:message-id:user-agent
\r
35 :content-transfer-encoding:mime-version:content-type;
\r
36 b=jphURBIge7Dw76XC4FNPUNAF9wicRfN+8lHZCLh5c8GkTYlEMWe0Uqinnk/LcWP2SB
\r
37 E0xKlgOMvt+8/3xwXEj1Q0MHRkRZbVuRqmTBOulMk4HQdPr/TF9+RVNd6Ls1alwAQH4n
\r
38 8w7ICvUvImqlsnr0HhEbwlPMjJv5fz7fVK9Ok=
\r
39 Received: by 10.216.253.215 with SMTP id f65mr543335wes.14.1306398684433;
\r
40 Thu, 26 May 2011 01:31:24 -0700 (PDT)
\r
41 Received: from localhost (cpc1-sgyl2-0-0-cust47.sgyl.cable.virginmedia.com
\r
43 by mx.google.com with ESMTPS id n20sm223751weq.15.2011.05.26.01.31.21
\r
44 (version=TLSv1/SSLv3 cipher=OTHER);
\r
45 Thu, 26 May 2011 01:31:22 -0700 (PDT)
\r
46 Subject: one-time-iterators
\r
47 From: Patrick Totzke <patricktotzke@googlemail.com>
\r
48 To: notmuch <notmuch@notmuchmail.org>
\r
49 Date: Thu, 26 May 2011 09:31:19 +0100
\r
50 Message-Id: <1306397849-sup-3304@brick>
\r
52 Content-Transfer-Encoding: 8bit
\r
54 Content-Type: multipart/signed; boundary="=-1306398679-524650-9142-3184-2-=";
\r
55 protocol="application/pgp-signature"
\r
56 X-BeenThere: notmuch@notmuchmail.org
\r
57 X-Mailman-Version: 2.1.13
\r
59 List-Id: "Use and development of the notmuch mail system."
\r
60 <notmuch.notmuchmail.org>
\r
61 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
\r
62 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
63 List-Archive: <http://notmuchmail.org/pipermail/notmuch>
\r
64 List-Post: <mailto:notmuch@notmuchmail.org>
\r
65 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
66 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
\r
67 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
68 X-List-Received-Date: Thu, 26 May 2011 08:31:27 -0000
\r
71 --=-1306398679-524650-9142-3184-2-=
\r
72 Content-Type: text/plain; charset=UTF-8
\r
73 Content-Transfer-Encoding: quoted-printable
\r
77 I'm playing around with one-time iterators Threads in the python bindings=
\r
79 in combination with changes to the database.
\r
80 Particularly, I'd like to iterate over a list of threads partially,
\r
81 change the tags of a single thread and afterwards continue iterating.
\r
82 Of course I get "Xapian DB-changed" exceptions.
\r
83 As I see it, there are two possible solutions:
\r
84 First, I iterate over all the threads and cache all the info i'd like to =
\r
86 extract from each one (or just the id and re-query the info on demand).
\r
87 The problem here is, that this list of thread-ids might be huge and
\r
88 caching it will block my code.
\r
89 Secondly, I could replace the iterator i'm using with a fresh one after =
\r
91 db-changes. But then I'd need some magic that discards an initial
\r
92 portion of the (fresh) iteration and/or updates the pre-db-change
\r
95 Wow. This reads really complicated. All I want to say is:
\r
96 if I change tags in my search-results view, I get Xapian errors :)
\r
97 The question: How do you solve this in the emacs code?
\r
98 do you store all tids of a query? =
\r
105 --=-1306398679-524650-9142-3184-2-=
\r
106 Content-Disposition: attachment; filename="signature.asc"
\r
107 Content-Type: application/pgp-signature; name="signature.asc"
\r
109 -----BEGIN PGP SIGNATURE-----
\r
110 Version: GnuPG v1.4.11 (GNU/Linux)
\r
112 iEYEARECAAYFAk3eD9cACgkQlDQDZ9fWxaqPqgCgrOlLTjDD8g13LtETjofpnM9P
\r
113 LesAn3DBYkEIzgVp5Av476rpoKOhBhBG
\r
115 -----END PGP SIGNATURE-----
\r
117 --=-1306398679-524650-9142-3184-2-=--
\r