Hänger bei SEHR vielen IMAP Ordnern -> IMAP Cache abschal

  • Hallo,


    mein Thunderbird klemmt bei der Nutzung eines umfangreichen IMAP Accounts in einer Windows-Domaine mit Ordnerumleitungen.


    Zum Kontext:
    - Ich nutze Thunderbird unter Windows XP SP 2 in einer Windows-Domäne
    - Die Domaine wird durch Windows 2003 R2 Server bereitgestellt.
    - In der Domäne sind "Ordnerumleitungen" aktiviert, d.h. gängige Nutzerprofilverzeichnisse wie "Anwendungsdaten", "Desktop", "Eigene Dateie" und "Startmenü" werden nicht lokal gespeichert, sondern vom (Client-) Windows direkt auf ein Serververzeichnis weitergeleitet.
    - In meinem IMAP Account benutze ich sehr viele hierarchisch angeordnete Ordner (mehr als 1000).


    Zum Thunderbird-Problem
    - Thunderbird möchte für jeden IMAP-Ordner eine msf-Datei (meines Wissens nach eine Index-Datei) im Thunderbird-Profilverzeichnis öffnen.
    - Das Profilverzeichnis liegt (via Ordnerumleitung, s.o.) auf einem Server.
    - Nach dem Öffnen der ersten 500 msf-Dateien blockiert Thunderbird. D.h. die Prozessorzeit wird fast ausschließlich von Thunderbird belegt. Ein Öffnen von weiteren/anderen Mails ist nicht mehr möglich.


    Wahrscheinliche Ursache:
    Thunderbird fragt beim Client- Windows weitere Dateihandles für die restlichen msf-Dateien an und bekommt sie wegen (CIFS/SMB-Netzwerk-) Beschränkungen auf Client- und/oder Serverseite nicht.


    Problemlösungsstrategien (ohne, dass ich weiss, wie es konkret geht -> bitte deshalb um Hilfe):
    - Man könnte Thunderbird abgewöhnen, msf-Dateien für den IMAP-Accout zu benutzen. (Das spart nebenbei auch noch Speicherplatz. Die LAN- / Serveranbindung ist sehr schnell).
    - Man könnte die Beschränkung für den (CIFS/SMB)- Netzwerkdateizugriff (auf Client- und/oder Serverseite) finden und beseitigen.
    - nicht möglich / gewollt: Thunderbird Profilverzeichnis auf lokalem Rechner
    - nicht möglich / gewollt: geringere Anzahl von IMAP-Verzeichnissen


    Ich hoffe, Ihr könnt mir helfen.


    mit besten Grüßen


    Torsten

  • Hallo Torsten,


    bzgl. der Beschränkungen im SMB/CIFS kann ich wenig sagen. Dazu müsste man wohl Microsoft befragen. Da MS hier aber - vielleicht etwas vollmundig? - von einem Filesystem spricht, glaube ich nicht recht an eine Beschränkung in Zusammenhang mit der schieren Anzahl an Dateien, zumindest in der Größenordnung Tausend noch nicht.
    Tritt das Problem denn auf allen Clients auf? Falls nicht, würde ich zunächst einmal versuchen, sämtliche msf-files zu löschen. Vielleicht hat die eine oder andere msf-Datei einfach einen Defekt. Das soll schon mal vorkommen ... .


    Sollte es wirklich Einschränkungen seitens des Protokolls geben, wäre vielleicht ein Samba-Server (mit einem richtig guten OS dahinter ;-)) ) eine Alternative. Der nutzt das Protokoll zwar auch, ist aber auf der Clientseite vielleicht nicht so empfindlich.


    Btw, mehr als 1000 Ordner - das schreit nach einem Archiv.

  • Hallo Solaris,


    den Effekt kann ich an mindestens drei Maschinen, die ich regelmäßig benutze, beobachten. Es scheint also keine einzelne "verdrehte" Installation zu sein.


    Den Tip mit den defekten msf-Dateien kann ich leider auch aussortieren :cry: . Ich habe schon einiges probiert. U.a. habe ich schon öfter innerhalb von Thunderbird die Eintragungen zu dem IMAP-Account gelöscht, den entsprechenden Pfad im Thunderbird- Profilverzeichnis komplett gelöscht und alles wieder neu angelegt. Dank IMAP gehen bei dem Manöver wenigstens keine Mails verloren 8) .


    Ja und mit dem "guten OS" sieht es leider auch nicht gut aus. Da habe ich leider keine Wahl :oops:



    Vielleicht findet sich doch noch was anderes ...


    mit besten Grüßen


    Torsten

  • Hallo Torsten,


    zu dem Protokoll SMB/CIFS und möglichen Beschränkungen kann ich, wie oben erwähnt, keinen konstruktiven Beitrag leisten. Falls sich hier niemand findet, der sich damit auskennt, sollten Sie sich vielleicht einmal in anderen einschlägigen Foren umschauen. Die MS Knowledge Base oder Seiten zum Samba enthalten vielleicht auch Informationen dazu.
    Ansonsten fallen mir nur ein paar Hinweise zur analytischen Fehlersuche ein:

    Zitat von "tpa"

    ... den Effekt kann ich an mindestens drei Maschinen, die ich regelmäßig benutze, beobachten. ...


    - Gibt es auch Maschinen, auf denen der Effekt unter Verwendung des TB nicht auftritt?


    - Gibt es andere Accounts mit einer ähnlich hohen Anzahl an Ordnern, die den Effekt nicht zeigen?


    - Seit wann Tritt der Fehler auf? Ließe sich ein möglicher Zusammenhang mit irgendwelchen Änderungen (am TB, an den Mailboxen, am xp, am Server, ... ) herstellen?


    - Gibt es vielleicht eine Art Schwellenwert (die erwähnten ca. 500?)? Auch wenn es etwas mühsam ist: Lässt sich das Problem vermeiden, wenn Sie die Zahl der Ordner reduzieren?


    - Liegt es vielleicht nicht an der Anzahl sondern an der Tiefe der Ordnerstruktur? Können Sie diese testweise reduzieren?


    - Ich kenne die Datenstruktur beim OE nicht, aber es wäre einen Versuch wert, einmal zu testen, ob OE mit der Umgebung klarkommt.


    - Gibt es seitens xp oder des Windows 2003 R2 Servers irgendwelche Fehlermeldungen oder Einträge in den Log files? Lassen sich beim Server zusätzliche Logs aktivieren?


    - Ziehen Sie einmal die Logs im TB. Vielleicht lässt sich daran etwas erkennen, z.B. ob der TB stets an der selben Stelle (dem selben Ordner oder der selben E-Mail) hängt, ob er keine Verbindung mehr bekommt etc. .


    - Gibt es sonst irgendwelche Auffälligkeiten, z.B. im Netz?


    - Und auch wenn es in diesem Fall nicht sehr wahrscheinlich ist: Virenscanner, Erweiterungen, lokale Firewall und Co. bitte testweise deaktvieren.


    In den nächsten 8 Tagen werde ich nicht ins Forum schauen können. Seien Sie daher nicht verwundert, wenn Sie von mir zunächst nichts mehr hören. Aber hier findet sich bestimmt jemand, der vielleicht noch den einen oder anderen guten Hinweis geben kann.

  • Hallo Solaris,


    alle vorgeschlagene Analyse-Verfahren habe ich in den vergangenen Tagen NICHT testen können (mangels Menge an frei verfügbaren Domänen-PCs / Mail-Accounts / Zeit).


    Folgende Fakten kann ich aber noch hinzufügen:
    - Die Anzahl der Hierarchieebenen ist tatsächlich recht hoch (z.T. 8 Hierarchiestufen) und enthält z.T. lange Verzeichnisnamen.
    - Outlook / Outlook Express macht mit der Umgebung keine Probleme (auch wenn ich's nicht gerne zugebe).
    - Relevante Windows - Log - Einträge lassen sich nicht finden.
    - Im Netz gibt es keine relevanten Auffälligkeiten.
    - Die Firewall (die von Windows SP2 -> war abgeschaltet) oder den Virenscanner (McAfee VirusScan Enterprise v8.0i) würde ich fast ausschließen.


    Ich möchte in der nächsten Zeit einen neuen nackten Rechner aufsetzen, auf dem noch kein VirenScanner und kein SP2 installiert ist.


    Meine Vermutung geht in Richtung der so genannten "Wurmdrossel" von Windows XP SP2, das die Anzahl der gleichzeitig geöffneten Verbindungen begrenzt. Mir ist leider auch kein Verfahren bekannt, wie ich diese "Wurmdrossel" temporär abschalten könnte (dann könnte man auch Probleme mit der Hierarchietiefe ausschließen).
    Deshalb scheint es mir am naheliegendsten, die Thunderbird - Indizierung zu stoppen.
    Wie bereits beschrieben: per Process Explorer sieht man für jeden IMAP - Ordner eine geöffnete Index-Datei auf dem Server --- bis zu einem plötzlichen Ende, bei der die bis dahin vollständige Traversierung des IMAP - Ordnerbaums abbricht (nach ca. 500 Index-Dateien für die zugehörigen 500 IMAP - Ordner). Die dann logischerweise folgenden Indizes / Ordner sind dann nicht mehr geöffnet. Statt dessen blockiert Thunderbird.


    mit besten Grüßen


    Torsten

  • Hallo allerseits,


    ich bin jetzt dazu gekommen, eine Testinstallation neu aufzusetzen:
    - nacktes Windows XP (allererste Windows XP - Variante, kein Service Pack 1 / 2, kein Online Update)
    - keine "unnötige" Software (Treiber für Hardware XY (außer Netz natürlich), Virenscanner, usw.)
    - aktueller Thunderbird 1.5.0.8
    - Rechner in die Domäne aufgenommen
    - zur Überwachung auf der Clientseite den SysInternals Prozess Explorer; der Server (Domaincontroler) begnügt sich mit Boardmitteln.


    Folgende Erkenntnisse:
    1. Die "Wurmdrossel" von XP SP2 ist es nicht.
    Auch ohne den ServicePack kann Thunderbird nicht alle "Handle"s zu den Index-Dateien offen halten.
    2. Thunderbird versucht alle "Handle"s zu den den Index-Dateien dauerhaft offen zu halten (Status der Handles: Schreiben+Lesen).
    Ab einer bestimmten Anzahl ist es offenbar nicht mehr möglich, noch weitere offene Handles zu bekommen bzw. zu verwalten.
    Alle bis dato geöffneten Handles (die ersten paar Hundert beim traversieren des IMAP - Ordnerbaums) bleiben offen. Im folgenden wird jeweils nur eine Index-Datei geöffnet ... dann tut Thunderbird wahrscheinlich etwas mit diese Datei ... dann wird die Datei wieder geschlossen und mit dem nächsten Ordner (und der zugehörigen Index-Datei) fortgesetzt.
    Das ganze dauert (auch auf dem schnelleren Testsystem) sehr lange und verbraucht viel CPU-Zeit (Auf dem nackten Testsystem (Opteron 2GHz, 1GB RAM) verbraucht Thunderbird (mit Nichtstun) um die 40 % der Systemleistung).
    Auf dem Server sind keine typischen statischen Grenzen für die Anzahl der Verbindungen (z.B. 500, 512, ...) zu der Maschine erkennbar. Die Anzahl geht bis auf 564 hoch und pegelt sich später bei 519 Verbindungen ein.
    3. Ist Thunderbird in diesem Zustand angekommen, ist es nicht mehr möglich, den Inhalt eines anderen IMAP - Ordners aufzulisten. Die Rückkehr zum bisher geöffneten Ordner funktioniert erstaunlicherweise ebenso wie das Öffnen einer Mail im geöffneten Ordner.



    Ich hoffe, dass jemand damit etwas anfangen kann.
    Als Work-Around würde ich mich wirklich gern von der Indizierung verabschieden.


    mit besten Grüßen


    Torsten

  • Hallo Torsten,


    Zitat von "tpa"

    ... Als Work-Around würde ich mich wirklich gern von der Indizierung verabschieden. ...


    Meines Wissens geht das nicht. Sofern die Ursache wirklich im TB liegt (jetzt meine ich nicht Anzahl der Handles selbst sondern die Auswirkung), vermute ich eher, dass man zur Lösung dieses Problems das generelle Verhalten des TB bzgl. der Indexdateien ändern müsste. Ich weiß nicht, aus welchen Grund alle Handles offengehalten werden oder ob es gravierende Nachteile hätte, dies nicht zu tun. Vielleicht könnte man die Indexdateien auch cachen.


    Ich empfehlen Ihnen daher, das Problem mit all den Fakten, die Sie zusammen haben, einmal im US-Forum zu schildern oder gleich auf Bugzilla zu posten. Dort lesen die Entwickler mit, die möglicherweise sehr an diesem Thema interessiert sein werden. Zuvor empfiehlt sich auch eine Suche in bugzilla. Vielleicht ist das Thema dort ja schon bekannt.