[Mailman-Developers] From the creation of a ThreadID

Terri Oda terri at zone12.com
Thu Apr 5 23:29:26 CEST 2012


I haven't read the whole thread so maybe someone else has mentioned 
this, but we may want to take advantage of the dynamic sublists code for 
this, since it produces "conversations" or "topics" sublists and already 
has to generate and maintain a code for each.  Rather than messageids 
these are meant to be a bit more human-readable, so they're often words 
with numbers suffixed.  But yeah; there exists code for Mailman 2.1 that 
might be reusable here, and there's a GSoC project on the table to port 
to 3.0 so this might be a thing that we could pass to the archive utility.

  Terri

On 12-04-05 9:41 AM, Pierre-Yves Chibon wrote:
> Hi,
>
> In HyperKitty to be able to easily retrieve from the database all the
> threads of a given month or just all the emails of a thread, I created a
> Field in the database called ThreadID.
> When I load the archives from mailman into mongo, I look for the absence
> of the headers 'References' or 'In-Reply-To' to define an email that
> starts a new thread.
> Then all emails which have the header 'References' or 'In-Reply-To' will
> look for the preceding email and extract the ThreadID from it.
> This seems to work fine.
>
> At the beginning I was using a simple integer as identifier but of
> course if you changed the order in which the archives are loaded or just
> if you miss like one month than the ThreadID is not consistent anymore.
> So I changed to use the Message-ID of the first email of the Thread as
> ThreadID.
> Problem is of course, if the admin removes the first email of a thread
> for x or y reasons, then when reloading the archives (for z or a
> reasons), we will loose the ThreadID and actually, the integrity of the
> Thread (each reply to the first email will be split into their own
> thread).
>
> Would anyone have an idea on how to generate a stable and delete/reload
> proof ThreadID?
> The other solution of course being that I regenerate the thread on the
> fly based on the first email (which is still easy to find), but that
> will be a lot of db querying.
>
> Thinking about it, generating the thread on the fly would also give the
> possibility to regenerate the thread view from anywhere (so you could
> generate a thread view for only a sub-thread).
>
> Do you have any suggestions/preferences ?
>
> Thanks,
> Pierre
> _______________________________________________
> Mailman-Developers mailing list
> Mailman-Developers at python.org
> http://mail.python.org/mailman/listinfo/mailman-developers
> Mailman FAQ: http://wiki.list.org/x/AgA3
> Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/
> Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/terri%40zone12.com
>
> Security Policy: http://wiki.list.org/x/QIA9
>


More information about the Mailman-Developers mailing list