I filed ticket #3452 the other day, worked up a patch. The patch does three things:
- Adds a real unixSectorSize() implementation where fstatvfs(2) is available. The host filesystem's f_bsize will be returned instead of SQLITE_DEFAULT_SECTOR_SIZE. - Changes SQLITE_MAX_DEFAULT_PAGE_SIZE from 8KB to 32KB. - Changes the default cache_size from SQLITE_DEFAULT_CACHE_SIZE to SQLITE_DEFAULT_CACHE_SIZE * SQLITE_DEFAULT_PAGE_SIZE / pageSize. The last change was suggested by Kees Nuyt. Altogether this allows SQLite3 to have a default page size that more closely matches the preferred block size of the host filesystem without materially changing the default memory footprint of SQLite3. Significant performance improvements were noted in Evolution. I would appreciate a review of this patch by the SQLite3 community. I'd be glad to make it apply to the latest in CVS if desired (including autoconf work, if desired). See: http://www.sqlite.org/cvstrac/tktview?tn=3452 http://cr.opensolaris.org/~nico/sqlite3-big-pages/ (FYI, Evolution has/had a separate performance problem in that it opens a SQLite3 DB handle for the same DB every time you open a mail folder, whereas it could just re-use an existing open DB handle.) Nico -- _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users