Remix.run Logo
slashdev 2 days ago

It is good that it doesn't give you an option. I don't want some app on my phone telling me its database is corrupt, I want it to always load back to the last good state and I'll handle any missing data myself.

The checksums are not going to fail unless there was disk corruption or a partial write.

In the former, thank your lucky stars it was in the WAL file and you just lose some data but have a functioning database still.

In the latter, you didn't fsync, so it couldn't have been that important. If you care about not losing data, you need to fsync on every transaction commit. If you don't care enough to do that, why do you care about checksums, it's missing the point.