If you have experienced sporadic threading problems in the archive, a fix has 
been checked into listen, as of r43360. After updating, future messages 
should thread properly. To update messages already in the archive, you will 
need to run a migration that will call reindex on each list's searchable 
archive tool.

For our needs, the migration looked like this:

from StringIO import StringIO
from zope.component import getUtility
from Products.listen.interfaces import IListLookup
from Products.listen.interfaces import ISearchableArchive

def migrate_listen_archive_indexes(self):
    out = StringIO()

    ll = getUtility(IListLookup)
    mappings = ll.showAddressMapping()
    for mapping in mappings:
        path = mapping['path']
        try:
            ml = self.unrestrictedTraverse(path)
        except AttributeError:
            continue
        search_tool = getUtility(ISearchableArchive, context=ml)
        indexes = search_tool.indexes()
        try:
            search_tool.manage_reindexIndex(ids=indexes)
        except UnicodeDecodeError:
            out.write('***** codec error for list: %s\n' % ml.title)
        else:
            out.write('migrated %s\n' % ml.title)

    return out.getvalue()



Thanks,
Robert


--
Archive: 
http://www.openplans.org/projects/listen/lists/listen-dev/archive/2007/06/1181249332068
To unsubscribe send an email with subject unsubscribe to [EMAIL PROTECTED]  
Please contact [EMAIL PROTECTED] for questions.

Reply via email to