Whenever a forum post mentions AntennaPod having dropped the database and recreated an empty one, this bugs-first-aid/database-error tends to be mentioned. I believe more people would be helped if the current content of that article could be clarified and extended.
Currently that documentation page strongly suggests the only reason for encountering a corrupted database would be #2463. We could probably assume that will be the case for fewer and fewer users.
How about lifting out the instructions for recovery, rather than immediately linking into GitHub? In that way, the post can be updated and the instructions refined as we better learn how to examine and repair corrupt databases. (Providing deep-links first after giving the reader context on whether the link might be relevant.)
During the last two days, AntennaPod has reset my database three times. I have discovered that merely importing CorruptedDatabaseBackup.db is the best action, since it has in fact not been corrupt at all. Maybe explicitly typing phrasing that as a suggestion should be among the first things to attempt? (There’s likely a mis-detected corruption bug to also be discussed, but lets please keep this post about improving this disaster-recovery documentation.)
Maybe one crucial clarification would be replace the fuzzy very old AntennaPod version description with something more precise, like prior to version 1.6.4.5 of AntennaPod (released January 2018)? Or is it perhaps 1.7.1 (November 2018) that is the cautious choice?
As for other clarifications;
Do I understand correctly that the #2463 issue was about those earlier versions using WAL? In that case; Would the output of PRAGMA journal_mode;
determine whether #2463 could be the cause or not? Is the expectation that users affected by the bug would get WAL
rather than DELETE
, or would more recent version of AntennaPod have successfully updated that already?
The corrupted SQLit��� ��Ft 3
header seems to be a known recurring indicator? Can one rule out the #2463 bug in case the header is indeed intact?
I fail to see any kind of timestamp on the mentioned documentation page. Is that me not bringing my eyes, a known decision or something one might wish to add?