dovecot-1.2: Updated thread index documentation.
dovecot at dovecot.org
dovecot at dovecot.org
Wed Jul 2 09:45:40 EEST 2008
details: http://hg.dovecot.org/dovecot-1.2/rev/7760a30a5f7e
changeset: 7963:7760a30a5f7e
user: Timo Sirainen <tss at iki.fi>
date: Wed Jul 02 09:44:30 2008 +0300
description:
Updated thread index documentation.
diffstat:
1 file changed, 10 insertions(+), 9 deletions(-)
doc/thread-refs.txt | 19 ++++++++++---------
diffs (36 lines):
diff -r 465931d0a642 -r 7760a30a5f7e doc/thread-refs.txt
--- a/doc/thread-refs.txt Sat Jun 28 19:26:45 2008 +0300
+++ b/doc/thread-refs.txt Wed Jul 02 09:44:30 2008 +0300
@@ -9,13 +9,14 @@ problematic though.
problematic though.
Each node in the tree keeps a "link reference count" which specifies how
-many messages contain a "this message" -> "parent message" reference. The
-first reference is usually added by the message's own References: or
-In-Reply-To: header and the latter references are added by References:
-headers. This link refcount must be updated when adding and expunging
-messages. When the link refcount drops to zero, the message becomes a root.
-The link refcount doesn't tell much about the number of children the node
-has, because References: headers may reference any number of its ancestors.
+many messages contain a "this message" -> "parent message" reference
+(number of links to parent node). The first reference is usually added by
+the message's own References: or In-Reply-To: header and the latter
+references are added by References: headers. This link refcount must be
+updated when adding and expunging messages. When the link refcount drops to
+zero, the message becomes a root. The link refcount doesn't tell much about
+the number of children the node has, because References: headers may
+reference any number of its ancestors.
The optimistic approach assumes that usually there are no problematic
links. In such case expunging a message simply updates the link refcounts
@@ -138,8 +139,8 @@ thread_add_msg(uid)
link_reference(nodes[parent_msgid], node)
// go through References (skipping the last one)
- for (parent_msgid, child_msgid) in references
- link_reference(nodes[parent_msgid], nodes[child_msgid])
+ for (ref_parent, ref_child) in references
+ link_reference(nodes[ref_parent], nodes[ref_child])
unref_link(parent, child)
if parent.parent_unref_rebuilds
More information about the dovecot-cvs
mailing list