On 3/11/15, Mario M. Westphal <mw at mwlabs.de> wrote: > > The typical scenario is: Windows 7 or 8. One user. Database on a local hard > disk or SSD. No power failure. No blue-screen or other issue from the ?How > to damage your SQLite database? help topic. The error just happens. It may > cause SQLite to refuse loading the database, or it is discovered when my > users run the routine diagnosis, which includes a pragma integrity_check() > and if it returns anything other than ?OK? it flags the database as defect. > Users then need to restore the database from the backup. A database once > marked as defect will always stay in that state.
Do you have some example corrupt database files that you can share? Can you show the complete output of "PRAGMA integrity_check"? Can you alter your application so that it invokes "PRAGMA quick_check" more frequently, so that the problem is detected sooner? Can you provide us more detail on your work-load. How many separate threads are accessing the database from within a single process? How many processes are accessing the database? Are they all writing, or are some just reading? What are your typical transactions? -- D. Richard Hipp drh at sqlite.org