E-postproblem sucks

Som flera av er troligen märkt vid det här laget har vi under natten mellan torsdag och fredag haft en del störningar i vårt nya e-postsystem. Problemet är löst sedan kl. 10:00 idag, och även om en del förseningar fortfarande förekommer så levereras all e-post som den skall.

Problemet uppstod när samtliga databasservrar överbelastades samtidigt, vilket inträffade till följd av en uppdatering som gjordes under torsdagsförmiddagen. I vårt arbete för att utöka användarnas möjligheter till ett personligt anpassat antispam-filter hade vi dessvärre förbisett att AMaViS som är den mjukvara som hanterar virus- och spamscanning av e-post, dessvärre inte riktigt kunde hantera black- eller whitelists som innehöll mer än 6000 adresser. Detta berodde på att black- och whitelisting hanteras av en PostgreSQL-databas, vars scriptspråk har en begränsning i hur stora reguljära uttryck som kan exekveras utan att databasen hänger sig.

Överbelastningen av databasservrarna medförde i sin tur att loopdetect, som är den del av vårt e-postsystem som hanterar MX-loops, dvs e-postmeddelanden som skickas fram och tillbaka mellan två eller flera e-postservrar, inte kunde komma åt sin databas. Loopdetect tar emot ett e-postmeddelande från postfix, kontrollerar om det skickats genom e-postsystemet mer än ett visst antal gånger, och skickar sedan tillbaka det till postfix igen. Om meddelandet passerat igenom systemet ett flertal gånger uppdateras en databas, så att e-postservern kan hämta information om den faktiska slutdestinationen därifrån istället för från sin namnserver, och på så sätt snabba upp leveransen.

Eftersom kommunikationskanalen mellan loopdetect-programmet och postfix redan var öppen när databasanslutningen misslyckades resulterade det i att tomma meddelanden sändes vidare för leverans när kanalen stängdes utan att något e-postmeddelande överförts, samtidigt som de riktiga meddelandena åter placerades i kö på e-postservern för nytt leveransförsök en stund senare. Om samma problem då uppstod igen blev resultatet att ytterligare ett tomt meddelande skickades iväg, samtidigt som det ursprungliga åter hamnade i kö på servern.

Den reela effekten för den slutgiltiga mottagaren blev således att ett antal tomma e-postmeddelanden levererades innan det intakta e-postmeddelandet levererades korrekt.

Felet har rättats till, och en ny version av loopdetectmjukvaran är installerad på våra servrar. Vi har också optimerat PostgreSQL och PGPool-II för att säkerställa en stabil och högtillgänglig databasförbindelse. Vi bedriver ett ständigt arbete för att förbättra vår e-posttjänst, då vi vet att den är en stor och viktig del av våra kunders Internetnärvaro.

Slutligen vill jag poängtera att inga e-postmeddelanden, vare sig skickade eller mottagna, har gått förlorade. Alla meddelanden som passerat våra system under den problemfyllda perioden har levererats till sina slutgiltiga mottagare, dock med tomma dubletter och en del förseningar som följd av det inträffade.

Detta inlägg är skrivet av en av våra två svenska Linux-tekniker, Joakim Bomelin. Han är en av de som bland annat ser till att våra e-postservrar fungerar stabilt och tillfredställande. Och även en av dem som ni ska bli sura på när saker och ting inte fungerar som det ska… 😉

19 Comments

  1. Kommentatorn
    september 28, 2008 @ 10:35 e m

    Den 16e började det succesivt droppa in blanka mail med eller utan avsändare och eller mottagare samt innehåll. Så har hållit på tills den 26e. Alltså i 10 dagar…

    Det gällde för samtliga av våra domäner hos surftown. I slutet var det ganska rejäla mängder som felade.

    Vi har inte bemödat oss med att vända oss till kundtjänst med det här. Det har vi lärt oss den hårda vägen att det helt enkelt inte är lönt.

  2. Kommentatorn
    september 28, 2008 @ 11:35 e m

    Den 16e började det succesivt droppa in blanka mail med eller utan avsändare och eller mottagare samt innehåll. Så har hållit på tills den 26e. Alltså i 10 dagar…

    Det gällde för samtliga av våra domäner hos surftown. I slutet var det ganska rejäla mängder som felade.

    Vi har inte bemödat oss med att vända oss till kundtjänst med det här. Det har vi lärt oss den hårda vägen att det helt enkelt inte är lönt.

  3. Jonathan Gabor
    september 29, 2008 @ 7:51 f m

    @Kommentatorn – Det är alltid lönt att höra av sig till vår support… Även om vi inte lyckas lösa problemet direkt, så får vi i alla fall reda på det. Och ju fler som hör av sig med felbeskrivningar, desto snabbare kan vi hitta en lösning, eftersom ni då hjälper oss i våran felsökning.

    Vi upptäcker i princip alltid driftstörningar på egen hand, men ibland kan det påskynda arbetet att lösa problemet ifall en kund gör oss uppmärksammade om det.

  4. Jonathan Gabor
    september 29, 2008 @ 8:51 f m

    @Kommentatorn – Det är alltid lönt att höra av sig till vår support… Även om vi inte lyckas lösa problemet direkt, så får vi i alla fall reda på det. Och ju fler som hör av sig med felbeskrivningar, desto snabbare kan vi hitta en lösning, eftersom ni då hjälper oss i våran felsökning.

    Vi upptäcker i princip alltid driftstörningar på egen hand, men ibland kan det påskynda arbetet att lösa problemet ifall en kund gör oss uppmärksammade om det.

  5. Techjunkie
    september 29, 2008 @ 8:55 f m

    Jo, jag instämmer med ”Kommentatorn”. Jag har också haft e-postproblem en längre tid på samtliga mina domäner. Jag är förvånad över att Surftown inte kommentera detta tidigare på bloggen, utan först när problemet ”var löst”

  6. Techjunkie
    september 29, 2008 @ 9:55 f m

    Jo, jag instämmer med ”Kommentatorn”. Jag har också haft e-postproblem en längre tid på samtliga mina domäner. Jag är förvånad över att Surftown inte kommentera detta tidigare på bloggen, utan först när problemet ”var löst”

  7. Jonathan Gabor
    september 29, 2008 @ 10:54 f m

    @Techjunkie – Problemet var först inte så pass allvarligt att det behövde tas upp via bloggen, det är det vi har vår supportavdelning för. Vi vill helst inte använda oss av bloggen för support, då det är inte det som är syftet med den… Utan den ska snarare ses som en kommunikationskanal, där vi berättar om vad som försigår på Surftown, och då inte driftsmässigt, och den är även ett sätt för oss att få feedback från besökare och kunder kring olika nyheter/åtgärder som vi har genomfört.

    Dock så gör vi undantag emellanåt, när det sker så pass allvarliga saker att det berör majoriteten av våra kunder, då är det viktigare att vi får våra kunder informerade än att bloggen används på ”rätt sätt”.

  8. Jonathan Gabor
    september 29, 2008 @ 11:54 f m

    @Techjunkie – Problemet var först inte så pass allvarligt att det behövde tas upp via bloggen, det är det vi har vår supportavdelning för. Vi vill helst inte använda oss av bloggen för support, då det är inte det som är syftet med den… Utan den ska snarare ses som en kommunikationskanal, där vi berättar om vad som försigår på Surftown, och då inte driftsmässigt, och den är även ett sätt för oss att få feedback från besökare och kunder kring olika nyheter/åtgärder som vi har genomfört.

    Dock så gör vi undantag emellanåt, när det sker så pass allvarliga saker att det berör majoriteten av våra kunder, då är det viktigare att vi får våra kunder informerade än att bloggen används på ”rätt sätt”.

  9. Lars-Åke
    september 29, 2008 @ 8:38 e m

    @Jonathan Gabor
    Det är alltid lönt att höra av sig till vår support
    Ja man kan hoppas på svar också.
    Jag skickade in via support och jag har fortfarande inte fått svar på den, inget mail i alla fall.
    Det står ”On Hold”.
    Vore bra om någon hörde av sig,
    -”ursäkta att vi inte hört av oss, men vi hade fullt upp” :-p

  10. Lars-Åke
    september 29, 2008 @ 9:38 e m

    @Jonathan Gabor
    Det är alltid lönt att höra av sig till vår support
    Ja man kan hoppas på svar också.
    Jag skickade in via support och jag har fortfarande inte fått svar på den, inget mail i alla fall.
    Det står ”On Hold”.
    Vore bra om någon hörde av sig,
    -”ursäkta att vi inte hört av oss, men vi hade fullt upp” :-p

  11. sm6kst
    oktober 5, 2008 @ 11:06 e m

    Jag har från den 26/9 fortfarande problem med en av mina subdomainer
    all mail relayas bra inte. jag testade idag på alla e-mail adresser och mailing lister,
    samma problem det gäller när jag sickar till dessa. What to do???
    ——–
    The message WAS NOT relayed to:
    : 127.0.0.1 said:
    554 5.6.0 Failed, id=28852-05, from MTA([127.0.0.1]:10025): 554 5.4.0 Error: too many hops
    .——-
    sedan kommer det fem a-4 sidor med info om hur och var trafiken har passerad era servrar

    Anton Vialle

  12. sm6kst
    oktober 6, 2008 @ 12:06 f m

    Jag har från den 26/9 fortfarande problem med en av mina subdomainer
    all mail relayas bra inte. jag testade idag på alla e-mail adresser och mailing lister,
    samma problem det gäller när jag sickar till dessa. What to do???
    ——–
    The message WAS NOT relayed to:
    : 127.0.0.1 said:
    554 5.6.0 Failed, id=28852-05, from MTA([127.0.0.1]:10025): 554 5.4.0 Error: too many hops
    .——-
    sedan kommer det fem a-4 sidor med info om hur och var trafiken har passerad era servrar

    Anton Vialle

  13. Jonathan Gabor
    oktober 6, 2008 @ 11:03 f m

    @sm6kst – Vi upptäckte en bugg i en av mjukvarorna, som vi arbetar på fixa. Teknikerna har dock sett till att er e-post återigen fungerar utan problem, och de ber så hemskt mycket om ursäkt för det inträffade. 🙂

  14. Jonathan Gabor
    oktober 6, 2008 @ 12:03 e m

    @sm6kst – Vi upptäckte en bugg i en av mjukvarorna, som vi arbetar på fixa. Teknikerna har dock sett till att er e-post återigen fungerar utan problem, och de ber så hemskt mycket om ursäkt för det inträffade. 🙂

  15. Grattis mydb1, och tack! | SurfBloggen
    oktober 7, 2008 @ 2:01 e m

    […] Jonathan Gabor: @sm6kst – Vi upptäckte en bugg i en av mjukvarorna, som vi arbetar på fixa. Teknikerna har dock… […]

  16. Tom Västlunden
    maj 10, 2009 @ 7:40 f m

    Går ju inte ens att skicka mejl från konton som är satt upp. Är ju konstigt att man bara kan ta emot, men att skicka, nej det funkar inte alls.

  17. Tom Västlunden
    maj 10, 2009 @ 8:40 f m

    Går ju inte ens att skicka mejl från konton som är satt upp. Är ju konstigt att man bara kan ta emot, men att skicka, nej det funkar inte alls.

  18. Jonathan Gabor
    maj 11, 2009 @ 7:36 f m

    @Tom Västlunden – Du borde inte ha några problem med att skicka e-post… Har du varit i kontakt med supporten? Om inte, så rekommenderar jag det. Förmodligen har du en felaktig inställning i din e-postklient eller liknande.

    Om du har Telia, så kan det bero på att de har spärrat port 25 för utgående e-post (smtp), och du måste ändra porten till 587 istället. Sen bör det fungera!

  19. Jonathan Gabor
    maj 11, 2009 @ 8:36 f m

    @Tom Västlunden – Du borde inte ha några problem med att skicka e-post… Har du varit i kontakt med supporten? Om inte, så rekommenderar jag det. Förmodligen har du en felaktig inställning i din e-postklient eller liknande.

    Om du har Telia, så kan det bero på att de har spärrat port 25 för utgående e-post (smtp), och du måste ändra porten till 587 istället. Sen bör det fungera!