Hello, I'm developing an application with C++ and sqlite C api, and I updated SQLite 3.17.0 from 3.7.12 recently.
Because of changed default page size, My application has different page-sized encrypted databases : 1024 and 4096. After the crash while writing something in 4096 page-sized database(exactly, between beginning transaction and commit), the application crashes during opening the database and It happens 1~4 times until I success to launch it. As a result of some inspections, I realized the struct database has different page size: the page size in struct Btree is 4096, but the value in struct Pager is 1024. And I'm only allowed to retrieve the value of Btree(by using sqlite3BtreeGetPagerSize), so when the application decrypts 1024 page-sized database as it has 4096 page size the crash happens. The databases using synchronous=0 for performance and journal_mode = DELETE. Is there any method to prevent this? PS. When I changed journal_mode into WAL, it didn't happened. Is this the solution? _______________________________________________ sqlite-users mailing list [email protected] http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

