Linux, filerendszer, Firefox, SQLite, fsync - mi a kapcsolódási pont?
Egyes Firefox 3 / Linux konfigurációk felhasználói felfigyeltek arra kellemetlen viselkedésre, hogy rendszerük bizonyos időközönként átmenetileg "megáll". Elkezdődött a nyomozás és a gyanú a SQLite / fsync párosra terelődött.
A Firefox 3 az SQLite-ot többféle adat tárolására is használja. Ilyan adatok például a böngészési történet, a könyvjelzők, stb. Az SQLite fejlesztői komolyan veszik a teljesítményt és az adatbiztonságot. Az adatbázisok érzékenyek az adatsérülésekre, ezért az SQLite - annak érdekében, hogy biztosítsa az adatok integritását egy esetleges crash esetén - egyebek mellett az fsync függvényt használja. Az fsync mondja meg az operációs rendszernek, hogy "ezt a file-t" biztonságosan lemezre írhatja és várjon addig, amíg ez a művelet be nem fejeződik. A Firefox fejlesztők nem szeretnék, ha a felhasználók adatot veszítenének. Éppen ezért a Firefox 3 RC1-ig bezárólag az SQLite-ot az ajánlott beállítására, azaz "teljes szinkronizációra" állították. A vizsgálatok szerint ez okozza egyes felhasználóknál azt a jelenséget, hogy a Firefox bizonyos időközönként átmenetileg "megáll" és egyben "megállítja" a rendszert. A jelenségről hibabejelentés is született.