My disk was full when the system rebooted, and the important SQLite table got blanked at that time. The table is a simple key/value table with the primary key. The application is synchronizing the in-memory key-value table with the disk one using insert/update/delete statements using that key. The in-memory table was full at the moment of reboot, and there is no way it could run any delete operations at all.

After the reboot the table still existed but was blank. The file was about the same size, but had large zeroed areas, and no rows in this table. Other table still had rows.


How could this have happened that data could get lost like that? I was under the impression that SQLite is safe during such special conditions?


SQLite should preserve data in such case, it should fail operations that can't be performed, but the old data should absolutely stay intact.


sqlite-3.14.1 on FreeBSD.


Yuri

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

Reply via email to