https://bugzilla.novell.com/show_bug.cgi?id=460689 Summary: sqlite default settings Product: openSUSE 11.1 Version: Final Platform: Other OS/Version: Other Status: NEW Severity: Enhancement Priority: P5 - None Component: Other AssignedTo: max@novell.com ReportedBy: dmueller@novell.com QAContact: qa@suse.de Found By: --- Hi, followup of the discussions on research@ regarding default settings of sqlite and their performance impact. it would be a good idea to compare the default settings with those of other distros and analyse the difference. One that I spotted while comparing with the Fedora spec file is that they disable DIRSYNC. relevant quotes of the mails: === The directory is synced after creation and removal of a journal to make sure the dir entry has hit the disk in case of a crash. I don't think this is unnecessary on Linux. But as SQLite supports five modes of operation for journal files, DELETE, TRUNCATE, and PERSIST, which are safe and MEMORY and OFF, which are unsafe, we might consider moving from the default DELETE to TRUNCATE (commit is done by truncating the journal file) or PERSIST (commit is done by nulling the file's first page), which both avoid the need for frequent syncing of the directory. This should give us the speed of disabling dirsync together with the safety of leaving it enabled, The only downside is, that the files stay there even across application instances and might make some users think SQLite is leaking them. === I can confirm this is neccessary on linux. (By accident, it may not be neccessary on ext3 -- entangled commit factor, whatever that means). ..aha, which means that moving to TRUNCATE will be as slow as current situation on ext3, and that PERSISTS should be faster -- if it uses fdatasync not fsync. === Perhaps we can write a small test application for all modes and pass that to QA for benchmarking in various setups? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.