Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
History of src/vacuum.c
2019-05-14
| ||
22:25 | Merge all the latest trunk enhancements into the reuse-schema branch. file: [5b9b4771] check-in: [018f3199] user: drh branch: reuse-schema, size: 15730 | |
21:51 | Merge the latest trunk enhancements into begin-concurrent. file: [0bbe81da] check-in: [5d3a6e18] user: drh branch: begin-concurrent, size: 15722 | |
2019-04-23
| ||
22:00 | Make no atttempt to generate VDBE code for VACUUM after a syntax error. file: [82dcec9e] check-in: [93084247] user: drh branch: trunk, size: 15690 | |
2019-04-15
| ||
15:35 | Merge recent changes from trunk into reuse-schema file: [36b6328b] check-in: [5c6c9e7f] user: drh branch: reuse-schema, size: 15686 | |
14:59 | Merge the latest enhancements from trunk. file: [247d5d95] check-in: [7c328e88] user: drh branch: begin-concurrent, size: 15678 | |
2019-04-04
| ||
18:20 | Minor fixes to requirements marks. file: [72690ccb] check-in: [02ebc60b] user: drh branch: trunk, size: 15646 | |
15:25 | Simplification of the recent VACUUM changes that make the code more like what it was before the change. Also, make the VACUUM command a no-inline procedure to work around a performance regression. file: [d07bc402] check-in: [9cac5ac1] user: drh branch: trunk, size: 15596 | |
14:00 | Only preserve rowid values for VACUUM INTO. Keep the legacy behavior of renumbering rowids for ordinary VACUUM. file: [b26da99e] check-in: [13a0ea64] user: drh branch: trunk, size: 15641 | |
2019-03-26
| ||
12:07 | Merge recent enhancements from trunk. file: [14622709] check-in: [774d0d52] user: drh branch: begin-concurrent, size: 15573 | |
2019-03-20
| ||
16:03 | Merge latest trunk changes into this branch. file: [04b27213] check-in: [4cd20ca6] user: dan branch: reuse-schema, size: 15581 | |
2019-03-19
| ||
20:42 | Enhance the VACUUM INTO command so that it works on read-only databases. file: [532553ee] check-in: [55be6d0a] user: drh branch: trunk, size: 15541 | |
2019-02-05
| ||
19:51 | Merge latest trunk into this branch. file: [7dbed4a7] check-in: [c089cc4f] user: dan branch: reuse-schema, size: 15330 | |
2019-01-26
| ||
16:34 | Roll back the transaction if a write statement fails with OE_Abort but there is no open statement transaction. file: [c3b29ca1] check-in: [d536be69] user: dan branch: rollback-abort, size: 15404 | |
2019-01-02
| ||
16:08 | Merge latest trunk changes into this branch. file: [b95f6ab5] check-in: [5bf212f1] user: dan branch: begin-concurrent, size: 15322 | |
14:34 | Raise an error if the argument to VACUUM INTO is an identifier. file: [a9f389f4] check-in: [6c6fb1c6] user: drh branch: trunk, size: 15290 | |
2018-12-15
| ||
20:59 | Merge latest wal2 changes into this branch. file: [ae215242] check-in: [06bb80ee] user: dan branch: begin-concurrent-wal2, size: 15268 | |
2018-12-08
| ||
00:43 | Allow the INTO clause of VACUUM to be a text-valued expression. file: [3ffe64ec] check-in: [af172b53] user: drh branch: vacuum-into, size: 15236 | |
2018-12-07
| ||
23:48 | Do not allow VACUUM INTO into a file that already exists. file: [5d494973] check-in: [92f70e0f] user: drh branch: vacuum-into, size: 14775 | |
20:40 | Merge the VACUUM simplification from trunk. file: [7b74a106] check-in: [93d92a0a] user: drh branch: vacuum-into, size: 14495 | |
20:26 | Remove a line of code from VACUUM that is no longer needed, due to the change that allows ATTACH to run within a transaction. file: [b25dbace] check-in: [a92c398f] user: drh branch: trunk, size: 14102 | |
17:28 | Prototype implementation for the VACUUM INTO command. file: [76b92b5d] check-in: [036e3320] user: drh branch: vacuum-into, size: 14818 | |
2018-12-06
| ||
17:06 | When masking bits off of sqlite3.flags, make sure the mask is 64 bits in size so as not to accidentally mask of high-order bits. file: [c6708552] check-in: [53d3b169] user: drh branch: trunk, size: 14425 | |
16:50 | When saving off the value of sqlite3.flags, take care to preserve all 64 bits. file: [675a4bda] check-in: [9c6dbcfa] user: drh branch: trunk, size: 14420 | |
2018-11-26
| ||
07:21 | Merge latest trunk changes into this branch. file: [8747a99e] check-in: [28a615a2] user: dan branch: begin-concurrent, size: 14452 | |
2018-11-17
| ||
18:45 | Merge latest trunk changes into this branch. file: [87907c33] check-in: [9fdd1868] user: dan branch: reuse-schema1, size: 14460 | |
2018-11-06
| ||
19:26 | Enable DEFENSIVE mode by default for tests. This requires lots of case of turning DEFENSIVE off in order to dodgy things to the database for testing purposes. No all of those cases are yet handled, so "make test" does not run to completion. file: [836cadc9] check-in: [a1d6c671] user: drh branch: read-only-shadow, size: 14420 | |
2018-10-30
| ||
00:06 | In the VACUUM command, defer setting writable_schema until after it has been determined that the schema is not corrupt. file: [3ff33a67] check-in: [3afec260] user: drh branch: robust-against-damaged-db, size: 14396 | |
2018-10-08
| ||
18:58 | Merge latest trunk changes into this branch. file: [6da236d4] check-in: [2ac72114] user: dan branch: reuse-schema, size: 14422 | |
2018-06-06
| ||
17:03 | Merge changes from trunk, including all the 3.24.0 changes plus some later enhancements. file: [4879e471] check-in: [d7299bfe] user: drh branch: begin-concurrent, size: 14414 | |
16:28 | Change sqlite3BtreeBeginTrans() to return the BTREE_SCHEMA_COOKIE, for a small speed improvement when starting new transactions. file: [36e7d21a] check-in: [a10662aa] user: drh branch: trunk, size: 14382 | |
2018-05-15
| ||
11:45 | Merge latest trunk changes with this branch. file: [162c629c] check-in: [ae86cf60] user: dan branch: begin-concurrent, size: 14411 | |
2018-05-03
| ||
21:51 | Improved security for VACUUM. This check-in combines the fixes of [ab0d99d0b5ede] and [27754b74ddf646] in a way that is less likely to to be broken by future changes. file: [37730af7] check-in: [260fc696] user: drh branch: trunk, size: 14379 | |
2018-05-02
| ||
15:00 | Prevent VACUUM from running any commands in sqlite_master.sql other than CREATE statements. That is all that should be there anyhow. This fixes a problem discovered by OSSFuzz. Test cases in TH3. file: [593498d6] check-in: [ab0d99d0] user: drh branch: trunk, size: 14136 | |
2018-03-02
| ||
17:40 | Merge latest trunk changes into this branch. file: [f0b83022] check-in: [36801eff] user: dan branch: begin-concurrent, size: 14144 | |
2018-02-12
| ||
13:30 | Fix a possible infinite loop in VACUUM that can come up when the schema has been carefully corrupted. Problem discovered by OSSFuzz. Test cases in TH3. file: [762ee9bb] check-in: [27754b74] user: drh branch: trunk, size: 14112 | |
2017-08-09
| ||
20:35 | Add experimental sqlite3_open_v2() flag SQLITE_OPEN_REUSE_SCHEMA. For sharing identical in-memory schema objects between connections. file: [c31a0fe4] check-in: [a6256980] user: dan branch: reuse-schema, size: 14097 | |
2017-08-01
| ||
13:54 | Merge recent enhancements from trunk. file: [07eec96f] check-in: [aafe1fec] user: drh branch: begin-concurrent, size: 14089 | |
2017-07-26
| ||
19:59 | Add the new sqlite3.mDbFlags field. Factor out bits of sqlite3.flags that do not interact with PRAGMA statements into sqlite3.mDbFlags. file: [90839322] check-in: [3808a00f] user: drh branch: trunk, size: 14057 | |
2017-07-20
| ||
17:47 | Merge all the latest trunk enhancements. file: [ab48f1d3] check-in: [213c61cb] user: drh branch: begin-concurrent, size: 13963 | |
2017-06-16
| ||
13:43 | Prevent pagesize changes on VACUUM in encrypted databases even when running the VACUUM on an attached database. file: [874c0f2f] check-in: [11693849] user: drh branch: trunk, size: 13931 | |
2017-03-24
| ||
15:09 | Merge all recent enhancements from trunk. file: [8aa1db0b] check-in: [fd5676fe] user: drh branch: begin-concurrent, size: 13961 | |
2017-02-18
| ||
13:47 | Add the SQLITE_BUG_COMPATIBLE_20160819 compile-time option to omit the error message when an unrecognized argument is provided to the VACUUM command. file: [1fe4555c] check-in: [49181427] user: drh branch: trunk, size: 13929 | |
2017-01-09
| ||
06:33 | Upgrade this branch to 3.16 plus the various fixes that appeared after its release. file: [ebcf4579] check-in: [d0e212d0] user: dan branch: begin-concurrent, size: 13363 | |
2016-11-02
| ||
14:50 | Fix an issue that was causing the new database image to be assembled entirely in heap memory when VACUUMing a database, even if it should use a temp file. This could cause SQLITE_NOMEM errors when vacuuming very large databases on 32-bit systems. file: [33c174b2] check-in: [30288453] user: dan branch: trunk, size: 13331 | |
2016-08-19
| ||
15:12 | Disable row counting on queries run while doing a VACUUM. file: [913970b9] check-in: [ad35ef11] user: drh branch: vacuum-attached-db, size: 13314 | |
14:20 | Add the capability to VACUUM an attached database by specifying the schema name as an argument to the VACUUM command. Since version 2.0, VACUUM has accepted an argument which was silently ignored. Now it has meaning. file: [0fecf4ba] check-in: [29d63059] user: drh branch: vacuum-attached-db, size: 13277 | |
2016-08-18
| ||
14:33 | Rename the Db.zName field to Db.zDbSName to make it more descriptive and to distinguish it from all of the other "zName" variables scattered throughout the code. file: [f6f10c88] check-in: [92a22f01] user: drh branch: zDbSName, size: 14172 | |
2016-08-11
| ||
19:12 | Merge version 3.14 plus some subsequent patches (including the page-cache performance patch) from trunk. file: [ca88e6d3] check-in: [d9f8918c] user: drh branch: begin-concurrent, size: 14201 | |
2016-07-26
| ||
04:49 | Copy the cache_spill setting from the main database over to the vacuum_db transient database when running a VACUUM. file: [9dd2f5d2] check-in: [c0e7d98e] user: drh branch: trunk, size: 14169 | |
2016-07-25
| ||
22:40 | In the VACUUM command, set the cache_size of the transient vacuum_db database to be the same as the database being vacuumed. file: [7949183a] check-in: [b78d9954] user: drh branch: trunk, size: 14099 | |
18:50 | Add the experimental SQLITE_VACUUM_CACHE_SIZE macro. file: [d60b11b2] check-in: [68ecd8e0] user: drh branch: apple-osx, size: 14171 | |
2016-07-13
| ||
23:18 | Legacy tests now passing. file: [544ec90a] check-in: [f33526a3] user: drh branch: sqlite3_trace_v2, size: 14032 | |
22:55 | First cut at implementing the new sqlite3_trace_v2() interface. file: [459ff7cb] check-in: [cb0062fe] user: drh branch: sqlite3_trace_v2, size: 14032 | |
2016-03-16
| ||
19:34 | Merge the latest enhancements from trunk. file: [c1a94413] check-in: [a7978ab6] user: drh branch: begin-concurrent, size: 14078 | |
2016-02-13
| ||
23:43 | Enhance ability to debug out-of-memory errors. file: [feb1eabb] check-in: [6a9c4a3e] user: mistachkin branch: noMemBkpt, size: 14046 | |
2015-08-24
| ||
19:56 | Change "BEGIN UNLOCKED" to "BEGIN CONCURRENT". file: [983cc375] check-in: [ba1ab858] user: dan branch: begin-concurrent, size: 14068 | |
2015-08-21
| ||
20:11 | Fix many minor issues in the unlocked transaction code. file: [d35c7291] check-in: [53aaeea6] user: dan branch: begin-concurrent, size: 14066 | |
2015-07-27
| ||
19:31 | Add an experimental "BEGIN UNLOCKED" command. file: [4e7e18d8] check-in: [80794216] user: dan branch: begin-concurrent, size: 14057 | |
2015-04-01
| ||
18:20 | When vacuuming an index that uses no collations other than BINARY, assume that the order of index entries will not be changed by the VACUUM. file: [2ddd5cad] check-in: [e403460b] user: dan branch: sorter-opt, size: 14036 | |
2015-02-21
| ||
00:19 | Keep track of the optimal number of reserved bytes (by looking at reserve byte requests in calls to sqlite3BtreeSetPageSize()) and then change the reserve byte count to the optimal when doing a VACUUM or when using the backup API. file: [9460b9de] check-in: [28c2b726] user: drh branch: trunk, size: 13887 | |
2014-11-07
| ||
13:24 | Fix harmless typos in comments. file: [9b30ec72] check-in: [94c564da] user: drh branch: trunk, size: 13880 | |
2014-09-06
| ||
16:39 | Fix typos in comments. No code changes. file: [59f03f92] check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 13879 | |
2013-10-23
| ||
16:03 | Get VACUUM and the xfer optimization working with WITHOUT ROWID. file: [3728d749] check-in: [579815ff] user: drh branch: omit-rowid, size: 13878 | |
2013-09-30
| ||
11:01 | Update and modernize an obsolete comment associated with VACUUM. No changes to code. file: [f313bc97] check-in: [94c914e3] user: drh branch: trunk, size: 13854 | |
2013-06-27
| ||
23:54 | Refactor names of fields in the sqlite3 object: "activeVdbeCnt" becomes "nVdbeActive". Related fields becomes "nVdbeRead", "nVdbeWrite", and "nVdbeExec". file: [d9c5759f] check-in: [14f79696] user: drh branch: trunk, size: 12657 | |
2013-05-01
| ||
20:36 | Preserve the application-ID across VACUUM. Updates to the magic number file. file: [ddf21cc9] check-in: [4a190bea] user: drh branch: application-id, size: 12659 | |
2012-10-15
| ||
18:02 | Hold the mutex on the shared-cache for the duration of a VACUUM operation. file: [2727bdd0] check-in: [629a42d4] user: dan branch: trunk, size: 12588 | |
2012-05-15
| ||
18:28 | The former sqlite3ResetInternalSchema() routine was really two different routines, selected by parameter, each with a confused mission. So split this routine up into three separate smaller routines, calling each separately as needed. Hopefully this will make further refactoring and schema reset collateral damage containment easier. file: [587a52bb] check-in: [aa0c3493] user: drh branch: shared-schema, size: 12556 | |
2012-02-28
| ||
17:57 | Fix spurious errors that may occur if an empty database is opened and then initialized as a WAL database by a second connection. file: [bfd53f9b] check-in: [16330a2f] user: dan branch: trunk, size: 12552 | |
2011-10-07
| ||
16:57 | Add the SQLITE_FCNTL_OVERWRITE file-control. Used by SQLite to indicate to the OS layer that the current transaction will overwrite the entire file. file: [0c0ba224] check-in: [1da87fcd] user: dan branch: trunk, size: 12282 | |
2011-09-30
| ||
12:01 | Disable the xfer optimization if "PRAGMA count_changes=1" is configured. Ticket [c48d99d690]. file: [297f3974] check-in: [9ddfe1e4] user: dan branch: trunk, size: 12460 | |
2011-04-04
| ||
23:08 | Add a comment to the VACUUM implementation explaining when all schemas are reset and not just the "main" schema. file: [05513dca] check-in: [2aff1b0c] user: drh branch: schema-parse-refactor, size: 12428 | |
2011-04-02
| ||
16:28 | Begin a series of changes designed to reduce the scope and frequency of invalidating schemas. Design goals are that the internal schema should never be deleted out from under a prepared statement that is running and that all prepared statements should be expired if the schema is invalidated. At the same time, minimize the number of schema invalidations. This change merely revises the sqlite3ResetInternalSchema() function to use -1 as the wildcard for "all" rather than 0, so that we can reset the main schema independently of all the others. file: [3b2b0998] check-in: [6a8ad6e3] user: drh branch: schema-parse-refactor, size: 12340 | |
2010-09-24
| ||
09:32 | Add experimental branch disallowing VACUUM when there are one or more active SQL statements. file: [924bd1bc] check-in: [c1ebcacd] user: dan branch: experimental, size: 12338 | |
2010-06-11
| ||
17:01 | Refactor and simplify the logic used to change journalmode. file: [241a8386] check-in: [95cc3f6f] user: drh branch: trunk, size: 12199 | |
2010-05-10
| ||
14:10 | If an ATTACH command fails due to OP_JournalMode but still attaches the database, make sure VACUUM still detaches it when done. file: [b17355fc] check-in: [6ecdc7ba] user: drh branch: trunk, size: 12203 | |
2010-05-05
| ||
04:11 | Make sure the page size of the main database is fixed following a failed VACUUM attempt. Otherwise, two consecutive failed VACUUM attempts with attempted page_size changes on encrypted or WAL databases could result in database corruption. file: [90a32e09] check-in: [208e7d5d] user: drh branch: trunk, size: 12042 | |
03:39 | Do not attempt to modify the page_size when running VACUUM on a WAL database. file: [15db45c7] check-in: [58a1a59b] user: drh branch: trunk, size: 11997 | |
2010-04-24
| ||
14:02 | When commands such as ALTER TABLE and VACUUM use SQL internally, make sure they use only the built-in functions and not application-defined overrides for those functions. file: [8e7d9a6f] check-in: [0291ed97] user: drh branch: trunk, size: 11763 | |
2010-03-03
| ||
00:02 | When TEMP files are in memory, also put the massive TEMP file used by the VACUUM command in memory. This is a cherry-pick merge of [9daf4e7d07] file: [137a2f49] check-in: [e5342234] user: drh branch: branch-3.6.22, size: 11716 | |
2010-03-02
| ||
23:34 | When TEMP files are in memory, also put the massive TEMP file used by the VACUUM command in memory. file: [b1d542c8] check-in: [9daf4e7d] user: drh branch: trunk, size: 11740 | |
2010-02-25
| ||
02:32 | Merge in all of the logging enhancements. This is a cherrypick merge of the following check-ins: [103321e37a], [a8076aede3], [6d910245ad], [7c4cca6d1a], [edea3bb740], [1a6d4bb130], [a8c984c1d6], [69a493182f], and [1168763d2c]. file: [1f3f6d60] check-in: [46f406b2] user: drh branch: branch-3.6.22, size: 11622 | |
2010-02-24
| ||
19:23 | Add a sqlite3_log() call on anonymous constraint failures. Fix the output of test cases having to do with improved reprepare reporting. Fix the VACUUM command to report more helpful error messages when things go wrong. file: [deb50c41] check-in: [69a49318] user: drh branch: trunk, size: 11646 | |
2010-01-12
| ||
23:54 | Make sure internal queries are well ordered, even when the reverse_unordered_selects pragma is in effect. Ticket [eb942c64a157]. file: [28ee5a49] check-in: [0209f171] user: drh branch: trunk, size: 11057 | |
2009-12-17
| ||
03:49 | Disable trace when recursively running commands while vacuuming. file: [db6415fd] check-in: [69a1348a] user: drh branch: trunk, size: 11033 | |
2009-11-10
| ||
01:30 | Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [03309a08] check-in: [f6c045f6] user: drh branch: trunk, size: 10890 | |
2009-10-20
| ||
15:01 | Fix the VACUUM command so that when the MAIN and TEMP databases have identically named tables, content from the TEMP database does not accidently overwrite MAIN database content. Ticket [d82e3f3721296e905d7e8c9dee718f71a826b0eb]. Note that this bug could potentially lead to database corruption. file: [48e1282b] check-in: [0bbd8d72] user: drh branch: trunk, size: 10955 | |
2009-10-16
| ||
14:55 | Experimental fix for [f777251dc7]. This may be changed yet. file: [f2347520] check-in: [174477bc] user: dan branch: trunk, size: 10930 | |
2009-09-21
| ||
16:06 | Fix compilation with OMIT_TRIGGER defined. Ticket [1ff6d29030]. file: [869d08ea] check-in: [fb6ceed3] user: dan branch: trunk, size: 10608 | |
2009-07-02
| ||
07:47 | Cause opening a transaction on a sharable b-tree module automatically obtain a read-lock on page 1. This means there is no way for sqlite3BtreeGetMeta() to fail. (CVS 6836) file: [3fe0eebe] check-in: [e3c055f1] user: danielk1977 branch: trunk, size: 10455 | |
2009-06-03
| ||
11:25 | Define a set of constants to use as the "index" argument to sqlite3BtreeGetMeta and UpdateMeta. This makes some parts of the code easier to follow. (CVS 6709) file: [0e14f371] check-in: [6dbf4eca] user: danielk1977 branch: trunk, size: 10513 | |
2009-05-30
| ||
10:46 | In vacuum.c use "PagerIsMemdb(X)" instead of "PagerFile(X)->pMethods==0". (CVS 6692) file: [981686c9] check-in: [874295ce] user: danielk1977 branch: trunk, size: 10437 | |
2009-05-05
| ||
17:37 | Changes to vacuum.c to facilitate full coverage testing. (CVS 6606) file: [e8d17800] check-in: [86628465] user: drh branch: trunk, size: 10532 | |
2009-04-02
| ||
20:16 | Make sure the VACUUM statement locks down the page_size and auto_vacuum modes after it runs. Otherwise, pragmas might change these settings on a populated database, resulting in problems. (CVS 6442) file: [07121a72] check-in: [85e6a474] user: drh branch: trunk, size: 10345 | |
2009-02-03
| ||
16:51 | Commit first version of the 'backup' feature. (CVS 6241) file: [4929a585] check-in: [663479b4] user: danielk1977 branch: trunk, size: 10345 | |
2009-01-22
| ||
23:04 | Fix the VACUUM command so that it does not commit a transaction when it is mistakenly run within a transaction - it should leave the transaction open. (CVS 6200) file: [b78c2bfd] check-in: [75cc709b] user: drh branch: trunk, size: 10373 | |
2008-11-17
| ||
19:18 | Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) file: [383d6297] check-in: [8009220c] user: danielk1977 branch: trunk, size: 10402 | |
2008-08-26
| ||
21:07 | All the page_size pragma to change the page size on a new :memory: database, but not a vacuumed :memory: database. Ticket #3335 (CVS 5617) file: [fd77433d] check-in: [226a9056] user: drh branch: trunk, size: 10408 | |
2008-08-23
| ||
16:17 | Do not incorrectly detect corruption when an auto-vacuum database is converted to a non-auto-vacuum database within a vacuum. Ticket #3332. (CVS 5603) file: [a5b10ae2] check-in: [cb869946] user: danielk1977 branch: trunk, size: 10170 | |
2008-07-08
| ||
19:34 | Completely rework the sqlite3SetString() primitive so that it honors the SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374) file: [ef342828] check-in: [8ed04b1e] user: drh branch: trunk, size: 10052 | |
2008-06-17
| ||
01:03 | Do not allow a VACUUM to try to change the page_size on an encrypted database. (CVS 5225) file: [14eb21b4] check-in: [d49e5020] user: drh branch: trunk, size: 10066 | |
2008-05-21
| ||
13:44 | Fix the VACUUM command so that it does not modify the changes counts reported by sqlite3_changes() or sqlite3_total_changes(). Update documentation on sqlite3_changes() and sqlite3_total_changes() to state that "DELETE FROM table" records a change count of zero. (CVS 5151) file: [a5c289e5] check-in: [f5d61d7d] user: drh branch: trunk, size: 9748 | |
2008-04-30
| ||
16:38 | Add comment to speculate when setting journal_mode=OFF on VACUUM does not help performance. No changes to code. (CVS 5071) file: [c3b2b706] check-in: [9c8b4bab] user: drh branch: trunk, size: 9481 | |
2008-03-20
| ||
11:04 | Allow a VACUUM operation to change the page-size in the same way as it can be used to change a database between auto-vacuum and normal mode. (CVS 4896) file: [3524411b] check-in: [871df0e7] user: danielk1977 branch: trunk, size: 9084 | |
2008-01-03
| ||
00:01 | Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is added (though not currently used.) Add routines sqlite3VdbeAddOpX() where X is one of 0, 1, 2, 3, or 4. (CVS 4660) file: [3f34f278] check-in: [027875e4] user: drh branch: trunk, size: 8955 | |
2007-12-05
| ||
01:38 | Add the ability to change the autovacuum status of an existing database by setting the auto_vacuum pragma then running the VACUUM command. (CVS 4592) file: [25ffbd76] check-in: [bdfc19e8] user: drh branch: trunk, size: 8954 | |
2007-10-20
| ||
20:58 | Use the 2-argument version of substr() in the SQL contained in the VACUUM and ALTER TABLE commands. Ticket #2737. (CVS 4499) file: [a5e51c77] check-in: [82b08a3d] user: drh branch: trunk, size: 8872 | |
2007-08-29
| ||
12:31 | Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) file: [38745037] check-in: [e38ef81b] user: danielk1977 branch: trunk, size: 8910 | |
2007-08-24
| ||
11:43 | Remove unnecessary sqlite3MallocDisallow() that was preventing win32 from running. (CVS 4285) file: [5ec133b6] check-in: [eb6c98fc] user: drh branch: trunk, size: 8858 | |
2007-08-21
| ||
10:44 | Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) file: [318ccae7] check-in: [fbbd5bda] user: drh branch: trunk, size: 8913 | |
2007-08-16
| ||
04:30 | Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) file: [f45bd9d3] check-in: [deb7ecd6] user: drh branch: trunk, size: 8929 | |
2007-03-27
| ||
16:19 | Test handling of IO errors that occur in OsDelete() or OsTruncate() operations. Also use an anonymous file for temporary storage during a VACUUM. (CVS 3729) file: [8bd895d2] check-in: [b24a6e7b] user: danielk1977 branch: trunk, size: 8942 | |
14:44 | The -DSQLITE_OMIT_ATTACH=1 option now omits both the ATTACH and VACUUM commands. Ticket #2268. The regression test suite depends on both of these commands and will not run if compiled with this option. (CVS 3727) file: [b74b1107] check-in: [cbebfb89] user: drh branch: trunk, size: 9260 | |
2007-03-06
| ||
16:03 | Catch an out-of-memory condition in vacuum code. (Bug in (3373)). (CVS 3675) file: [327c6ffa] check-in: [302ec768] user: danielk1977 branch: trunk, size: 9208 | |
2007-01-03
| ||
23:37 | Clean up memory leaks and uninitialized variables detected by valgrind. Identify all tests where we deliberately derefence freed memory by adding a "-misuse" tag. (CVS 3550) file: [b4569b08] check-in: [70a86270] user: drh branch: trunk, size: 9118 | |
2006-11-18
| ||
20:20 | Make sure VACUUM cleans up after itself. Ticket #2071. (CVS 3514) file: [b620ffff] check-in: [2fdc147d] user: drh branch: trunk, size: 9118 | |
2006-10-10
| ||
13:07 | VACUUM now uses a temporary file in the official TEMP folder instead of a file in the same directory as the original database. (CVS 3470) file: [f6a7943f] check-in: [b743429d] user: drh branch: trunk, size: 9036 | |
2006-09-21
| ||
11:02 | Be more aggressive with the SQLITE_OMIT_VACUUM macro. Saves about 150 bytes of code space. (CVS 3432) file: [f958275b] check-in: [7e618db4] user: drh branch: trunk, size: 10693 | |
2006-09-13
| ||
19:21 | Remove unused malloc failure test. (Ticket #1976) Also include fixes for other problems discovered while investigating ticket #1976. (CVS 3415) file: [fb65647c] check-in: [f4ab546b] user: drh branch: trunk, size: 10702 | |
2006-09-11
| ||
23:45 | Add support for IF EXISTS on CREATE/DROP TRIGGER/VIEW. Ticket #1899. (CVS 3406) file: [e2cd4792] check-in: [e4fe736c] user: drh branch: trunk, size: 10966 | |
11:13 | Get VACUUM working with virtual tables. (CVS 3404) file: [5dac7938] check-in: [d5ffef38] user: drh branch: trunk, size: 11282 | |
2006-02-24
| ||
02:53 | Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) file: [5b37d0f4] check-in: [4b22e4b8] user: drh branch: trunk, size: 11005 | |
2006-01-18
| ||
16:51 | Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) file: [3865673c] check-in: [ac090f2a] user: danielk1977 branch: trunk, size: 11031 | |
2006-01-13
| ||
01:48 | Add a high-speed version of sqlite3GetVarint32 to vdbe.c for a 3% performance gain. (CVS 2933) file: [21a3c7f6] check-in: [a64e8251] user: drh branch: trunk, size: 11039 | |
2006-01-11
| ||
16:10 | Ensure the database attached as part of VACUUM can be detached successfully after a malloc() failure. (CVS 2918) file: [cd56995e] check-in: [8c26893c] user: danielk1977 branch: trunk, size: 11060 | |
2006-01-09
| ||
06:29 | Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) file: [f5a06809] check-in: [82b81f69] user: danielk1977 branch: trunk, size: 11515 | |
2006-01-06
| ||
14:32 | Change the OS interface layer to use traditional direct function call implementations instead of the more complicated virtual function table. Omit the asynchronous I/O demo. (CVS 2870) file: [a7301804] check-in: [2529c2e1] user: drh branch: trunk, size: 11479 | |
2005-12-09
| ||
20:02 | Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810) file: [fbfdd396] check-in: [83a59151] user: drh branch: trunk, size: 11483 | |
14:25 | Many small changes to ensure memory is not leaked after malloc() fails. (CVS 2808) file: [3cd457f9] check-in: [601c3354] user: danielk1977 branch: trunk, size: 11484 | |
2005-12-06
| ||
17:48 | Allow VACUUM to detach the auxillary database after malloc() fails. (CVS 2804) file: [4d64ce98] check-in: [6824a78b] user: danielk1977 branch: trunk, size: 11315 | |
12:52 | Some elements of the new malloc() failure handling. Not all cases work properly yet. Also, library is not threadsafe if malloc() fails right now. (CVS 2800) file: [b9906200] check-in: [e1606658] user: danielk1977 branch: trunk, size: 11289 | |
2005-11-30
| ||
03:20 | Restructure the OS interface yet again. This time make the OsFile object a virtual base class which is subclassed for unix, windows, and the crash test simulator. Add the new file "os.c" for common os layer code. Move all OS-specific routines into the sqlite3Os structure. (CVS 2795) file: [c9fe2660] check-in: [bd8740d1] user: drh branch: trunk, size: 10532 | |
2005-11-26
| ||
00:25 | Modify the OS layer so that I/O routines are called through a virtual function table. The os_test.c module has been replaced by test6.c. The crash tests are busted now and need to be fixed. (CVS 2785) file: [3a9d801b] check-in: [1f69aec2] user: drh branch: trunk, size: 10532 | |
2005-11-04
| ||
22:03 | VACUUM works even on an empty database. Ticket #1512. (CVS 2760) file: [baae8681] check-in: [1b6bf418] user: drh branch: trunk, size: 10528 | |
2005-11-03
| ||
02:15 | Add the ignore_check_constraints pragma. VACUUM works even on a database that contains table entries that violate check constraints. (CVS 2757) file: [2ed18a4e] check-in: [be83bfee] user: drh branch: trunk, size: 10479 | |
2005-06-07
| ||
09:21 | Remove SSE vacuum hook. (CVS 2502) file: [829d9e1a] check-in: [59960a59] user: danielk1977 branch: trunk, size: 10553 | |
2005-05-24
| ||
12:01 | Move a few things around to make building without the parser easier. (CVS 2479) file: [f4eb8fac] check-in: [5fadb464] user: danielk1977 branch: trunk, size: 10894 | |
2005-05-23
| ||
13:00 | Retain the error string if an error is generated by SSE during a VACUUM. (CVS 2476) file: [f14521a8] check-in: [f7b76d02] user: danielk1977 branch: trunk, size: 10947 | |
2005-05-22
| ||
06:49 | Allow schema objects beginning with sqlite_ to be created if the SQLITE_WriteSchema flag is set. (CVS 2470) file: [bc1b36a5] check-in: [afc8ce42] user: danielk1977 branch: trunk, size: 10851 | |
2005-04-28
| ||
19:03 | Add hooks for the SSE extension. (CVS 2449) file: [84a3beba] check-in: [90f4cf2a] user: drh branch: trunk, size: 10481 | |
2005-02-16
| ||
03:27 | Get vacuum working on database that used to have autoincrement tables but where all such tables have been dropped. Ticket #1121. (CVS 2344) file: [5cf59800] check-in: [8f7c639d] user: drh branch: trunk, size: 10182 | |
2005-02-14
| ||
00:25 | Cleanup the vacuum bug fixes in version 2.8. (CVS 2327) file: [12de02a8] check-in: [5658da7e] user: drh branch: version_2, size: 9242 | |
00:21 | Fix the vacuum bug in version 2.8. Also prepare for release 2.8.16. (CVS 2326) file: [9a59796f] check-in: [0eaebad5] user: drh branch: version_2, size: 9874 | |
2005-02-12
| ||
00:19 | Fix a problem with VACUUM that can lead to database corruption. (CVS 2323) file: [ccb34e92] check-in: [63894baf] user: drh branch: trunk, size: 10162 | |
2005-02-05
| ||
12:48 | Allow expressions (including variables) in LIMIT and OFFSET clauses. Ticket #1096. (CVS 2316) file: [4dbe45a5] check-in: [515e5033] user: danielk1977 branch: trunk, size: 9776 | |
2005-02-03
| ||
01:08 | Get AUTOINCREMENT and VACUUM working together. Ticket #1095. (CVS 2311) file: [14d1c346] check-in: [332a531d] user: drh branch: trunk, size: 9716 | |
2005-01-08
| ||
12:42 | Fix a problem with auto-vacuum databases and the VACUUM command. Also add "pages read" and "pages written" statistics to the pager layer. (CVS 2183) file: [1a9db113] check-in: [fb3bf68d] user: danielk1977 branch: trunk, size: 9251 | |
2004-11-22
| ||
13:35 | Ensure tests pass when SQLITE_OMIT_COMPOUND_SELECT is defined. (CVS 2138) file: [705256e1] check-in: [007be591] user: danielk1977 branch: trunk, size: 9142 | |
2004-11-20
| ||
19:18 | Omit the maximum loop count on the random name chooser in the VACUUM command. Add a comment to explain why this is safe and does not result in an infinite loop. Ticket #1009. (CVS 2122) file: [d061dd90] check-in: [1241086f] user: drh branch: trunk, size: 8989 | |
19:01 | Preserve the default_temp_store pragma across VACUUM in version 2.8. (Version 3.0 already does this.) Ticket #1008. (CVS 2120) file: [e6e07446] check-in: [7fa623f2] user: drh branch: version_2, size: 9972 | |
2004-10-30
| ||
20:23 | Begin adding the ability to remove unused features at compile-time and still have all the tests pass. (CVS 2033) file: [ecb4a2c6] check-in: [2aa506cc] user: drh branch: trunk, size: 8556 | |
2004-09-17
| ||
20:02 | Get VACUUM working on databases that have reserved bytes at the end of each page. (CVS 1963) file: [257de362] check-in: [90bb3af6] user: drh branch: trunk, size: 8612 | |
2004-09-06
| ||
17:24 | Fix a naming conflict between sqlite versions 2 and 3. An open sqlite3 connection now *must* be called "sqlite3". You cannot call it "sqlite". This might break existing code. (CVS 1941) file: [819a3f41] check-in: [3ddf5a9d] user: drh branch: trunk, size: 8579 | |
2004-09-05
| ||
00:33 | Make VACUUM work when the page size is different than the default 1024. Ticket #890. (CVS 1939) file: [c5f11bf2] check-in: [fa82beca] user: drh branch: trunk, size: 8578 | |
2004-09-02
| ||
15:27 | Fix VACUUM so that it works on files whose name contains '. Ticket #873 (CVS 1930) file: [47bf6837] check-in: [8dd938e4] user: drh branch: trunk, size: 8333 | |
2004-07-26
| ||
23:07 | Get VACUUM working with UNIQUE indices. Ticket #829. (CVS 1870) file: [9978a576] check-in: [88a19a43] user: drh branch: trunk, size: 8333 | |
2004-07-24
| ||
14:35 | Fix more problems with deferred execution of CREATE. Still need to do DROP. There is now a memory leak. (CVS 1865) file: [23ec8c5f] check-in: [6db3f122] user: drh branch: trunk, size: 8041 | |
2004-06-30
| ||
09:49 | Coverage tests for vacuum.c (CVS 1776) file: [b8546f49] check-in: [152e9940] user: danielk1977 branch: trunk, size: 8013 | |
06:30 | Add some tests for overlapping SELECT, COMMIT and ROLLBACK commands. (CVS 1774) file: [4aede0a7] check-in: [d256c149] user: danielk1977 branch: trunk, size: 7756 | |
2004-06-26
| ||
08:38 | Remove the 'nMaster' argument from various pager and btree functions. (CVS 1737) file: [353c7f69] check-in: [4e207209] user: danielk1977 branch: trunk, size: 7030 | |
2004-06-19
| ||
09:08 | Make sure ATTACH and DETACH fail if a transaction is active. (CVS 1633) file: [fcb93021] check-in: [c49d8bdc] user: danielk1977 branch: trunk, size: 7033 | |
2004-06-15
| ||
11:40 | Minor bugfixes and test case adjustments for version 2 test cases to work with version 3. (CVS 1598) file: [f9561c80] check-in: [e21a1813] user: danielk1977 branch: trunk, size: 7033 | |
2004-06-04
| ||
19:07 | Calling sqlite_interrupt() while VACUUM is running should not cause an error. (CVS 1529) file: [36a19aa8] check-in: [1cf94a7c] user: drh branch: version_2, size: 9978 | |
2004-06-03
| ||
16:08 | Untested updates to support atomic multi-file transactions (CVS 1526) file: [b921eb77] check-in: [d57e5252] user: danielk1977 branch: trunk, size: 6998 | |
2004-05-31
| ||
10:01 | Add read-transactions to the btree and vdbe. The compiler doesn't invoke them yet. (CVS 1502) file: [c91acc31] check-in: [6b43633a] user: danielk1977 branch: trunk, size: 6995 | |
08:26 | Replace OP_Begin, OP_Commit and OP_Rollback with OP_AutoCommit. (CVS 1500) file: [16d1b4ab] check-in: [b8ed812c] user: danielk1977 branch: trunk, size: 6992 | |
2004-05-29
| ||
10:43 | Ensure vacuum handles table names with spaces in them. (CVS 1491) file: [82ce1fc8] check-in: [0a6689be] user: danielk1977 branch: trunk, size: 7309 | |
10:23 | Fix vacuum so that it works with blobs. (CVS 1490) file: [53539c1d] check-in: [4feb4b9a] user: danielk1977 branch: trunk, size: 7295 | |
2004-05-22
| ||
09:21 | Use the new form of the sqlite3_open() API everywhere. (CVS 1437) file: [8734f897] check-in: [b4492173] user: danielk1977 branch: trunk, size: 9822 | |
2004-05-10
| ||
20:27 | Improvements to testing of sqlite_interrupt. More checking for interrupt inside of VACUUM. (CVS 1344) file: [d34374a2] check-in: [d596f513] user: drh branch: version_2, size: 9971 | |
10:34 | Change the names of external symbols from sqlite_XXX to sqlite3_XXX. (CVS 1338) file: [c134702e] check-in: [2242423e] user: danielk1977 branch: trunk, size: 9783 | |
2004-05-08
| ||
08:23 | Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the library links again. It doesn't work yet, due to changes in the btree layer calling convention. (CVS 1324) file: [91ba5a23] check-in: [8af6474c] user: danielk1977 branch: trunk, size: 9772 | |
2004-03-10
| ||
18:57 | Typecast to work around a bug in {quote: CodeWarrior} Studio v9.1. Ticket #654. (CVS 1292) file: [a4e8464c] check-in: [5864fc69] user: drh branch: trunk, size: 9745 | |
2004-02-25
| ||
02:33 | Fix the return type of sqliteRunVacuum. Ticket #627. (CVS 1271) file: [db5f58cb] check-in: [9c9f4a86] user: drh branch: trunk, size: 9729 | |
2004-02-12
| ||
13:02 | VACUUM returns SQLITE_INTERRUPT when interrupted. Ticket #593. (CVS 1228) file: [d9e80c2b] check-in: [2fe9f510] user: drh branch: trunk, size: 9765 | |
2004-02-11
| ||
09:46 | Refactor the interface to the randomness generator. (CVS 1224) file: [717aa6da] check-in: [f2bdccf4] user: drh branch: trunk, size: 9678 | |
2003-12-07
| ||
00:24 | Make the VACUUM command run out of the VDBE like all other commands. (Ticket #464). Make the VACUUM command work even if there are VIEWs in the SQLITE_MASTER table that come before tables they reference. (Ticket #515) (CVS 1128) file: [77485a64] check-in: [614cbbaf] user: drh branch: trunk, size: 9655 | |
2003-08-15
| ||
13:24 | Fix a segfault that occurs in the VACUUM command if run on an empty database with the EMPTY_RESULT_CALLBACKS pragma enabled. Ticket #427. (CVS 1073) file: [e4724ead] check-in: [3563e9cf] user: drh branch: trunk, size: 9616 | |
2003-05-13
| ||
00:21 | Fix a #ifdefs that are used to comment-out the VACUUM command. (CVS 970) file: [08209846] check-in: [22d53240] user: drh branch: trunk, size: 9538 | |
2003-04-25
| ||
15:37 | Add tests to insure VACUUM works in the presence of I/O errors. Fix some problems that came to light by these tests. (CVS 935) file: [14ac3073] check-in: [8d3e8793] user: drh branch: trunk, size: 9510 | |
13:22 | Make VACUUM work even if multiple processes have the database open at once. (CVS 933) file: [44420de0] check-in: [caa96028] user: drh branch: trunk, size: 9401 | |
02:43 | Get VACUUM working again - with test cases. Some other minor cleanups. (CVS 931) file: [67199f3d] check-in: [5afb8800] user: drh branch: trunk, size: 10189 | |
2003-04-18
| ||
02:31 | The VACUUM command is now functioning (again). Need to do more testing. (CVS 916) file: [e24781e3] check-in: [6e948d9a] user: drh branch: trunk, size: 8772 | |
2003-04-15
| ||
01:19 | Change some variable names and comments in the new in-memory database file implementation. Partial (non-working) implementation of the VACUUM command. (CVS 904) file: [ac65e957] check-in: [e76787f8] user: drh branch: trunk, size: 6063 | |
2003-04-06
| ||
21:08 | Split the implementation of COPY, PRAGMA, and ATTACH into separate source code files. (CVS 902) file: [6b9ebf0e] check-in: [73359037] user: drh branch: trunk, size: 1095 Added | |