Workaround za Firefox3b5 probleme u Linuxu

May 16, 2008 – 8:18 am

Ukoliko koristite zadnju betu Firefoxa3 na Linux sustavu, vjerojatno ste već primjetili poprilično naporan fsync bug kod kojeg se Firefox svako malo smrzne i onda čekate par sekundi. Stvar je još više izražena na AJAXoidnim stranicama, a što više tabova imate otvoreni, još gore.

Problem je zapravo u nizu nesretnih događaja:

  1. Novi Firefox koristi novi SQLite za spremanje konfiguracije, settingsa, cookiea, historya i svega ostalog. Dakle, svako malo se nešto (recimo cookie ili history entry) zapisuje u bazu.
  2. Novi SQLite ima odličan mehanizam zaštite podataka, pri kojem nakon svake promjene podatka u bazi pokreće fsync() syscall kako bi kernelu dao do znanja da je podatak bitan i da ga odmah zapiše.
  3. U novim Linux kernelima je fsync() iz nekog razloga izuzetno spor.

Tko je točno tu kriv teško je reći (slično kao i kod Debian vs. OpenSSL fijaska neki dan), ali kombinacija svega ovoga je neupotrebljivost Firefoxa.

Ukoliko želite žrtvovati sigurnost svojih Firefox cookiea, historya i ostalih settingsa za uopće mogućnost korištenja Firefoxa, u komentarima buga se može naći workaround. Upravo isprobao, stvar radi. Samo, disclaimer, ako to koristite, budite svjesni da krah sustava u nezgodnom trenutku može značiti korupciju podataka.

Post a Comment