1 Return-Path: <alpine.art.de@gmail.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 arlo.cworth.org (Postfix) with ESMTP id 90A6C6DE0FFA
\r
6 for <notmuch@notmuchmail.org>; Sun, 28 Feb 2016 06:44:10 -0800 (PST)
\r
7 X-Virus-Scanned: Debian amavisd-new at cworth.org
\r
11 X-Spam-Status: No, score=-0.319 tagged_above=-999 required=5 tests=[AWL=0.501,
\r
12 DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001,
\r
13 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01,
\r
14 SPF_PASS=-0.001] autolearn=disabled
\r
15 Received: from arlo.cworth.org ([127.0.0.1])
\r
16 by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024)
\r
17 with ESMTP id offpM1yQcsfH for <notmuch@notmuchmail.org>;
\r
18 Sun, 28 Feb 2016 06:44:08 -0800 (PST)
\r
19 Received: from mail-wm0-f47.google.com (mail-wm0-f47.google.com
\r
20 [74.125.82.47]) by arlo.cworth.org (Postfix) with ESMTPS id 354B06DE0B20 for
\r
21 <notmuch@notmuchmail.org>; Sun, 28 Feb 2016 06:44:08 -0800 (PST)
\r
22 Received: by mail-wm0-f47.google.com with SMTP id n186so16537959wmn.1
\r
23 for <notmuch@notmuchmail.org>; Sun, 28 Feb 2016 06:44:08 -0800 (PST)
\r
24 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
\r
25 h=date:from:subject:to:references:in-reply-to:user-agent:message-id
\r
26 :mime-version:content-transfer-encoding;
\r
27 bh=XwNp+IW7Vd4xC1LLCOORv4oX0BQ59BQnqVFefUiiUTo=;
\r
28 b=0giU7M0XIILQftCPQR3ed6RRO155TGAmRNxBvJh8M+zG7+o184BQNpsTHCM608BSK3
\r
29 YaC+P3gOGC5K46+ObWoJMO2FT/GiNaF9/jMr8XHBC3o6n6eDBDRtmJmpElMpZiVSv1/x
\r
30 YDqlvRi/8UNyUrYfPlixGol7njGjDyBiM3jRhG5TJoK0lbjTAejgt7vduYO9c2zFen9P
\r
31 BxtqXqUsvWOTiMHYCYDu9nq+bhIIKxm1yT0lzqxwdRzDZdPcOsEOl9uvqVjTgPbQzrug
\r
32 TVtCGCDjmcAA1VhWdu1/5ZMaYTACA1bdxaF34GS86bij6l63RqTj2/b2rPjtjUDbp9hR
\r
34 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
\r
35 d=1e100.net; s=20130820;
\r
36 h=x-gm-message-state:date:from:subject:to:references:in-reply-to
\r
37 :user-agent:message-id:mime-version:content-transfer-encoding;
\r
38 bh=XwNp+IW7Vd4xC1LLCOORv4oX0BQ59BQnqVFefUiiUTo=;
\r
39 b=Qbz8bewjBLxWtsrDY6NHvQgZYLsv1hIE7ws+nOsnRMX+asCbNpegDfSPOtwlp41Tjm
\r
40 LqRvWGB5JW3saI3W6UccGXsz8d8qMb17b6vSNnDYvS6TG8RHcgfguLffTB5A1HgFFOYx
\r
41 QYuwCEJ3OfySyh7QH95h5ZguE8OnaItBRatNoPpQs6SvB4eNkcUK543LcRTB17b3ZrSL
\r
42 lFz1Ng3yamlNEQ/jYEHLqIlUCVwZbw1VRMsDBG6XJzNCx7uN9nf7hV2w2QXa5p84GK5+
\r
43 rUIDqnOrwEnnLtyXemxfK4iCEjGt/QIJ1zZqCjwJ+tk9hUvyzfnUJqQBoy+UBtVZ/tDy
\r
46 AD7BkJIc5gqe2cr2tEyIVXtrm5I1IgSnmsWbItyzcjA9pHS4B7NysSq2HDBxssmzSgoSgQ==
\r
47 X-Received: by 10.194.95.40 with SMTP id dh8mr11754928wjb.146.1456670646839;
\r
48 Sun, 28 Feb 2016 06:44:06 -0800 (PST)
\r
49 Received: from localhost (p579BA378.dip0.t-ipconnect.de. [87.155.163.120])
\r
50 by smtp.gmail.com with ESMTPSA id k8sm21448021wjr.38.2016.02.28.06.44.05
\r
51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
\r
52 Sun, 28 Feb 2016 06:44:05 -0800 (PST)
\r
53 Date: Sun, 28 Feb 2016 14:46:07 +0000
\r
54 From: Franz Fellner <alpine.art.de@gmail.com>
\r
55 Subject: Re: need to call notmuch_threads_get (..) to actually move iterator
\r
56 To: Gaute Hope <eg@gaute.vetsj.com>, notmuch@notmuchmail.org
\r
57 References: <1456315381-astroid-1-8aih8mdal8-11676@strange>
\r
58 <1456669181-astroid-0-hsim583msj-27330@TP_L520>
\r
59 In-Reply-To: <1456669181-astroid-0-hsim583msj-27330@TP_L520>
\r
60 User-Agent: astroid/v0.5-61-gab5b649c (https://github.com/gauteh/astroid)
\r
61 Message-Id: <1456670385-astroid-0-hgj454pqy2-29417@TP_L520>
\r
63 Content-Type: text/plain; charset=utf-8; format=flowed
\r
64 Content-Transfer-Encoding: quoted-printable
\r
65 X-BeenThere: notmuch@notmuchmail.org
\r
66 X-Mailman-Version: 2.1.20
\r
68 List-Id: "Use and development of the notmuch mail system."
\r
69 <notmuch.notmuchmail.org>
\r
70 List-Unsubscribe: <https://notmuchmail.org/mailman/options/notmuch>,
\r
71 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
72 List-Archive: <http://notmuchmail.org/pipermail/notmuch/>
\r
73 List-Post: <mailto:notmuch@notmuchmail.org>
\r
74 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
75 List-Subscribe: <https://notmuchmail.org/mailman/listinfo/notmuch>,
\r
76 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
77 X-List-Received-Date: Sun, 28 Feb 2016 14:44:10 -0000
\r
79 Really might be the issue: Threads with many messages duplicate more
\r
80 often than messages with few messages. Threads with only one message
\r
81 never seem to come up more than twice.
\r
82 Currently I don't have the time to track down what actually get's stored
\r
83 in match_set, would be nice if a dev could shed some light on it. Thx!
\r
85 Excerpts from Franz Fellner's message of Februar 28, 2016 3:26 :
\r
86 > It might be I found the issue:
\r
87 > One big thing notmuch_threads_get does is remove the thread_id from the
\r
88 > match_set. Playing with astroid (branch ti-skip-and-load) i see that it
\r
89 > is not entirely true that the iterator doesn't move. It just seems to
\r
90 > duplicate some messages. There definitely are coming new messages.
\r
91 > So my explanation is that match_set contains duplicate thread_ids. If
\r
92 > that is true a solution to Gautes problem might be to deduplicate the
\r
95 > Excerpts from Gaute Hope's message of Februar 24, 2016 1:08 :
\r
98 >> it seems to be necessary to actually call notmuch_threads_get (threads)
\r
99 >> to move the thread iterator from a query object, just calling
\r
100 >> notmuch_threads_move_to_next (..) is not enough:
\r
104 >> notmuch_query_t *query;
\r
105 >> notmuch_threads_t *threads;
\r
106 >> notmuch_thread_t *thread;
\r
108 >> query =3D notmuch_query_create (database, query_string);
\r
109 >> threads =3D notmuch_query_search_threads (query);
\r
114 >> notmuch_threads_valid (threads);
\r
115 >> notmuch_threads_move_to_next (threads))
\r
118 >> * with this line commented out the iterator seems to remain in
\r
119 >> * place, and if I below do another loop it will start from the
\r
122 >> thread =3D notmuch_threads_get (threads);
\r
124 >> notmuch_thread_destroy (thread);
\r
128 >> if (i > 100) break;
\r
132 >> notmuch_threads_valid (threads);
\r
133 >> notmuch_threads_move_to_next (threads))
\r
135 >> /* the thread acquired here will be the first thread in the query.
\r
136 >> * it should be the 101th. */
\r
138 >> thread =3D notmuch_threads_get (threads);
\r
140 >> notmuch_thread_destroy (thread);
\r
145 >> notmuch_query_destroy (query);
\r
148 >> It is quite slow to skip the threads in this way, might it be faster if
\r
149 >> move_to_next works correctly?
\r
153 >> _______________________________________________
\r
154 >> notmuch mailing list
\r
155 >> notmuch@notmuchmail.org
\r
156 >> https://notmuchmail.org/mailman/listinfo/notmuch
\r