I have a group of related questions that I've wondered about from time to time that I finally got around to looking up. I wanted to know if SQLite store types are vacuumed or if auto-vacuum is enabled, etc.
I checked files created by Core Data and auto-vacuum is indeed enabled ("full" mode): sqlite> PRAGMA auto_vacuum; 1 ... so that's fine, but SQLite's documentation says of auto_vacuum: "When the auto-vacuum flag is 1 (full), the freelist pages are moved to the end of the file and the file is truncated to remove the freelist pages at every commit. Note, however, that auto-vacuum only truncates the freelist pages from the file. Auto-vacuum does not defragment the database nor repack individual database pages the way that the VACUUM command does. In fact, because it moves pages around within the file, auto-vacuum can actually make fragmentation worse." Okay, well that sucks. So now the question is this: does Core Data implicitly run VACUUM? If so, when? How often? Unfortunately googling and archive-searching did not produce any obvious answers to this particular question. My guess is that the answer is, "Yes, at every save," but I'd like to be sure and I'm not familiar enough with SQLite to know how to test this myself. Any takers? -- I.S. _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]