On 1/31/17, Ward WIllats <sqlite-us...@wardco.com> wrote: > 1. The operational assumption (delete need pages) I've asserted here is > correct, and
That is correct. While the delete is underway, you need to have both the old and new content of every modified database page stored on disk, in case a rollback is required. Actually, that is not 100% true. The "new" value of pages added to the freelist leaf pages is not saved since it does not matter if the content of a freelist leaf page changes due to a power failure followed by a recovery. But even on a full table delete, not every page becomes a freelist leaf page, so you still need some space. That said, if you are in WAL mode, the new page content might be stored in WAL pages that have already been allocated, if space is available in the WAL file. You can increase the chance that space will be available in the WAL file if you run "PRAGMA wal_checkpoint" just prior to running your big DELETE. > > This is sqlite 3.10.1. Version 3.16.2 is faster, fully compatible, and contains new features. :-) -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users