Benutzer-Werkzeuge

Webseiten-Werkzeuge


re-indexierung

Index Update

Wird eine schon archivierte E-Mail erneut importiert, wird dieses mit Hilfe der Duplikatserkennung festgestellt. In diesem Fall wird die Mail nicht erneut archiviert. Auch wird die archivierte Mail nicht verändert. Die zu importierende E-Mail wird stattdessen mit Hilfe des Tokenizers analysiert und neu indexiert; Der Index-Eintrag der betreffenden E-Mail wird gelöscht und durch die aktualisierten Index-Daten der E-Mail ersetzt.

Dieses Vorgehen kann beispielsweise eingesetzt werden, wenn der Tokenizer ein vorher nicht bekanntes Dateiformat (Attachmenttyp) unterstützt. Die Inhalte von Anhängen, die auf Grund unbekannter Dateiformate nicht indexiert werden konnten, können so einfach erneut indexiert werden, so dass Mails mit diesen Anhängen besser gefunden werden können.

(Hinweis: Der Tokenizer unterstützt Stand Ende 2017 ca. 1.300 unterschiedliche Dateiformate).

Re-Indexierung eines Containers

Zur Re-Indexierung eines Containers müssen alle E-Mails einmal neu gelesen und indexiert werden.

Um einen Container komplett zu re-indexen, ist es erforderlich, alle E-Mails aus dem Repository erneut zu importieren. Für den Re-Import werden die E-Mails aus dem Repository in das Inbox-Verzeichnis übertragen.

Re-Import

Im Repository-Verzeichnis liegen die E-Mails als gezippte Dateien in einem erweiterten RFC822-Format. Die Dateien im Archiv enthalten einen speziellen, Benno MailArchiv-spezifischen Header mit internen Metainformationen, sowie die eigentliche E-Mail.

Für den Re-Index muss zuerst der Benno-spezifische Header entfernt werden. Die Mail ist dann wieder dem Original entsprechend. Danach muss die E-Mail "atomar" in die Inbox geschrieben werden.

Zur Vereinfachung des Imports stellen wir das Perl-Script benno-bennobox2eml zur Verfügung. Dieses durchsucht das Repo-Verzeichnis nach den Archivdateien, extrahiert die Header und schreibt die E-Mails atomar in das Inbox-Verzeichnis.

benno-bennobox2eml

Usage: ./benno-bennobox2eml [-h] [-d] [-v] [-m <num>] -a <archive directory>
       [-e <export directory]

    -a        archive directory
    -e        export files to this directory (default current archive directory)
    -d        dry run
    -m <num>  max files in inbox directory
    -v        verbose

Beispiel-Aufruf:

sudo -u benno ./benno-bennobox2eml -a /srv/benno/archive/repo -e /srv/benno/inbox
re-indexierung.txt · Zuletzt geändert: 2018/06/14 11:00 von lwsystems