Bug in Thunderbird vernielt mailtjes

Versie 1.5.0.8 van Mozilla's mailprogramma Thunderbird bevat een fout waardoor bepaalde e-mails de database van het pakket kunnen corrumperen. De bug is in de bètaversies van het pakket gerepareerd, maar een foutenvrije officiële versie wordt pas volgende maand verwacht.

Mozilla Thunderbird logo (groot) Het lek werd op 11 november op de buglist van Mozilla geplaatst, en is voorzien van het stempel 'critical'. De gewraakte Thunderbird-versie blijkt in de te war raken van e-mailtjes die over een niet-uniek sender- en message-id beschikken, en onder andere mailtjes die door Outlook Express en software van ChillKat zijn verzonden, zouden tot problemen kunnen leiden. Ook bepaalde mailserversoftware is niet vrij van verdenking: doorgestuurde berichten zouden soms op een illegale wijze worden aangepast. Het netto resultaat is in elk geval dat niet alle mail door 1.5.0.8 getoond wordt, al worden de berichten in eerste instantie wel opgeslagen. Na het comprimeren van de maildatabase blijkt de 'onzichtbare' e-mail echter daadwerkelijk verwijderd te zijn, en de klachten over verdwenen correspondentie zijn dan ook niet van lucht.

Ondanks de ernst van verdwijnende data laat de uitrol van een patch nog op zich wachten. Het probleem is daarbij dat niet alleen de bug gerepareerd moet worden: eventueel al gecorrumpeerde databases moeten opgespoord en gerepareerd worden. Hoewel Thunderbird 1.5.0.9 een dergelijke oplossing aan boord zal hebben, wordt die versie niet voor december verwacht. Voorlopig lijkt het dan ook aan te raden om versie 1.5.0.7 te blijven gebruiken en automatische updates van het programma uit te schakelen; gebruikers van de 1.5.0.8-editie moeten voorlopig in elk geval afzien van het 'compacten' van hun database. Ook kan een 'nightly build' van de Mozilla-servers worden geplukt, maar die software heeft uiteraard een bèta-status en kan dus weer andere problemen opleveren.

Door René Wichers

Eindredacteur

27-11-2006 • 14:19

65

Bron: Mozilla

Reacties (65)

65
63
39
16
2
7
Wijzig sortering
Raar dat zo'n bug niet meteen gefixed wordt. Het zal je maar overkomen dat je mailtjes corrupt raken.. Ik dacht dat juist in het opensource wereldje dit soort bugs meteen werden opgelost.. Zeker omdat ie al op 11 november is gemeld...
Het is ook direct gefixt, maar in de beta. Omdat het waarschijnlijk om wijzigingen in de database gaat zullen ze niet zomaar een kleine patch op de markt willen gooien zonder het hele pakket uitgebreid opnieuw te hebben getest. Als ze een officiele versie releasen en die blijkt door de veranderingen om te vallen zijn ze veel verder van huis, zo kunnen mensen het wel patchen met de beta, maar releasen ze pas een nieuwe, officiele versie wanneer ze zeker zijn dat alles goed werkt.

Dit is de werkwijze van de meeste softwarebouwers, of het nou om Microsoft gaat of om een opensource groep.
Omdat het waarschijnlijk om wijzigingen in de database gaat zullen ze niet zomaar een kleine patch op de markt willen gooien zonder het hele pakket uitgebreid opnieuw te hebben getest.
1.5.0.7 heeft het niet en 1.5.0.8 wel. Zo'n kleine verhoging van het versienummer duidt op een hele kleine wijziging. Die moet toch zo terug te draaien of te repareren zijn?
Het probleem is dat er in de huidige versie al berichten 'verloren' zijn gegaan. Dit zijn berichten die wel in de database staan, maar niet gezien worden in het programma omdat ze licht gecorumpeerd zijn.
Als je dit terugrolt, zullen deze berichten niet tevoorschijn komen, omdat ze verkeerd in de database zijn opgeslagen.
Met de (verwachtte) update, zal dus niet alleen de bug gefixed worden, maar zullen ook deze mailtjes 'gefixed' worden, zodat ze alsnog voor de gebruiker te lezen zijn. (dat wordt althans beloofd)

Dit betekend wel dat er dus een soort van 'conversie' over alle data in de database gebeurt, en als ik vanuit persoonlijke ervaring naar dat soort operaties kijk, weet ik dat daar heel erg snel zaken heel erg fout kunnen gaan. En we hebben het nu over een conversie die -zonder toezicht- op miljoenen PCs uitgevoerd moet gaan worden. Die zou ik persoonlijk ook heel erg grondig testen.
Die zou ik persoonlijk ook heel erg grondig testen.
Dan kun je toch gewoon in 1.5.0.9 die bug verhelpen zodat mail niet meer kwijtraakt en dan in 1.5.0.10 proberen mail die toch al kwijt geraakt is te recoveren?

Ik zie geen reden om die die niet gisteren te releasen.
Mijn thunderbird mail 'database' is gewoon een platte 'inbox' met 80-er jaren sendmail syntax (kijk maar eens in 'Thunderbird/Profiles/default/..../Inbox') . Als het alleen mis gaat bij de interpretatie van die file zullen de 'verdwenen' messages automagisch weer verschijnen als de corrupte headers met een nieuwe versie geparsed worden.
@unipurna
Je moet onderscheid maken tussen het repareren van de database en het voorkomen van verdere schade.

Ik vind het onbegrijpelijk dat men een bug die voor dataverlies zorgt niet oplost maar laat door etteren. Desnoods maakt men een backup van de huidige database, installeert een bugfix waardoor het probleem opgelost wordt en brengt men in december een tool uit waardoor de vernieuwde mailtjes gered kunnen worden.

In dit geval is een gedeeltelijke oplossing die verdere schade kan voorkomen in mijn ogen te prefereren boven (voorlopig) geen oplossing. Bij het eerste weet je als gebruiker waar je aan toe bent, in de tweede situatie zou ik direct een ander, betrouwbaarder, emailprogramma installeren. Al was het maar "tijdelijk"
Gezien de tekst van het bericht is de bug al wel gefixed, maar de fix nog niet uitgerold.
Er staat namelijk dat ze daarnaast ook een reparatie programma willen inbouwen die mailtjes die nu al 'verdwenen' zijn weer terug kan halen. Ik kan me voorstellen dat ze een dergelijk nieuw programma goed willen uittesten voordat ze het vrijgeven, omdat je zeker niet wil dat de zaken nog erger worden. Dus het duurt iets langer.
Gezien de tekst van het bericht is de bug al wel gefixed, maar de fix nog niet uitgerold.
Is er een verschil voor de gewone consument?
Anoniem: 191654 @jvalks27 november 2006 14:31
-- Sorry foutje... ;)
Anoniem: 191654 27 november 2006 14:32
Volgens mij delete hij hem niet, maar maakt hij 'm onbruikbaar... :z
Anoniem: 197100 27 november 2006 15:39
"Message-IDs horen uniek te zijn en tussen < > haken geplaatst te worden, wat zij dus niet altijd doen. Dat daardoor mail in Thunderbird niet werkt is eigenlijk hun schuld."

Ja en nee... je hebt gelijk dat het de schuld is van anderen, maar software moet op een goeie wijze kunnen omgaan met "problemen" (de uitzonderingen zijn immers in 99% van de gevallen de bugs). Dus TB gaat hier in de fout... ze moeten robust zijn anders gaan hackers er gemakkelijk een exploit van maken.
Anoniem: 111970 27 november 2006 23:16
Even een reactie van mijzelf... veel mensen hebben het in de reacties over het niet uniek zijn van de Message-Id header. Daar gaat het echter helemaal niet om - ThundderBird laat prima 100 e-mailtjes met dezelfde Message-Id zien.

Het probleem ligt erin dat de waarde van de Message-Id en References headers hetzelfde zijn. In 1.5.0.8 zijn een aantal 'threaded' mode wijzigingen aangebracht. Met een threaded view kan je - althans dat is de gedachte - je e-mail lezen net als de comments hier op Tweakers, met aftakkingen e.d. Dat zouden ze bijvoorbeeld kunnen doen (ik heb de code niet bekeken, dus weet niet hoe ze het precies doen) door de References header in mailtje A te checken. Als die bestaat, dan zoeken ze de bijpassende Message-Id header in een ander mailtje (mailtje B). Bestaat die, dan mailtje B dus een reactie op mailtje A. Een probleem krijg je dan dus als het e-mailtje eigenlijk aan zichzelf refereert.

Verder is alles al wel al gezegd, ook in die bugthread. Ik zit dan ook op 1.5.0.7 nadat ik er op 8 november achter kwam en het in #thunderbird op irc.mozilla.org aankaartte.

Edit: het lullige (naast alles wat al gezegd is) is dat je ook in een non-threaded view dit probleem zal ondervinden; terwijl threading code dan helemaal niet zou moeten draaien; is immers vergeefse moeite en maakt de boel minder efficiënt
en onder andere maitjes die door Outlook Express en software van ChillKat zijn verzonden, zouden tot problemen kunnen leiden.
Dat is heel fijn. Wij gebruiken voor onze mailapplicatie (nieuwsbrievensysteem) de .net-componenten van ChillKat. Het gaat over duizenden mails per maand (soms tienduizenden) en dan wordt het toch wel vervelend. Het is erg jammer dat Mozilla niet sneller met een patch uit kan komen die in ieder geval nieuwe mails niet sloopt en zich in 2e instantie met de al corruptgeraakte mails bezighoudt. Nu krijgen de abonnees van onze klanten mogelijk nieuwsbrieven niet, onze klant zal dat niet kunnen verklaren en klopt bij ons aan. Dus in ieder geval fijn dat het nu bekend is. Maar komop Mozilla, fix dit zo gauw mogelijk!
Die bug in thunderbird zal voor mij helemaal geen effect hebben, mijn mailserver vreet ze al op omdat het onzin is om 2 exact dezelfde mailtjes (zelfde message ID komend vanaf hetzelfde domein) in de mailbox af te leveren.
Als jij vervolgens van hetzelfde domein twee mailtjes aflevert met hetzelfde message ID, heb je als verzender gewoon pech, je schendt de standaarden en daar wordt je op gepakt.

Dat thunderbird vervolgens je bestaande mailtje met hetzelfde message ID ook onzichtbaar maakt is dan weer wel een kritieke bug in thunderbird.
Je hebt misschien gelijk maar je hebt wel een hele hoop aannamen. Zo ga je ervan uit dat de email client alle mail via dezelfde emailserver binnen krijgt. Ook ga je ervanuit dat je mailserver (nadat die de eerste message afgeleverd heeft) nog iets onthoudt over het message ID.

In praktijk werkt het vaak anders. Mailservers weten niets van mail die niet meer op de server staan en mensen hebben vaak verschillende email accounts (bv een hotmail account en een planet account via hun ADSL verbinding) In die gevallen heeft je mailserver er dus niets mee te maken en is thunderbird zelf verantwoordelijk voor het vergelijken van de messages. En enkel het domein en het message ID is daarbij per definitie niet voldoende. Ook niet volgens de standaard.
In de praktijk klopt het gewoon wat ik zeg in het geval van een fatsoenlijke IMAP server zoals Cyrus IMAP. Die houdt een database bij met daarin alle message IDs die er verstuurd zijn naar een bepaalde mailbox. Waarom ik zeg combinatie domein en message ID: de meeste mailclients of mailservers genereren message IDs die met het domein te maken hebben. Het binnenhalen van dezelfde message IDs over meerdere accounts is geen probleem: met IMAP heb je per definitie een los mailbox account en dus ook een losse database met berichten.

Kan je aankomen met "niet iedereen gebruikt IMAP": dat is de verantwoordelijkheid van de gebruiker. Als ik als provider zowel POP3 als IMAP aanbied, en een klant belt mij op dat Outlook (Express) steeds dezelfde mailtjes ophaalt met "leave mail on server", dan geef ik de schuld aan de virusscanner van de klant (tot nu toe heb ik 100% van de gevallen waarin dit optrad te maken gehad met Norton Antivirus |:() en wijs ik hem op de mogelijkheid om IMAP te gebruiken, een protocol wat ontworpen is om mailtjes op de server te laten staan.
als jij gewoon netjes unique message-id's genereerd gebeurt er helemaal niets met je mail.

Ik gebruik thunderbird nu al tijden, en nog nooit heb ik gemerkt dat er mail verloren gaat, dus hooguit wat domme spam van domme spammers met domme software die geen unieke message-ids bouwen zouden hier echt last van kunnen krijgen.

Een kritieke bug betekend niet per definitie direct daar er ook maar 1 echte gebruiker echt last van heeft, de mogelijkheid is er alleen, en het is gewoon iets wat je niet in je code wilt hebben.

Daarnaast: het is gefixed! (in de beta).
Nou, wat let je,

Een gewaarschuwd persoon telt voor twee,

Tijd om met chillkat te bellen dus, want hun software is kennelijk ook stuk. (en daar kun jij wel iets aan doen)
.net-componenten van ChillKat. Het gaat over duizenden mails per maand (soms tienduizenden)
It's not a bug, it's a feature! Deze bug is een spamfilter!
Dus als ik het goed versta: Je krijgt mail van iemand, TB haalt hem 'binnen' maar je krijgt hem nooit te zien want TB delete hem onmiddelijk?
Nee, TB delete de mail bij het comprimeren van je mailbox.
Zo lees ik het tenminste.

Mocht je nu al dit probleem willen omzeilen, zonder van een beta gebruik te willen maken, dan wordt er geadviseerd om terug te gaan naar 1.5.0.7 (link: http://forums.mozillazine.org/viewtopic.php?t=489337).
Oh, ik dacht effe dat het om de AMD processor ging toen ik de titel las.... Ik vroeg me al af hoeveel mensen die processor nog hebben en dus hoe belangrijk een bug in die processor nu nog kan zijn....
Ik heb zowel de mail client als de processor. Ik moet dus dubbel opletten? :)
ik zat eerst van:

uh? waar heeft die 't over... dus ik googlen... mwoa voor de mensen die 't ook niet weten:

http://en.wikipedia.org/w..._Thunderbird_.28T-Bird.29
Eigenlijk wel grappig. Mozilla wordt er weer op aangekeken, terwijl het dus de makers van onder andere ChillKat zijn die gewoon de mail standaarden aan hun laars lappen. Message-IDs horen uniek te zijn en tussen < > haken geplaatst te worden, wat zij dus niet altijd doen. Dat daardoor mail in Thunderbird niet werkt is eigenlijk hun schuld.

Bijna hetzelfde principe als de browsers. Je kan een webbrowser maken die strikt de html standaarden ondersteunt. Alleen zijn er altijd websites die niet deze standaarden volgen (omdat mensen soms niet eens weten waar ze mee bezig zijn), waardoor de website niet zou werken met die browser. Voor dit soort gevallen moeten er helaas uitzonderingen worden gemaakt :(.

Gelukkig heb ik geen last van deze bug...IMAP :9.
Alleen zijn er altijd websites die niet deze standaarden volgen
Er zijn veel meer websites dan browsers. De oplossing voor dit probleem ligt dus in de browser, die gewoon fout tolerant moet zijn.
Misschien moet je in het woordenboek even opzoeken wat 'standaard' betekend voordat je zo'n opmerking maakt?

Je mag in de bebouwde kom ook maar 50 km/u rijden. Dus omdat sommige te hard rijden moet er dan maar niet meer gecontroleerd worden?

Overgens als het MessageID incorrect is zal de mail standaard al bij een hoop personen niet aankomen omdat spamassassin (een veel gebruikte spamfilter) berichten zonder geldig MessageID al direct een hoge spam score geeft (3.5). Aangezien nieuwsbrieven meestal ook een hoop html en links bevatten gaat het bericht als snel over de standard drempel van 5 punten.
Er zijn veel meer websites dan browsers. De oplossing voor dit probleem ligt dus in de browser, die gewoon fout tolerant moet zijn.
Fout-tolerant houdt in dit geval in: de browser crashed niet als hij foute code tegenkomt. Een browser kan nooit (op een correcte manier) fout tolerant zijn door foute code toch weer te geven omdat het nooit duidelijk is wat de site-ontwikkelaar bedoeld heeft met de foute code.

MSIE heeft de vervelende eigenschap om dan maar te gaan gokken wat de juiste weergave is; de ontwikkelaar denkt daardoor dat hij een correcte site heeft gemaakt, terwijl hij in feite bagger-code geproduceerd heeft.

Hetzelfde geldt eigenlijk in dit geval: een duplicate message-id geeft aan dat het twee keer hetzelfde bericht betreft, waarvan er dus eentje verwijderd mag worden. Dus zoals gewoonlijk heeft MS de standaard weer niet goed gelezen en mag OSS de troep opruimen.
He, ik was net van plan om MS Office Outlook te gaan vervangen door TB. Dat wordt dus nog even wachten op 1.5.0.9....

Een mail programma dat mail kwijtraakt, dit is geen goede reclame voor OSS.
Je bedoelt: "Een mail programma dat mail kwijtraakt, dit is geen goede reclame voor dat mail programma."?
toch asocieren veel mensen het met de oss dus in zekere zin wel degelijk slechte reclame.

ook omdat heel vaak firefox en thunderbird gezien worden als machtige oss projecten die ms kunnen verslaan.
De oorspronkelijke zin van Styno was "Een mail programma dat mail kwijtraakt, dit is geen goede reclame voor OSS."
Als je hierbij "een mail programma" vervangt door de naam van een willekeurig, populair mailprogramma kun je iets krijgen als "Microsoft Outlook dat mail kwijtraakt, dit is geen goede reclame voor OSS.". Deze laatste uitspraak raakt kant noch wal, want de 2 hebben niets met elkaar gemeen.

"Thunderbird dat mail kwijtraakt, dit is geen goede reclame voor OSS.", "Een OSS mail programma dat mail kwijtraakt, dit is geen goede reclame voor OSS."
"een mail programma" is een referentie aan Thunderbird, dan hoef je er niet expliciet bij te zeggen ' een OSS mailprogramma'.
Dan nog heeft Thunderbird stukken minder problemen dan Outlook...
Er bestaat een mogelijkheid dat mail verdwijnt, maar dus alleen onder allerhande voorwaarden en als je de database gecomprimeerd, anders dus niet ............

En extra comprimeren van belangrijke data is iets dat ik sinds DoubleSpace van MS wel uit mijn hoofd laat, dus ook Thunderbird 1.5.0.8 werkt hier gewoon probleemloos en is enorm veel sneller dan bv Outlook dat ik nu dus tot volle tevredenheid niet meer gebruik.
En extra comprimeren van belangrijke data is iets dat ik sinds DoubleSpace van MS wel uit mijn hoofd laat...
Het comprimeren van je mailfolders in thunderbird is iets anders dan bijv. doublespace.
Als je in thunderbird een mailtje verwijderd wordt het (om performance redenen) alleen uit de 'inhoudsopgave' verwijderd. Het verwijderde bericht blijft dus ruimte innemen in je mailstore.
Als je thunderbird je de database laat comprimeren betekend dat niets anders dan dat hij de ruimte die bezet gehouden wordt door de verwijderde items weer vrijgeeft. De e-mails die je bewaard hebt gaan dus niet ineens minder ruimte innemen. Als je veel verwijderd hebt kan ik je aanraden om (nadat ze deze bug gerepareerd hebben) toch even de boel te laten comprimeren, dit levert naast wat ruimte op je HD ook weer een klein beetje performance winst op.
Anoniem: 56507 @styno28 november 2006 01:29
Een mail programma dat mail kwijtraakt, dit is geen goede reclame voor OSS.
ik zie het verband niet: als fouten in een commercieel e-mailprogramma gevonden worden, is dat dan slechte reclame voor alle commerciële software?
Outlook vervangen door Thunderbird? Voor zover ik weet kan Thunderbird nog steeds geen verbinding leggen met Exchange servers..

En als je geen Exchange server gebruikt.. waarom dan uberhaupt in hemelsnaam Outlook??
Ik moest laatst al een Nightly van 2.0 installeren omdat die 1.5.0.8 gewoon af en toe bevroor. Deed het weer als een zonnetje, maar ik vond het toch raar.

FireFox 2.0 crashed ook behoorlijk vaak, zeg maar met een SeaMonkey-frequentie (als jullie die tijd nog kennen :)).

Tijd om ff te kappen met nieuwe features, en gewoon de boel op te lossen en stabiel te krijgen.

Op dit item kan niet meer gereageerd worden.