On May 22, 2008, at 7:20 AM, Russell Leighton wrote:

>
> Digg has an article where it is said that the new Firefox "locks" up
> under Linux due to SQLite:
>
>       http://digg.com/linux_unix/
> Firefox_3_has_system_killing_performance_problem_for_Linux
>
> Bug here:
>
>       https://bugzilla.mozilla.org/show_bug.cgi?id=421482
>
> Scanning the bug it seems to be with the behavior of fsync().
>
> Is the issue with SQLite use of fsync() or the behavior of filesystem
> (e.g., ext3) or the Linux kernel?
>

See http://www.0xdeadbeef.com/weblog?p=368 for one (more rational and  
informed) views on this issue.

The underlying problem is that Firefox is doing a lot of COMMITs, and  
as you probably know, each COMMIT requires 3 fsyncs.  See 
http://www.sqlite.org/atomiccommit.html 
  for more details.  The latest changes to Firefox set "PRAGMA  
synchronous=NORMAL" instead of the default "PRAGMA synchronous=FULL"  
which reduces the fsync() count from 3 to 2 for each commit.  That  
plus the fix to ticket #3015 seem to have taken care of most of the  
problem.  Parts of the problem have to do (I am told) with a  
misconfigured scheduler in some Linux kernels that is particular slow  
about doing fsync().  Finally, Mozilla is working to reduce the number  
of COMMITs by storing recent changes in TEMP tables then transferring  
updates over to the main database in a single transaction  
periodically.  That means that if Firefox or your system crashes, you  
might loss your last 30 seconds of browser history, but nobody really  
cares about that really.


D. Richard Hipp
[EMAIL PROTECTED]



_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to