On Friday, April 10, 2020 at 12:12:50 AM UTC+10, Daniel Jagszent wrote: > > > > I'm wondering if at some point the journal file got clobbered, or was > > not backed up. > AFAIK S3QL does not use journaling > > https://github.com/s3ql/s3ql/blob/595b774705b95be350e3b262738e929d390ba885/src/s3ql/database.py#L34 > > > That leaves open the possibility of a corruption due to a crash then; from SQLite docs: "Without a journal, there is no way for a statement to unwind partially completed operations following a constraint error. This might also leave the database in a corrupted state."
Which is probably what happened; my mount logs show the following, which correspond to the time the corrupt DB was created (though the disks all have several GB free, so I'm confused as to the cause of the error): 2020-04-09 11:07:59.300 30668:MainThread s3ql.metadata.dump_metadata: ..contents.. 2020-04-09 11:08:04.177 30668:MainThread s3ql.metadata.dump_metadata: ..ext_attributes.. 2020-04-09 11:08:04.178 30668:MainThread s3ql.metadata.upload_metadata: Compressing and uploading metadata... 2020-04-09 11:12:11.918 30668:MainThread s3ql.metadata.upload_metadata: Wrote 55.9 MiB of compressed metadata. 2020-04-09 11:12:11.918 30668:MainThread s3ql.metadata.upload_metadata: Cycling metadata backups... 2020-04-09 11:12:11.918 30668:MainThread s3ql.metadata.cycle_metadata: Backing up old metadata... 2020-04-09 11:12:25.099 30668:MainThread s3ql.mount.main: Cleaning up local metadata... 2020-04-09 11:13:19.111 30668:MainThread root.excepthook: Uncaught top-level exception: Traceback (most recent call last): File "/usr/bin/mount.s3ql", line 11, in <module> load_entry_point('s3ql==3.3.2', 'console_scripts', 'mount.s3ql')() File "/usr/lib64/python3.6/site-packages/s3ql-3.3.2-py3.6-linux-x86_64.egg/s3ql/mount.py", line 263, in main db.execute('VACUUM') File "/usr/lib64/python3.6/site-packages/s3ql-3.3.2-py3.6-linux-x86_64.egg/s3ql/database.py", line 98, in execute self.conn.cursor().execute(*a, **kw) File "src/cursor.c", line 236, in resetcursor apsw.FullError: FullError: database or disk is full -- You received this message because you are subscribed to the Google Groups "s3ql" group. To unsubscribe from this group and stop receiving emails from it, send an email to s3ql+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/s3ql/96871aeb-49b8-4bbb-916b-4a63e5edf12d%40googlegroups.com.