Bug 296039
| Summary: | [SQLite] PRAGMA incrementalVacuum does not work | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Przemyslaw Gorszkowski <pgorszkowski> |
| Component: | New Bugs | Assignee: | Przemyslaw Gorszkowski <pgorszkowski> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | All | ||
| OS: | All | ||
Przemyslaw Gorszkowski
PRAGMA incrementalVacuum does not work because it is multi-step PRAGMA(multiple steps which return SQLITE_ROW) and in SQLiteDatabase::runIncrementalVacuumCommand it is treated as single-step (the expected return is SQLITE_DONE).
I couldn't find direct information about that in documentation of SQLite except one sentence in `sqlite3_data_count`(https://www.sqlite.org/c3ref/data_count.html) description: "... except in the case of the PRAGMA incremental_vacuum where it always returns zero since each step of that multi-step pragma returns 0 columns of data.".
I tested it and confirmed by adding "incrementalVacuum" functionality for IndexedDB. The original fix is: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1532 - it includes: adding "incrementalVacuum" functionality for IndexedDB and fix for "PRAGMA incrementalVacuum".
I would like to add fix for "PRAGMA incrementalVacuum" first and then separately adding "incrementalVacuum" functionality to IndexedDB.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Przemyslaw Gorszkowski
Pull request: https://github.com/WebKit/WebKit/pull/48110
EWS
Committed 297509@main (8c824fc262b7): <https://commits.webkit.org/297509@main>
Reviewed commits have been landed. Closing PR #48110 and removing active labels.
Radar WebKit Bug Importer
<rdar://problem/156031707>