-
Notifications
You must be signed in to change notification settings - Fork 228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow vacuum on main #734
base: master
Are you sure you want to change the base?
Allow vacuum on main #734
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #734 +/- ##
==========================================
+ Coverage 74.02% 81.14% +7.11%
==========================================
Files 192 196 +4
Lines 27899 29648 +1749
Branches 2802 4100 +1298
==========================================
+ Hits 20653 24057 +3404
+ Misses 4914 3916 -998
+ Partials 2332 1675 -657 ☔ View full report in Codecov by Sentry. |
The amalgamation does not support LIMIT on delete.
While I don't like a lot the implementation (the parsing of vacuum) this would fix #530. |
3501316
to
d9ee242
Compare
The implementation seems now better after the call with @just-now. I'm marking this as ready. |
As discussed in these days on MM, VACUUM seems to be a transactional operation.
While it is true that it needs to attach a temporary database, new pages are then copied in the WAL and, as such, the attachment of the temporary file does not violate the VFS assumption about WAL and main file being unique after every statement.
This PR changes the implementation from one that allows 0 attached database (through
sqlite3_limit
) to one using an authorizer to allow only temporary files to be attached.