Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
710 check-ins using file src/btree.h version 0866c0a082
2020-01-17
| ||
14:18 | Import all FTS3/4 enhancements and fixes that exist on the latest trunk (3.31.0-beta) that do not require extensive change to the SQLite core into the 3.22 branch. Basically, the 3.31.0 FTS3 sources are copied into 3.22.0, with minor changes to work around core enhancements that are not available in 3.22.0. (Leaf check-in: cbcbb1e5a9 user: drh tags: branch-3.22) | |
2019-09-03
| ||
18:36 | Fix a buffer overread that could occur when running fts5 prefix queries inside a transaction. (check-in: 68b898381a user: drh tags: branch-3.22) | |
18:04 | Disable the undocumented rtreenode() SQL function that is only used for testing, except when doing a build that is specifically intended for testing. (check-in: 8452fd5499 user: drh tags: branch-3.22) | |
2018-12-26
| ||
14:23 | Fix a problem with corrupt fts3 database detection introduced by [27199380]. (check-in: ceeb4fba84 user: dan tags: branch-3.22) | |
11:39 | Avoid a left-shift of a negative value (undefined behaviour) when dealing with a corrupt database in fts3. Cherrypick of [b851d12474]. (check-in: 2fa63a8be6 user: dan tags: branch-3.22) | |
2018-12-24
| ||
13:39 | Change the way a comparison used to detect corrupt databases in fts3 is done to avoid potential pointer overflow in 32-bit builds. Cherrypick of [95a9a39ff7]. (check-in: 271993803c user: dan tags: branch-3.22) | |
2018-12-19
| ||
01:30 | Add extra defenses against strategically corrupt databases to fts3/4. (check-in: c255889bd9 user: drh tags: branch-3.22) | |
2018-10-25
| ||
11:55 | Speed up xAccess() calls made on an RBU VFS when there are lots of open connections. Cherrypick of [310b4b65]. (check-in: fda8fdb0cb user: dan tags: branch-3.22) | |
2018-05-09
| ||
02:23 | Version 3.23.2 (Leaf check-in: f139f6f07d user: drh tags: release, branch-3.23, version-3.23.2) | |
2018-05-07
| ||
17:27 | Improved comments on the cell-overwrite optimization code. (check-in: a4fe966da2 user: drh tags: trunk) | |
13:01 | Merge enhancements from trunk, and especially the cell-overwrite optimization. (check-in: cb3aa77802 user: drh tags: apple-osx) | |
11:48 | On an UPDATE, try to overwrite an existing btree cell with the modified content, if the old and new cell are the same size. Use memcmp() first to avoid dirtying pages that are unchanged. (check-in: 5887d8beb5 user: drh tags: trunk) | |
11:37 | Fix harmless compiler warnings associated with the new EXPLAIN QUERY PLAN logic. (check-in: 374d8e2644 user: drh tags: trunk) | |
11:29 | Fix harmless compiler warnings in the cell-overwrite logic. (Closed-Leaf check-in: 3e11dc3183 user: drh tags: cell-overwrite-prototype) | |
02:50 | Backout change [05fee1a21ea398f1e4d6f1cf3] because it does not take into account the LD_LIBRARY_PATH environment variable used by dl_open(). (check-in: b348d1193a user: drh tags: trunk) | |
2018-05-05
| ||
16:50 | In an ORDER BY LIMIT, make sure the ORDER BY expression evaluator does not try to reuse values from the result set if the result set has not yet be computed. This fixes a bug in the recent deferred-row loading optimization, check-in [c381f0ea57002a264fd958b28e]. OSSFuzz discovered the problem. (check-in: 5d61e75f32 user: drh tags: trunk) | |
01:23 | Fix a slightly incorrect corruption detection branch in the btree logic. (check-in: 9191ff670c user: drh tags: trunk) | |
2018-05-04
| ||
20:00 | Bring the code that changes the owner of WAL and rollback files when running as root into alignment with trunk. (check-in: 180516bf7b user: drh tags: apple-osx) | |
19:33 | Merge recent enhancements from trunk. (check-in: e17bca2cdb user: drh tags: apple-osx) | |
19:18 | Merge enhancements from trunk. (check-in: 9650f71b82 user: drh tags: cell-overwrite-prototype) | |
18:32 | Fix requirements marks. No code changes. (check-in: 7fdad122a2 user: drh tags: trunk) | |
04:49 | For the amalgamation-tarball, enable FTS5 and JSON1 by default and provide a new --enable-debug option that actives debugging facilities. (check-in: 03edecaf9d user: drh tags: trunk) | |
00:39 | Make a separate limb in the EXPLAIN QUERY PLAN output for the various lines associated with the OR-optimization. (check-in: 75ac7b4e4f user: drh tags: trunk) | |
2018-05-03
| ||
23:20 | In ORDER BY LIMIT queries, try to evaluate the ORDER BY terms first, and it it becomes clear that the row will not come in under the LIMIT, then skip evaluation of the other columns. (check-in: c381f0ea57 user: drh tags: trunk) | |
22:52 | Fix a branch that has become unreachable due to recent enhancements. (check-in: 81ab5e0d10 user: drh tags: trunk) | |
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. (check-in: 260fc69653 user: drh tags: trunk) | |
19:56 | Overhaul of EXPLAIN QUERY PLAN. The output is now in the form of a tree. More details of the query plan are shown, and what is shown is truer to what actually happens. (check-in: ff01bbdabc user: drh tags: trunk) | |
19:47 | Optimizations to the new EQP framework. (Closed-Leaf check-in: 956fef361a user: drh tags: rework-EQP) | |
16:56 | Fix various error handling conditions on the cell overwrite optimization. Fix a test case so that it works with the new optimization. (check-in: f89b54f414 user: drh tags: cell-overwrite-prototype) | |
14:07 | The BtCursor.info fields are only valid if info.nSize!=0. (check-in: 54c537eead user: drh tags: cell-overwrite-prototype) | |
13:56 | Add more corruption checking to the cell overwrite logic. (check-in: 58d14afe1e user: drh tags: cell-overwrite-prototype) | |
12:57 | Bug fixes in the overwrite optimization. (check-in: 0cb6cd2a6a user: drh tags: cell-overwrite-prototype) | |
03:59 | The sqlite3BtreeInsert() routine tries to overwrite an existing cell with modified content if the new content is the same size. Pages are only dirtied if they change. This prototype works some, but still has issues. (check-in: 489451b378 user: drh tags: cell-overwrite-prototype) | |
01:37 | Enhance EXPLAIN QUERY PLAN to report the generation of constant rows using VALUES or just a SELECT without FROM. (check-in: c75eee69fa user: drh tags: rework-EQP) | |
2018-05-02
| ||
19:42 | More test case updates. Tests are all running now. (check-in: dab5e52948 user: drh tags: rework-EQP) | |
18:00 | Fix test cases so that they work with the new EXPLAIN QUERY PLAN output format. Only some of the cases have been fixed. This is an incremental check-in. (check-in: 5f0e803e33 user: drh tags: rework-EQP) | |
16:13 | Improved EQP output for recursive CTEs and multi-value VALUES clauses. (check-in: f2f525548c user: drh tags: rework-EQP) | |
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. (check-in: ab0d99d0b5 user: drh tags: trunk) | |
14:24 | Fix a dangling-else problem that was causing recursive CTEs to malfunction. Begin fixing test cases to work with the new EQP output. (check-in: 82ca44b82f user: drh tags: rework-EQP) | |
08:12 | Fix a problem in the xBestIndex method of the closure extension causing it to allocate non-contiguous argvIndex values in some cases (an "xBestIndex malfunction" error). (check-in: 0c67150749 user: dan tags: trunk) | |
03:03 | Add sqlite3_win32_set_directory8() and sqlite3_win32_set_directory16() functions. (check-in: 6cf0f4e2b4 user: mistachkin tags: branch-3.23) | |
03:01 | Add sqlite3_win32_set_directory8() and sqlite3_win32_set_directory16() functions. (check-in: 22089ea2bb user: mistachkin tags: trunk) | |
02:22 | Improvements to the EQP display for compound select statements. (check-in: 699a77e479 user: drh tags: rework-EQP) | |
00:33 | Begin reengineering the EXPLAIN QUERY PLAN function to provide more intuitive output. (check-in: 70b48a7972 user: drh tags: rework-EQP) | |
2018-05-01
| ||
18:39 | The SQLITE_ALLOW_SQLITE_MASTER_INDEX compile-time option allows a CREATE INDEX statement against the sqlite_master table. Once created, the index works, and is usable by legacy instances of SQLite. (check-in: 853f316359 user: drh tags: trunk) | |
01:18 | The ".selecttrace 0x4000" command causes the AST to be output to stdout as a table with four columns. (Leaf check-in: 2a75e631ee user: drh tags: ast-trace-demo) | |
2018-04-30
| ||
19:32 | Defer loading result column values into registers on an ORDER BY LIMIT until we know that the LIMIT does not exclude the current row. (Closed-Leaf check-in: ce4ef46058 user: drh tags: faster-order-by-limit) | |
2018-04-28
| ||
19:08 | Test cases added for SQLITE_DBCONFIG_RESET_DATABASE. (check-in: 08665a9e2e user: drh tags: trunk) | |
18:20 | Fix an RBU problem causing spurious SQLITE_CONSTRAINT errors when restarting an RBU update in which more than one source table writes to a single target database table. (check-in: 564ae8297d user: dan tags: trunk) | |
13:21 | Add the SQLITE_DBCONFIG_RESET_DATABASE control for resetting a corrupt database file without closing any database connections. Added the ".dbconfig" command to the CLI. (check-in: a200a49ede user: drh tags: trunk) | |
12:43 | Add the SQLITE_DBCONFIG_RESET_DATABASE control as a replacement for the reset_database pragma. Resetting the database should be hard enough to do that it cannot be done by accident. (Leaf check-in: ff836cb8b0 user: drh tags: reset-database) | |
11:22 | Merge updates from trunk. (check-in: 94877e495c user: drh tags: reset-database) | |
04:16 | Prevent deep recursions on nested COLLATE operators. (check-in: 6e098ee415 user: drh tags: trunk) | |
04:10 | Fix compiler warnings in FTS3. (check-in: de508e831a user: drh tags: trunk) | |
01:48 | Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: f677065aab user: mistachkin tags: branch-3.23) | |
01:46 | Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: 7626b59340 user: mistachkin tags: trunk) | |
01:44 | Add comments about the intended use of the sqlite3_data_directory variable as it pertains to the sqlite3_win32_set_directory function. (Closed-Leaf check-in: d11c419756 user: mistachkin tags: win32dir) | |
01:37 | Bump the version number to 3.23.2. (check-in: 242dc910b0 user: drh tags: branch-3.23) | |
01:27 | Add the "PRAGMA reset_database=ON|OFF" command. When on, it causes the database to appear to be empty, causing the next transaction to reset it to an empty database. (check-in: 02e1a13c1f user: drh tags: reset-database) | |
2018-04-27
| ||
22:42 | Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: cbce7180ee user: mistachkin tags: win32dir) | |
20:49 | Better comments on the bindvtab.c implementation. All the two-argument version of the .set command. All bindings from .set and -D are still string. (Leaf check-in: 7b2a65a654 user: drh tags: shell-bindings) | |
18:05 | Update test script fts3expr4.test so that it always creates fts3 tokenizers in the "en_US" locality. (check-in: 576a8f69ae user: dan tags: trunk) | |
17:39 | Add the ability to use bind parameters in the CLI. The new ".set KEY=VALUE" dot-command works to set bindings. Or use the "-Dkey=value" command-line option. Or use the built-in shell_bindings(k,v) virtual table to set, delete, or changing bindings. (check-in: 1f2944d1d6 user: drh tags: shell-bindings) | |
16:35 | Fix a test script error causing tests to fail in soak.test. (check-in: 462b52b121 user: dan tags: trunk) | |
15:17 | Enhance the comments in the templatevtab.c implementation. (check-in: 05f6278a02 user: drh tags: trunk) | |
2018-04-26
| ||
18:34 | The previous fix for ticket [d85fffd6ffe856092ed8da] in check-in [0a514e62ad1ebe5c12da8dae] did not completely address the probably in that it only worked for cases where the OP_SCopy that loaded the register was the last instruction in the sequence for the expression, which is not necessarily the case for expressions like CASE...END. This revision prevents the registered that will be recomputed from being cached in the first place. (check-in: 9fd0faf517 user: drh tags: trunk) | |
17:43 | When processing an "ORDER BY ... LIMIT" that does not use an index, check whether or not a record may appear in the final result set before adding it to the temp b-tree used for sorting. (check-in: 0fcfc36ceb user: dan tags: trunk) | |
16:13 | When processing an "ORDER BY ... LIMIT" that does not use an index, check whether or not a record may appear in the final result set before adding it to the sorter. (Closed-Leaf check-in: 71bf91c218 user: dan tags: sorter-limit-opt) | |
15:50 | Ensure that new.* values of an UPDATE do not get clobbered after the BEFORE triggers run when unmodified columns of the row being updated are reloaded. Fix for ticket [d85fffd6ffe856092ed8da] (check-in: 0a514e62ad user: drh tags: trunk) | |
15:04 | Clarification of the behavior of a BEFORE UPDATE trigger when the trigger changes the values of some of the columns used to compute new columns in the UPDATE. (check-in: 7bb23c2a3d user: drh tags: trunk) | |
12:27 | Improved VDBE comment on the OP_Param opcode. No substantial changes. (check-in: 368c14da86 user: drh tags: trunk) | |
08:56 | Update the "fuzz_malloc.test" script to print SQL statements in which OOM handling problems are found to stdout. (check-in: a956363cf6 user: dan tags: trunk) | |
2018-04-25
| ||
19:02 | Add new interfaces for accessing the list of SQL keywords: sqlite3_keyword_count(), sqlite3_keyword_name(), sqlite3_keyword_check(). (check-in: 7dd34e3776 user: drh tags: trunk) | |
17:10 | Add the new DO and NOTHING keywords to the keyword lists maintained by various extensions and auxiliary programs. (check-in: 77a98a0781 user: drh tags: trunk) | |
13:27 | Add the new SQLITE_SHELL_INIT_PROC compile-time entry point to the CLI. This is needed to work around the tighter sqlite3_config() constraints now in the CLI. (check-in: 3bcdbccf53 user: drh tags: trunk) | |
12:01 | Avoid many unnecessary calls to sqlite3ReadSchema() and sqlite3Init() when the schema is known to be valid already. (check-in: 58cf812fd8 user: drh tags: trunk) | |
10:30 | Add an assert() to ensure that schema mutexes are held prior to accessing the DB_SchemaLoaded flag inside of sqlite3Init(). (check-in: d8b46290bb user: drh tags: trunk) | |
2018-04-24
| ||
18:59 | Remove a recently added NEVER() macro from a branch that can be taken in obscure circumstances. (check-in: 2aa210030a user: dan tags: trunk) | |
18:53 | Fix a problem with processing "LEFT JOIN tbl ON tbl.a = ? AND (tbl.b=? OR tbl.c=?)" in cases where there are indexes on both tbl(a, b) and tbl(a, c). (check-in: ce35e39c5c user: dan tags: trunk) | |
17:34 | Do not attempt to use terms from the WHERE clause to drive indexes on the right table of a LEFT JOIN. Fix for ticket [4ba5abf65c5b0f9a96a7a40cd18b] (check-in: aeb694e3f7 user: drh tags: trunk) | |
16:51 | Update the expert extension test cases to account for the fact that EXPLAIN QUERY PLAN now shows the start of each trigger in its output. (check-in: 8acb42f489 user: drh tags: trunk) | |
16:41 | All the OR optimization to proceed even if the OR is also converted into an IN operator. (check-in: e252c6540d user: drh tags: trunk) | |
14:18 | Add a hyperlink to the ticket on the code comment for the fix to ticket [7fa8049685b50b5aeb0c2]. (check-in: 45247c7f29 user: drh tags: trunk) | |
14:05 | Do not attempt to read values from indexes-on-expressions if the index is on the RHS of a LEFT JOIN. This won't work if the index cursor points at a null-row. Fix for [7fa80496]. (check-in: b8ef967ab1 user: dan tags: trunk) | |
13:07 | Enhance the CLI to render EXPLAIN QUERY PLAN using an ASCII-art graph. This works with ".eqp" modes and when the query begins with exactly "EXPLAIN QUERY PLAN". To see the original output format, add extra space characters in between words of the initial "EXPLAIN QUERY PLAN". (check-in: f53716ee2a user: drh tags: trunk) | |
10:57 | Fix a memory leak following failure to open an external CSV file in the csv.c extension. (check-in: 526ee07d19 user: drh tags: trunk) | |
01:10 | In EXPLAIN QUERY PLAN output, do not show an EXECUTE LIST SUBQUERY line for IN operators where the RHS is a list and not a subquery, since in that case there is no SUBQUERY to execute. (check-in: 8bc0207abd user: drh tags: trunk) | |
00:08 | Fix to check-in [ca34c2dd20ee071e] - avoid a NULL pointer dereference following an OOM. (check-in: c7e6e848fa user: drh tags: trunk) | |
2018-04-23
| ||
20:38 | Fix a problem in sqlite3ExprCompare() associated with UPSERT. (check-in: 67d0b2c152 user: drh tags: trunk) | |
20:04 | Fix a formatting issue in the TreeView output for bare expression lists. (check-in: a635681781 user: drh tags: trunk) | |
18:38 | Add the ".imposter off" variant of the ".imposter" dot-command in the CLI. (check-in: d3dad06ff1 user: drh tags: trunk) | |
17:43 | The ".selecttrace 0x2000" command causes just the top-level parse tree to be displayed, after all transformations, and showing the EQP iSelectId at each level. (check-in: ca34c2dd20 user: drh tags: trunk) | |
17:18 | The ".selecttrace 4" command now shows only a single parse tree after name resolution. (check-in: 5682146e8a user: drh tags: trunk) | |
17:09 | Do not restore the iSelectId value until after the last SELECTTRACE when debugging Select processing. (check-in: 8088d8cac3 user: drh tags: trunk) | |
17:02 | In the ".selecttrace" output, include the EXPLAIN QUERY PLAN iSelectId as part of each Select identifier. (check-in: 5c6339f955 user: drh tags: trunk) | |
13:28 | Ensure that there are no bind-parameters or incorrect schema references in the UPSERT portions of an INSERT within a TRIGGER. (check-in: d47a6bdda0 user: drh tags: trunk) | |
00:25 | Fix an unreachable branch associated with stack overflow in the LEMON-generated parser. (check-in: e3064ba3b6 user: drh tags: trunk) | |
2018-04-21
| ||
22:40 | Performance improvements on the main loop of the LEMON-generated parser. (check-in: fec1ebadeb user: drh tags: trunk) | |
20:24 | Enhance LEMON to track which symbols actually carry semantic content. Output the list of symbols that do not carry content at the end of the report, but do not (yet) do anything else with the information. (check-in: dcf2bafc15 user: drh tags: trunk) | |
14:11 | A few more tests for upsert. (check-in: b78005b6d4 user: dan tags: trunk) | |
13:51 | Add the %extra_context directive to lemon, as an alternative to %extra_argument. Use this to improve the performance of the parser. (check-in: be47a6f526 user: drh tags: trunk) | |
03:06 | Fix UPSERT so that it plays nicely with AUTOINCREMENT. (check-in: 359725ab36 user: drh tags: trunk) | |
2018-04-20
| ||
20:47 | Add the -dDIRECTORY command-line option to LEMON. (check-in: 9cd20475ff user: drh tags: trunk) | |
20:37 | Enhance the "rbu" command line utility a bit. (check-in: 61eb516f83 user: dan tags: trunk) | |
20:09 | Fix a harmless compiler warning. (check-in: d2ab24f59d user: drh tags: trunk) | |
19:46 | Avoid the use of statement journals on DELETEs of a single row without triggers or foreign keys. (check-in: 20bf580080 user: drh tags: trunk) | |
19:32 | Avoid opening a statement journal on single-row UPDATEs without triggers or FK constraints. (check-in: 2772404b8c user: drh tags: trunk) | |
18:01 | Fix a VDBE comment on upsert. Provide an error message when upsert detects index corruption. (check-in: 279c48f606 user: drh tags: trunk) | |
17:50 | Add tests for name resolution in ON CONFLICT clauses. (check-in: cf253584ec user: dan tags: trunk) | |
17:02 | Avoid unnecessary cursor seeking when performing an UPSERT. (check-in: 693a3dcbdd user: drh tags: trunk) | |
16:49 | Improved VDBE comment on UPSERT code. (Closed-Leaf check-in: 131ed95e14 user: drh tags: upsert-opt2) | |
16:27 | Minor simplification of the previous checkin. (check-in: d1906689ab user: drh tags: upsert-opt2) | |
15:56 | Avoid unnecessary cursor seeks during upsert processing. (check-in: 7c4b6d5475 user: drh tags: upsert-opt2) | |
15:34 | Add test cases for UPSERT. And a fix for a "REPLACE INTO ... ON CONFLICT" statement where the new row conflicts with both the IPK and the ON CONFLICT indexes. (check-in: d8eb9f8d9b user: dan tags: trunk) | |
13:18 | Enhance UPSERT so that the UPDATE uses the same set of cursors as the INSERT. (check-in: c37f39d18d user: drh tags: trunk) | |
00:40 | Minor simplification of the cursor allocation logic for update. (check-in: fdf71be658 user: drh tags: trunk) | |
2018-04-19
| ||
23:52 | Fix the handling of "PRAGMA count_changes=ON" with UPSERT. Also improved the implementation of count_changes in other places, without changing the behavior. (check-in: c6f71115eb user: drh tags: trunk) | |
21:29 | Minor simplification to the upsert logic. (check-in: e657c1d60f user: drh tags: trunk) | |
20:18 | Avoid unnecessary OP_Goto instructions on an upsert of a table that only has a single secondary index. (Leaf check-in: 97dd21ab90 user: drh tags: upsert-opt) | |
20:06 | Modify a test case in zipfile2.test to take into account that with some platform/file-system combinations it is possible to fopen() and fread() (but not fwrite()) a directory. (check-in: 893e6089c8 user: dan tags: trunk) | |
16:52 | Add the --upsert option to the wordcount test program. (check-in: ee1e750baa user: drh tags: trunk) | |
16:14 | Add the ext/misc/templatevtab.c template for virtual tables. This is a work-in-progress as it still needs improvements to the comments in order to be useful as a template. (check-in: 22358fb549 user: drh tags: trunk) | |
13:52 | Fix a problem in the new upsert implemention, discovered by OSSFuzz. (check-in: b6d5ea59fe user: drh tags: trunk) | |
11:45 | Fix the table name aliasing on INSERT so that it occurs before the column list rather than afterwards, just as it does for PostgreSQL. Add table name aliasing to UPDATE and DELETE. (check-in: 861a2e2a48 user: drh tags: trunk) | |
2018-04-18
| ||
19:56 | Add the "sorter-reference" optimization, allowing SQLite to be configured so that some required values may be loaded from the database after external sorting occurs for SELECT statements with ORDER BY clauses that are not satisfied by database indexes. (check-in: ef74090a40 user: dan tags: trunk) | |
19:45 | Minor changes to test script upsert4.test. (check-in: 0cb83c84d1 user: dan tags: trunk) | |
19:08 | Avoid a NULL-pointer deref following OOM. (Closed-Leaf check-in: 413015c029 user: drh tags: sorter-reference) | |
18:19 | Fix a test case inside distinct.test. (check-in: 61cb8a391a user: drh tags: trunk) | |
18:18 | Improved matching of COLLATE clauses within the ON CONFLICT conflict-target. (check-in: 8f4376e52b user: drh tags: trunk) | |
17:56 | Add extra test cases for UPSERT. (check-in: 7ea08d0750 user: dan tags: trunk) | |
17:52 | Fix a problem in the sqlite3ExprCompare() function that caused two dissimilar expressions to match if they have the same "COLLATE name" at the outer layer. (check-in: fb16348a5b user: drh tags: trunk) | |
16:03 | Add support for PostgreSQL UPSERT syntax and functionality. (check-in: fba24aec23 user: drh tags: trunk) | |
15:33 | Fix the build for SQLITE_OMIT_UPSERT (Closed-Leaf check-in: 3295651917 user: drh tags: upsert) | |
15:21 | Add the --sorterref N option to the CLI. (check-in: 902a40897f user: drh tags: sorter-reference) | |
14:48 | Omit some code not used without SQLITE_ENABLE_SORTER_REFERENCES. Improvements to comments used for documentation. (check-in: f3596ab9eb user: drh tags: sorter-reference) | |
14:04 | Remove an unused local variable. (check-in: 9afeb0c88b user: drh tags: sorter-reference) | |
11:35 | Enhance ALTER TABLE ADD COLUMN to support "DEFAULT true" and "DEFAULT false". (check-in: 594ebc6955 user: drh tags: trunk) | |
10:44 | Add checks to the CLI that issue a warning if SQLite gets initialized prior to the last sqlite3_config() call. (check-in: 40b1173477 user: drh tags: trunk) | |
09:16 | Fix a problem in the shell preventing it from working with SQLITE_OMIT_AUTOINIT builds. (check-in: 89209000a2 user: dan tags: trunk) | |
01:34 | Add new testcase() macros and fix a bug that was revealed when trying to cover all the new test cases. (check-in: 266a99f7c0 user: drh tags: upsert) | |
2018-04-17
| ||
21:59 | Remove unreachable branches. 100% MC/DC in TH3 now. (check-in: 558865d5c3 user: drh tags: upsert) | |
20:09 | Added a comment on the assert() added to the previous check-in. (check-in: 542547c1ce user: drh tags: upsert) | |
20:06 | Fixes to the logic for constraint check reordering during upsert. Improved comments on constraint check bytecode. Add an assert that prevents the same label from being resolved more than once. (check-in: 1ddbb0ff55 user: drh tags: upsert) | |
19:29 | During PRAGMA vdbe_addoptrace=ON, show calls to sqlite3VdbeResolveLabel() in the debugging output. (check-in: 9ff07a06ce user: drh tags: upsert) | |
18:50 | TK_REGISTER expressions nodes are probably not constant. Make sure sqlite3ExprIsConstant() knows this. (check-in: f3d91cad92 user: drh tags: upsert) | |
18:18 | Simplification to the upsert logic. (check-in: f36d07a5b2 user: drh tags: upsert) | |
18:16 | Add some more simple test cases for UPSERT. And a minor fix. (check-in: 27cd3b2fb2 user: dan tags: upsert) | |
16:16 | New test cases for upsert. (check-in: 907b5a37c5 user: drh tags: upsert) | |
2018-04-16
| ||
21:12 | Add SQLITE_CONFIG_SORTERREF_SIZE configuration option. (check-in: b25a7bb769 user: dan tags: sorter-reference) | |
14:36 | Merge the Lemon enhancement from trunk, resulting in smaller parser tables. (check-in: 641f41722c user: drh tags: upsert) | |
14:31 | Lemon enhancements: (1) Do not allocate space for the 'error' non-terminal if it is not used. (2) Fix an off-by-one problem so that 'unsigned char' can be used for symbol numbers if the number of symbols is 256. (check-in: 3b7801acff user: drh tags: trunk) | |
13:26 | Remove the MySQL upsert syntax. As an optional alias to the insert table name in order to finish out PostgreSQL upsert syntax emulation. (check-in: 810d9f63be user: drh tags: upsert) | |
13:00 | Add support for the "excluded.*" names in the UPDATE clause of an upsert. (check-in: 0203f34faa user: drh tags: upsert) | |
10:47 | Merge changes from trunk. (check-in: 54d96772e7 user: drh tags: upsert) | |
10:41 | Increase the version number to 3.24.0 (check-in: f94528e1c7 user: drh tags: trunk) | |
10:34 | Reduce the size of the NameContext object by grouping seldom-used fields into a union. (check-in: dba3095fee user: drh tags: trunk) | |
2018-04-14
| ||
22:35 | Get upsert working on WITHOUT ROWID tables. (check-in: d3c53fd317 user: drh tags: upsert) | |
20:24 | Make sure constraint checks occur in the correct order, even in the presence of upserts. (check-in: 07fb30c3de user: drh tags: upsert) | |
18:46 | Experimental change to "SELECT * FROM ... ORDER BY" processing to load some column values from the db after sorting. (check-in: 9719cb46bb user: dan tags: sorter-reference) | |
2018-04-13
| ||
21:55 | First cut at logic to perform DO UPDATE for rowid tables. (check-in: a9080bc8b8 user: drh tags: upsert) | |
18:59 | Add infrastructure for doing an UPDATE as part of an UPSERT. Still no actual UPDATE code, however. (check-in: 6d3017f92b user: drh tags: upsert) | |
16:29 | Merge the preupdate hook change from trunk. (check-in: 7353caabb3 user: drh tags: upsert) | |
16:23 | Remove an always-true branch from the preupdate hook logic. (check-in: 0ab4518811 user: drh tags: trunk) | |
15:14 | Get the ON CONFLICT DO NOTHING form of upsert working by mapping it into INSERT OR IGNORE. (check-in: d07f05e98b user: drh tags: upsert) | |
14:27 | Get the conflict-target clause parsing working correctly, with test cases. This change involves an enhancement to sqlite3ExprCompare() which needs to be reviewed on trunk prior to merging. (check-in: 5bf7042562 user: drh tags: upsert) | |
13:44 | Improved conflict-target matching logic. (check-in: 98d32ba661 user: drh tags: upsert) | |
13:06 | Back off of the extended upsert syntax that allows multiple ON CONFLICT clauses. The syntax now is exactly as in PostgreSQL and MySQL. Add support for WHERE clauses on the conflict-target phrase, for partial indexes. (check-in: 2c1b1987d8 user: drh tags: upsert) | |
01:15 | Begin adding upsert logic. This is an incremental check-in. (check-in: 8096964340 user: drh tags: upsert) | |
2018-04-12
| ||
21:42 | Break out the upsert code into a separate source file. (check-in: 389806b05f user: drh tags: upsert) | |
20:21 | Fix another typo in a comment. (check-in: 046bb6d258 user: drh tags: upsert) | |
19:51 | Simple comment clarification. No code or logic changes. (check-in: a26f9c9f89 user: drh tags: upsert) | |
17:28 | Extend the upsert syntax to allow a WHERE clause on the UPDATE. (check-in: e4396c540a user: drh tags: upsert) | |
15:43 | Update the upsert parsing so that it accepts conflict-target labels using the PostgreSQL syntax, and also accepts the MySQL "ON DUPLICATE KEY" syntax. (check-in: c48f64d8ae user: drh tags: upsert) | |
13:15 | Add the Upsert object for holding upsert clause information. (check-in: d83eaed539 user: drh tags: upsert) | |
12:25 | Merge changes from trunk. (check-in: 9f6f11805e user: drh tags: upsert) | |
2018-04-11
| ||
17:10 | Help the parser run faster by avoiding the "explain ::= ." production. (check-in: d7ec7b5970 user: drh tags: trunk) | |
16:04 | Prohibit bound parameters in the arguments to table-valued functions within a trigger. Problem discovered by OSSFuzz. (check-in: b717820915 user: drh tags: trunk) | |
14:11 | Minor simplification to internal function generateSortTail(). (check-in: f32cdb41ca user: dan tags: trunk) | |
2018-04-10
| ||
18:56 | Include the 'sqlite3rebaser_' APIs in the Windows '.def' file. (check-in: 56e4965f7a user: mistachkin tags: trunk) | |
18:05 | Merge all version 3.23.1 changes and enhancements from trunk. (check-in: e20fcb5159 user: drh tags: apple-osx) | |
17:39 | Version 3.23.1 (check-in: 4bb2294022 user: drh tags: trunk, release, version-3.23.1) | |
15:31 | Fix a problem causing the LEFT JOIN strength reduction optimization to be incorrectly applied in some cases where the WHERE clause of the query contains a filter expression of the form "lhs.x IS NOT ?". (check-in: 1fdaf2c344 user: dan tags: trunk) | |
14:29 | When testing, avoid injecting an OOM fault into a file-control call made by SQLite on an unopened file-descriptor. (check-in: 9c1a5eba3e user: dan tags: trunk) | |
12:33 | Increase the version number to 3.23.1. (check-in: 9488c87b54 user: drh tags: trunk) | |
12:10 | Fix a problem causing the LEFT JOIN strength reduction optimization to be incorrectly applied in some cases where the WHERE clause of the query contains a filter expression of the form NOT(x AND y). Ticket [1e39b966]. (check-in: 38d319c153 user: dan tags: trunk) | |
10:37 | Remove an unnecessary SQLITE_UNTESTABLE compile-time conditional from the command-line shell. (check-in: 80b75a34a2 user: drh tags: trunk) | |
00:53 | Update the top-level README.md file to point to the whynotgit.html document. Put it on the correct branch, this time. (check-in: a52e3cddea user: drh tags: trunk) | |
00:30 | Update the top-level README.md file to point to the whynotget.html document. (check-in: 7dfd4543da user: drh tags: upsert) | |
2018-04-09
| ||
20:36 | Minor changes to the input grammar resulting in a faster and slightly smaller parser. (check-in: a2c443c0ee user: drh tags: trunk) | |
15:57 | Enhance the query planner so that it detects when the xBestIndex method of a virtual table gives out-of-sequence argvIndex values and reports an error. Secondary fix for ticket [2b8aed9f7c9e6]. (check-in: 9506ec14fb user: drh tags: trunk) | |
14:26 | Fix the fts5 xBestIndex method so that it is not confused by "IS", "!=", "REGEXP", "GLOB" or "LIKE" operators. Fix for ticket [2b8aed9f]. (check-in: a0ca4ddbbf user: dan tags: trunk) | |
13:58 | Improvements to ".wheretrace" output. (check-in: ea2e5b34bf user: drh tags: trunk) | |
11:43 | Add a "flags" parameter to experimental API sqlite3changeset_apply_v2(). Also add the SQLITE_CHANGESETAPPLY_NOSAVEPOINT flag. (check-in: 3d29631fa7 user: dan tags: trunk) | |
00:46 | Fix a (harmless) signed integer overflow warning. (check-in: 43c2c60caf user: drh tags: trunk) | |
2018-04-07
| ||
15:04 | More complete parsing of UPSERT, including UPSERT within a trigger. The sqlite3Insert() logic to actually perform the UPSERT is not yet implemented, however. (check-in: 5cc2a5a315 user: drh tags: upsert) | |
2018-04-06
| ||
19:36 | Demonstration of how the parser can be augmented to recognize a PostgreSQL-style UPSERT. This check-in implements parsing only. (check-in: 9b22905b15 user: drh tags: upsert) | |
19:12 | Enhance LEMON to show precendence of symbols and all rules in the report that is generated in parallel to the parser. (check-in: 602fbd8149 user: drh tags: trunk) | |
16:22 | Fix a problem in the sessions module causing sqlite3session_apply_strm() to allocate enough memory for the entire input buffer - which defeats the point of a streaming interface. (check-in: 7594e60935 user: dan tags: trunk) | |
2018-04-05
| ||
16:26 | Fix an instance where an uninitialized VM register might be accessed. Fix for [093420fc0]. This problem was found by OSSFuzz. (check-in: a3b02db746 user: dan tags: trunk) | |
12:02 | Fix the sqlite3WhereTrace mechanism so that it compiles with the --disable-amalgamation and the --enable-debug options to ./configure using clang. (check-in: 813224363d user: drh tags: trunk) | |
2018-04-04
| ||
12:21 | Fix segfault in 'eval.c' extension when used with 'empty_result_callbacks'. (check-in: e8b87bd495 user: mistachkin tags: trunk) | |
2018-04-03
| ||
20:44 | Fix an error message in speedtest1.c and make the "trigger" testset sensitive to the --size parameter. (check-in: 5a6fd9e015 user: drh tags: trunk) | |
20:00 | Update speedtest1.c with new testset "trigger" based on the tests in speed4p.test. (check-in: 7b7fa5fa0d user: dan tags: trunk) | |
17:05 | Fix a few small test script issues affecting SQLITE_TEMP_STORE=3 builds. (check-in: e171f3722f user: dan tags: trunk) | |
14:25 | Fix the generate_series virtual table so that it correctly returns no rows if any of its constraints are NULL. Ticket [fac496b61722daf28]. (check-in: 3328e828e2 user: drh tags: trunk) | |
14:04 | Change the LEFT JOIN strength reduction optimization so that assumes that virtual table constraints can be true even if terms within the constraint are NULL. This works around dodgy virtual table implementations. Fix for ticket [fac496b61722daf2]. (check-in: cbb977fe19 user: drh tags: trunk) | |
2018-04-02
| ||
11:04 | Version 3.23.0 (check-in: 736b53f57f user: drh tags: trunk, release, version-3.23.0) | |
00:16 | Better solution to the LIKE problem from the previous check-in that works even if the SQLITE_LIKE_DOESNT_MATCH_BLOBS compile-time option is used. (check-in: b850dd1599 user: drh tags: trunk) | |
2018-03-31
| ||
23:28 | Fix a logic error discovered by OSSFuzz that can cause an assert() fault if a LIKE operator is used on an INTEGER PRIMARY KEY. (check-in: fc06ddd458 user: drh tags: trunk) | |
16:31 | Fix an assertion failure triggered by a SELECT with a compound sub-query that contains an incorrectly placed ORDER BY clause. This problem is just an assert() failure - non-DEBUG builds are not affected. Problem found by OSSFuzz. (check-in: 823779d31e user: dan tags: trunk) | |
2018-03-30
| ||
16:34 | Fix a bug in the spellfix extension causing it to compute suboptimal answers. The problem was introduced by check-in [afd6fbc01052ccfc9]. (check-in: 3bf28fd9a7 user: drh tags: trunk) | |
15:59 | Fix an off-by-one error in the dist3 algorithm of the spellfix extension. (check-in: 5c34af7b97 user: drh tags: trunk) | |
2018-03-29
| ||
16:54 | Another change to test file zipfile.test to help it run on systems without "unzip". (check-in: b6252feb12 user: dan tags: trunk) | |
16:39 | Fix a test script bug causing zipfile.test to fail on systems that do not have the "unzip" program installed. (check-in: d99022a5a8 user: dan tags: trunk) | |
13:47 | Modify the sqlite3OsFileControl() interface to detect unopened sqlite3_file objects and return SQLITE_NOTFOUND. (check-in: 1fc72b707d user: drh tags: trunk) | |
11:02 | Update memdb1.test so that it works with SQLITE_DEFAULT_AUTOVACUUM builds. (check-in: d67f1c7d18 user: dan tags: trunk) | |
2018-03-28
| ||
22:08 | Fix a harmless compiler warning in the kvtest.exe program. (check-in: d48972cf87 user: drh tags: trunk) | |
21:45 | Fix a harmless compiler warning. (check-in: f0d12354bb user: drh tags: trunk) | |
20:29 | Add -DSQLITE_ENABLE_DESERIALIZE to the "Device-Two" configuration in releasetest.tcl. (check-in: 765a014d8e user: dan tags: trunk) | |
15:56 | Remove tab characters. No logical changes to code. (check-in: eb29b3369e user: drh tags: trunk) | |
15:06 | Minor comment changes. (check-in: d282f06469 user: drh tags: trunk) | |
2018-03-27
| ||
22:58 | Fix a typo in the README file for ICU. No code changes. (check-in: 79c4383b66 user: drh tags: trunk) | |
15:13 | The push-down optimization was being too aggressive such that it sometimes generated incorrect results. Reinstate the restriction (4) (with qualifications) that was removed by check-ins [b5d3dd8cb0b1e4] and [dd568c27b1d765]. (check-in: f08c1731b0 user: drh tags: trunk) | |
13:57 | Provide the ability for the VFS to do a blocking wait on locks if compiled with SQLITE_ENABLE_SETLK_TIMEOUT. (check-in: e7dff982be user: drh tags: trunk) | |
2018-03-26
| ||
21:05 | Do not inject OOM errors on SQLITE_FCNTL_LOCK_TIMEOUT calls as an OOM is not possible in that context. (Closed-Leaf check-in: 5474e560ee user: drh tags: lowlevel-lock-timeout) | |
20:43 | Avoid a race condition that might cause a busy_timeout to last longer than it should. (check-in: b81960561b user: drh tags: lowlevel-lock-timeout) | |
17:56 | Fix a typo preventing test script avtrans.test from running in auto-vacuum mode. (check-in: c7473bdb10 user: dan tags: trunk) | |
17:40 | Add infrastructure to support for using F_SETLKW with a timeout on system that support that functionality. Requires SQLITE_ENABLE_SETLK_TIMEOUT. (check-in: 2e54a7433e user: drh tags: lowlevel-lock-timeout) | |
16:37 | Refactor some internal object element names used by the busy handler, to simplify analysis. (check-in: 6c40c5574f user: drh tags: trunk) | |
2018-03-24
| ||
23:16 | Fix a couple issues in the 'session' module tests. (check-in: ccf734f7d2 user: mistachkin tags: trunk) | |
20:06 | Fix harmless compiler warning seen with MSVC. (check-in: e9508ab1f8 user: mistachkin tags: trunk) | |
18:01 | Add testcase() macros and improve comments in the LEFT JOIN strength reduction optimization. (check-in: 5613457714 user: drh tags: trunk) | |
15:47 | Yet another fault in the sqlite3ExprImpliesNotNull() routine, causing errors in the LEFT JOIN strength reduction optimization of check-in [dd568c27b1d76563]. (check-in: e88cf3d4df user: drh tags: trunk) | |
15:08 | Fix a test script problem causing shell1.test to fail with -DSQLITE_OMIT_VIRTUAL_TABLE builds. (check-in: 2e06906e09 user: dan tags: trunk) | |
13:24 | Bug fix in the LEFT JOIN strength reduction optimization of check-in [dd568c27b1d76563]. The sqlite3ExprImpliesNotNull() routine was mistakenly assuming that a CASE expression must always be NULL if contained any reference to a variable that was NULL. (check-in: cf171abe95 user: drh tags: trunk) | |
00:19 | Prepend linkage macros to the sqlite3rebaser interfaces. (check-in: c64e8f377f user: drh tags: trunk) | |
2018-03-23
| ||
17:36 | Fix typos in sqlite3session.h preventing documentation webpages from being generated. Also mark all new sessions functions (those related to rebasing) as experimental. (check-in: de974235a8 user: dan tags: trunk) | |
16:31 | Fix minor problems with passing NULL pointers to memcmp() and memcpy() found by -fsanitize=undefined. (check-in: 0b06ce6d8e user: dan tags: trunk) | |
16:08 | Fix the -readonly option on the CLI so that it actually works. (check-in: 0477fb3fd6 user: drh tags: trunk) | |
14:56 | Add some more tests for the IS TRUE / IS FALSE operators. (check-in: 9fe5bebefe user: mistachkin tags: trunk) | |
14:50 | Fix typo in a comment used for documentation. No changes to code. (check-in: 49974d3b30 user: drh tags: trunk) | |
14:24 | Enhance .schema in shell to enable matching patterns with literal underscores. (check-in: 98e3f5247a user: mistachkin tags: trunk) | |
13:18 | Fix an error in the CLI in the previous ([0249d9aecf69948]) check-in. Only the pattern to sqlite3_strlike() need to be escaped. (check-in: 71d5f6e632 user: drh tags: trunk) | |
12:59 | Fix the ANALYZE command so that it will process tables whose names begin with "sqlite" as long as they do not being with "sqlite_". (check-in: 0249d9aecf user: drh tags: trunk) | |
00:31 | Fix harmless compiler warnings seen with MSVC. (check-in: 2f2be1b181 user: mistachkin tags: trunk) | |
2018-03-22
| ||
20:35 | Add APIs to the sessions module for "rebasing" changesets. (check-in: 509506c76b user: dan tags: trunk) | |
20:11 | Remove some unused code from sqlite3rebaser_rebase(). (Closed-Leaf check-in: 07cc955eab user: dan tags: sessions-rebase) | |
19:52 | Fix another problem with rebasing updates against multiple remote changes. (check-in: c8e7b5a061 user: dan tags: sessions-rebase) | |
17:17 | Fix an RBU problem causing errors when updating tables with default collation sequences that require quoting (e.g. COLLATE "ICU_root-u-kn-on"). Cherrypick of [eb4f452e]. (check-in: 5dd61e1cbd user: dan tags: branch-3.22) | |
17:13 | Fix an RBU problem causing errors when updating tables with default collation sequences that require quoting (e.g. COLLATE "ICU_root-u-kn-on"). (check-in: eb4f452e35 user: dan tags: trunk) | |
17:02 | Fix a test script problem causing rbuvacuum.test to fail when run along with other tests. (check-in: 901cb3b6a2 user: dan tags: trunk) | |
14:07 | Add tests to ensure that patchsets are handled correctly by the session rebase APIs. (check-in: 0e45baaec0 user: dan tags: sessions-rebase) | |
12:00 | Add the left join strength reduction optimization. Enhance the push-down optimization so that it works with many LEFT JOINs. (check-in: dd568c27b1 user: drh tags: trunk) | |
11:28 | Add the --valid-sql option to the optfuzz test program. (check-in: a8dfeec73b user: drh tags: trunk) | |
11:15 | Remove some unused code from the sessions module. (check-in: a09518ab63 user: dan tags: sessions-rebase) | |
2018-03-21
| ||
20:21 | Get the optfuzz program working. (check-in: 21346bbce9 user: drh tags: trunk) | |
20:13 | Merge latest trunk changes into this branch. (check-in: d00b71ecf8 user: dan tags: sessions-rebase) | |
19:46 | Fix some documentation and other issues with the code on this branch. (check-in: a9ec68627a user: dan tags: sessions-rebase) | |
19:25 | Add the optfuzz.c program for verifying the query planner using a fuzzer. This is an initial code check-in. (check-in: 3fb21251b0 user: drh tags: trunk) | |
17:29 | Fix rebasing of UPDATE changes against a set of remote changesets that feature both OMIT and REPLACE conflict resolution on different fields of the same row. (check-in: d8bc3fdb6b user: dan tags: sessions-rebase) | |
01:59 | Relax LEFT-JOIN restrictions on the push-down optimization. (Closed-Leaf check-in: b5d3dd8cb0 user: drh tags: join-strength-reduction) | |
2018-03-20
| ||
22:52 | Do a more thorough job of cleaning traces of the strength-reduced LEFT JOIN. (check-in: 08833dda3a user: drh tags: join-strength-reduction) | |
21:16 | If terms of the WHERE clause require that the right table in a LEFT JOIN not be a null row, then simplify the LEFT JOIN into an ordinary JOIN. (check-in: 5b7abecc7a user: drh tags: join-strength-reduction) | |
20:27 | Add further tests and documentation for the sessions rebase feature. (check-in: 7475a363eb user: dan tags: sessions-rebase) | |
19:02 | Fix incorrect testcase labels on two cases in join5.test. No changes to code. (check-in: 4661ac81c9 user: drh tags: trunk) | |
18:08 | Improvements to the HAVING-to-WHERE optimization. The code uses less space and less CPU, and there is now ".selecttrace" output. (check-in: 5ad668d433 user: drh tags: trunk) | |
16:56 | For 'zipfile', detect attempts to cause a duplicate entry via UPDATE. Also, fix handling of 'UPDATE OR REPLACE' statements run on zipfile virtual tables. Win32 portability fixes to the 'fileio' extension. Miscellaneous test fixes. (check-in: b36caeca91 user: mistachkin tags: trunk) | |
13:44 | Avoid unnecessary write to the sqlite_sequence table when an insert is done into an autoincrement table with an application-specified rowid that is less than the maximum. (check-in: ec7addc87f user: drh tags: trunk) | |
13:26 | Add the ability to disable the push-down optimization using the 0x1000 bit of SQLITE_TESTCTRL_OPTIMIZATIONS. Also some documentation fixes and an enhancement to ".eqp full" in the CLI. (check-in: ae34edb7f4 user: drh tags: trunk) | |
13:26 | Fix handling of "UPDATE OR REPLACE" statements run on zipfile virtual tables. (Closed-Leaf check-in: 9a5ef341de user: dan tags: testFixes) | |
13:00 | Remove a debugging statement accidently left in check-in [eddc35f3057e59fd] (Closed-Leaf check-in: 85a31557ac user: drh tags: push-down-disable) | |
12:12 | Add a test case for the fix on this branch. (check-in: 7834cf6c28 user: dan tags: testFixes) | |
12:04 | In the CLI, avoid extra .selecttrace and .wheretrace output when in ".eqp full" mode. (check-in: 427bbf318a user: drh tags: push-down-disable) | |
11:58 | Closer reading of the sqlite3_db_config() documentation show that it is subtly incorrect. This check-in fixes the problem. No code changes. (check-in: 44d90e7f4b user: drh tags: push-down-disable) | |
11:51 | Fix a minor formatting issue on the sqlite3_db_config() documentation. No changes to code. (check-in: 8a439a6dda user: drh tags: push-down-disable) | |
11:24 | Add the ability to disable the push-down optimization using the 0x1000 bit of SQLITE_TESTCTRL_OPTIMIZATIONS. (check-in: eddc35f305 user: drh tags: push-down-disable) | |
2018-03-19
| ||
22:28 | Minor improvements to ".selecttrace". No changes to non-debug code. (check-in: 03e541f606 user: drh tags: trunk) | |
19:05 | Enhance the command-line completion extension to return the names of triggers and views along with the names of tables. (check-in: 10e32204e1 user: drh tags: trunk) | |
16:59 | Show symbolic SELECT names in EXPLAIN QUERY PLAN output when compiling with SQLITE_ENABLE_SELECTTRACE. (Leaf check-in: 16c22ff818 user: drh tags: EQP-improvements) | |
16:09 | In the compile_options pragma, show the actual value of the SQLITE_ENABLE_CEROD compile-time option, if it exists. (check-in: 1ec339fd10 user: drh tags: trunk) | |
16:06 | Improved ".selecttrace" output formatting. No changes in non-debug code. (check-in: 30704d2a52 user: drh tags: trunk) | |
2018-03-17
| ||
16:26 | Do not use sqlite3_column_decltype() in the CLI if it is compiled with SQLITE_OMIT_DECLTYPE. (check-in: 442e816b5f user: drh tags: trunk) | |
02:13 | For 'zipfile', detect attempts to cause a duplicate entry via UPDATE. (check-in: cf78a88279 user: mistachkin tags: testFixes) | |
00:44 | Another Win32 portability fix for the 'zipfile' tests. (check-in: 9f604418ca user: mistachkin tags: testFixes) | |
2018-03-16
| ||
23:59 | Detect corruption in the form of the sqlite_sequence table pointing to the wrong type of btree. (check-in: 525deb7a67 user: drh tags: trunk) | |
23:54 | Win32 portability fixes to the 'fileio' extension. (check-in: 9d2b0f8b84 user: mistachkin tags: testFixes) | |
23:54 | Enable more 'zipfile' tests on Win32. (check-in: 49d2566c8e user: mistachkin tags: testFixes) | |
23:54 | Make a couple tests less sensitive to timing. (check-in: bc2af8e0aa user: mistachkin tags: testFixes) | |
23:53 | Fix a duplicate test number and cleanup a bit of Makefile whitespace. (check-in: 56d11c2509 user: mistachkin tags: testFixes) | |
20:23 | Detect databases whose schema is corrupted using a CREATE TABLE AS statement and issue an appropriate error message. (check-in: d75e67654a user: drh tags: trunk) | |
20:15 | Better error message text when the schema is corrupted by a CREATE TABLE AS entry. (Closed-Leaf check-in: e13993cf83 user: drh tags: corrupt-schema) | |
19:10 | Fix a parsing issue associated with a corrupt sqlite_master table. (check-in: 5f779ff6b4 user: mistachkin tags: corrupt-schema) | |
18:46 | Avoid writing the sqlite_sequence table when it has not actually changed. (Closed-Leaf check-in: 3e3849a9d1 user: drh tags: autoinc-enhancement) | |
18:02 | Fix a problem with handling rebasing UPDATE changes for REPLACE conflict resolution. (check-in: f7bf71f1d4 user: dan tags: sessions-rebase) | |
07:48 | Fix a problem in test script thread001.test causing a spurious "-1 files were left open" error when run separately. (check-in: 1774f1c3ba user: dan tags: trunk) | |
2018-03-15
| ||
19:25 | Add simple tests for the sessions module rebase API. (check-in: cf0d1abb44 user: dan tags: sessions-rebase) | |
17:46 | Fix a typo in a comment used to generate documentation. No code changes. (check-in: f1784aff4e user: drh tags: trunk) | |
15:09 | Fix an issue with the fsdir() table-valued function not resetting correctly after each pass of a join. (check-in: 7ce4e71c1b user: drh tags: trunk) | |
05:25 | Draft fix for an fsdir() issue reported via the mailing list. (Closed-Leaf check-in: 48641010c2 user: mistachkin tags: fsDirFix) | |
2018-03-14
| ||
21:06 | Add largely untested APIs for rebasing changesets. (check-in: 39915b683b user: dan tags: sessions-rebase) | |
17:17 | Merge the latest enhancements from trunk. (check-in: a658f80c8f user: drh tags: apple-osx) | |
15:25 | Add the SQLITE_DBSTATUS_CACHE_SPILL option to sqlite3_db_status(). (check-in: 48a06eb02b user: drh tags: trunk) | |
15:06 | Disable one of the test cases from check-in [21ecbce1378f3cc4] when API_ARMOR is not enabled. (check-in: 8fb23d4281 user: drh tags: trunk) | |
14:53 | Add the SQLITE_DBSTATUS_CACHE_SPILL option to sqlite3_db_status() (Closed-Leaf check-in: 3faeb85137 user: drh tags: dbstatus-cache-spill) | |
08:27 | Improve detection of out-of-range parameters in sqlite3_stmt_status() for SQLITE_ENABLE_API_ARMOR builds. (check-in: 21ecbce137 user: dan tags: trunk) | |
2018-03-13
| ||
20:31 | Add sqlite3_changeset_apply_v2() and apply_v2_strm() to the sessions module. (check-in: 445bfe977d user: dan tags: sessions-rebase) | |
2018-03-12
| ||
21:09 | Fix a typo causing SQLITE_LOG_CACHE_SPILL builds to fail. (check-in: 0171d4a71c user: dan tags: trunk) | |
2018-03-10
| ||
20:45 | Add more tests for the profile output of the Tcl trace_v2 method. (check-in: 61eeb48f03 user: mistachkin tags: trunk) | |
20:25 | Fix the second callback argument to the "profile" response of the "trace_v2" method in the TCL interface so that it shows the actual number of nanoseconds for the command, not the address of the variable containing the number of nanoseconds. (check-in: 8f9a125186 user: drh tags: trunk) | |
14:17 | Add support for INSERT OR REPLACE and INSERT OR IGNORE on the zipfile extension. (check-in: 8ad35d483e user: drh tags: trunk) | |
13:21 | Improved error messages from the zipfile extension. (check-in: f634a7e386 user: drh tags: trunk) | |
12:53 | Avoid harmless left-shifts of negative numbers in the zipfile extension when building ZIP archives of files with pre-DOS dates. (check-in: 16bba8650c user: drh tags: trunk) | |
12:34 | Fix the zipfile extension so that it is able to create symbolic link entries in the ZIP file even on systems like Win32 that do not support symbolic links on the native filesystem. (check-in: 2a4493f4ad user: drh tags: trunk) | |
2018-03-09
| ||
22:18 | Fix the .archive command in the CLI so that it actually compresses content. (check-in: 3c2e3c2d3d user: drh tags: trunk) | |
21:54 | Enhance the ".ar" command in the CLI so that it is able to update and create ZIP Archives. (check-in: 9404765ef7 user: drh tags: trunk) | |
16:37 | Setting ".stats 2" in the CLI causes column metadata for each prepared statement to be displayed. (check-in: 7fea00fd96 user: drh tags: trunk) | |
15:24 | Simplification to the shell_exec() mechanism in the CLI. (check-in: 72e8f529ac user: drh tags: trunk) | |
14:11 | Fix a problem in test file nockpt.test causing errors with SQLITE_DEFAULT_AUTOVACUUM builds. (check-in: e547c83f3e user: dan tags: trunk) | |
14:06 | Fix a test case in zipfilefault.test so that it only runs if JSON1 is available. (check-in: 072b244790 user: drh tags: trunk) | |
12:46 | Attempt to fix a harmless compiler warning from Clang. (check-in: bba1bfbde6 user: drh tags: trunk) | |
2018-03-08
| ||
19:56 | Enable API armor handling for the new deserialize APIs. (check-in: 0798c91aa9 user: mistachkin tags: trunk) | |
18:14 | Add the --append and --zip options of the CLI to the --help message. (check-in: f010c86ece user: drh tags: trunk) | |
18:09 | Include the 'sessionfuzz' tool in the clean target for MSVC. (check-in: 0f5a8666b8 user: mistachkin tags: trunk) | |
16:36 | Updates to documentation on sqlite3_serialize() and sqlite3_deserialize(). No changes to code. (check-in: e71ceb6089 user: drh tags: trunk) | |
2018-03-07
| ||
21:39 | Fix harmless compiler warnings in the 'dbdump' tool. (check-in: 2b9bb2664c user: mistachkin tags: trunk) | |
21:29 | Fix harmless compiler warning in the 'sessionfuzz' tool. (check-in: 706800ba37 user: mistachkin tags: trunk) | |
21:13 | Enable compilation of 'sessionfuzz' tool using MSVC. (check-in: c58de43b8f user: mistachkin tags: trunk) | |
20:48 | Add the sessionfuzz test program and data obtained from a week of running AFL. Automatically run this test program on any "make test" on unix. (check-in: ecaedfe596 user: drh tags: trunk) | |
15:54 | Update the autoconf Makefile for MSVC. (check-in: 36fec7a4a7 user: mistachkin tags: trunk) | |
15:19 | Fix various compilation issues seen with MSVC. (check-in: d6fa938919 user: mistachkin tags: trunk) | |
14:53 | Another tweak to the MSVC clean target. (Closed-Leaf check-in: 493abf10bf user: mistachkin tags: msvcFixes) | |
14:49 | Fix harmless compiler warning in FTS5. (check-in: 2d544711c7 user: mistachkin tags: msvcFixes) | |
14:42 | Fix utility compilation issues with MSVC. (check-in: 5bd5a79898 user: mistachkin tags: msvcFixes) | |
13:01 | Add the sqlite3_serialize() and sqlite3_deserialize() interfaces, enabled when the -DSQLITE_ENABLE_DESERIALIZE compile-time option is used. (check-in: fc42d31d6f user: drh tags: trunk) | |
01:37 | Mark an unreachable branch using NEVER(). (Closed-Leaf check-in: fadbc5e23f user: drh tags: memdb) | |
2018-03-06
| ||
21:43 | Improved documentation for sqlite3_serialize() and sqlite3_deserialize(). Change the name of the compile-time option to enable these interfaces from SQLITE_ENABLE_MEMDB to SQLITE_ENABLE_DESERIALIZE. (check-in: f07e97aed4 user: drh tags: memdb) | |
20:54 | Handle some boundary cases in memdb associated with OOM faults. (check-in: b58ca4cb0c user: drh tags: memdb) | |
19:14 | Simplifications to the memdb VFS. (check-in: 6c3f723a68 user: drh tags: memdb) | |
11:46 | Avoid running a couple of tests in crash8.test that depend on the presence of the journal file if running on an F2FS file-system that does not require a journal file. (check-in: 797e02e0ee user: dan tags: trunk) | |
04:01 | Improvements to the memdb VFS. (check-in: a14fed69d0 user: drh tags: memdb) | |
02:00 | Merge the walIteratorInit() fix from trunk. (check-in: 6399e101d5 user: drh tags: memdb) | |
2018-03-05
| ||
23:23 | Fix walIteratorInit() so that it always leaves the iterator as a NULL pointer if an OOM occurs. This fixes an assertion fault introduced by check-in [044b0b65e716bff]. (check-in: e5ce256aa1 user: drh tags: trunk) | |
21:19 | Merge the session fix from trunk. (check-in: 6274cf1f39 user: drh tags: memdb) | |
21:17 | Fix another crash in the sessions module triggered by malformed input. (check-in: 7e70c9b86a user: dan tags: trunk) | |
20:21 | Improved command-line help for the -A option on the CLI. (check-in: d937ac181c user: drh tags: trunk) | |
20:20 | A new way of doing archive commands on the command-line for the CLI. The -A option means that everything that follows is a ".archive" command, including any suffix on the -A option. (check-in: 9d8081fabc user: drh tags: trunk) | |
19:34 | In the CLI, add a new command-line option "--archive" (also "--ar") that passes all subsequent arguments to the ".archive" command. (check-in: a5c4d30af1 user: drh tags: trunk) | |
18:20 | Merge session fixes from trunk. (check-in: 99c02aeecf user: drh tags: memdb) | |
2018-03-02
| ||
20:00 | In sqlite3_checker, wrap the call to "SELECT checkfreelist()" in a transaction. (check-in: 02906e55d7 user: dan tags: trunk) | |
16:52 | In a checkpoint, figure out if it is possible to checkpoint any frames at all before creating the wal-iterator. (check-in: 044b0b65e7 user: dan tags: trunk) | |
15:42 | Optimize the obscure case of running a checkpoint against a very large wal file for which a large percentage of the frames have already been checkpointed. (check-in: 0f5057dffa user: dan tags: trunk) | |
2018-03-01
| ||
22:18 | Allow the zSchema argument to sqlite3_serialize() to be NULL to mean the main database. (check-in: 5b01b9914f user: drh tags: memdb) | |
18:09 | Typo fixes in comments. No changes to code. (check-in: 1293d4f64f user: mistachkin tags: trunk) | |
15:20 | Fix further crashes in sqlite3changeset_apply() caused by corrupt changeset blobs. (check-in: 2c01c72e35 user: dan tags: trunk) | |
13:44 | Merge the latest enhancements from trunk. (check-in: c8083de14b user: drh tags: memdb) | |
12:05 | Fix some crashes in the sqlite3changeset_apply() function that could be caused by corrupt changeset blobs. (check-in: 745a9a7fef user: dan tags: trunk) | |
2018-02-28
| ||
22:21 | Enhance the sessions documentation to show the methods of the various objects. (check-in: e01177754a user: drh tags: trunk) | |
21:50 | Use <pre> around code snippets in the documentation for sessions interfaces. This is a documentation change only with no changes to code. (check-in: c949b915e8 user: drh tags: trunk) | |
04:30 | Fix a potential NULL pointer deref following OOM in the new IS TRUE logic. (check-in: 48775ec693 user: drh tags: trunk) | |
2018-02-27
| ||
20:09 | Update zonefile README.md file to mention the frame cache. (Leaf check-in: 84e9351bbd user: dan tags: zonefile) | |
19:50 | Rationalize some code in zonefile.c. Fix other minor issues in the same. (check-in: f11beb16a8 user: dan tags: zonefile) | |
15:47 | Enhance test 'zonefile1-6.5' to account for platform differences. (check-in: 8b6178403f user: mistachkin tags: zonefile) | |
15:42 | Adjustments to test numbers for the 'zonefile' extension. (check-in: 55de6f14d4 user: mistachkin tags: zonefile) | |
15:40 | Add support for TRUE and FALSE keywords and for operators IS TRUE, IS FALSE, IS NOT TRUE, and IS NOT FALSE. If there is are columns named TRUE or FALSE, then the keywords resolve to the column names, for compatibility. The behavior of the "DEFAULT true" phrase is changed to mean what it says, rather than being an alias for "DEFAULT 'true'". (check-in: 9a7f02c50e user: drh tags: trunk) | |
14:49 | Clean up comments and variable names prior to merge. (Closed-Leaf check-in: 6445519e91 user: drh tags: is-true-operator) | |
14:26 | Have the zonefile extension use binary instead of text keys. (check-in: 39a4267fc9 user: dan tags: zonefile) | |
00:58 | Remove an unnecessary decision. (check-in: adcb466549 user: drh tags: is-true-operator) | |
2018-02-26
| ||
21:26 | Code simplifications. New test cases. (check-in: 57508518ef user: drh tags: is-true-operator) | |
20:15 | Get the "DEFAULT true" and "DEFAULT false" phrases working correctly in CREATE TABLE. (check-in: 8002f87d96 user: drh tags: is-true-operator) | |
19:03 | Enhance TreeView so that it can display the new IS TRUE expression trees. (check-in: 7e38305e6f user: drh tags: is-true-operator) | |
18:49 | Refactor for correct NULL handling in the IS TRUE, IS FALSE, IS NOT TRUE, and IS NOT FALSE operators. (check-in: cf2abd59be user: drh tags: is-true-operator) | |
17:03 | More tests pursuant to ticket [36fae083b450e3af857a459e20]. (check-in: c26f236da6 user: mistachkin tags: trunk) | |
16:49 | Fix heap issue in the shell on Win32 caused by allocator mismatch. (check-in: 7b3a75519a user: mistachkin tags: trunk) | |
15:31 | Merge the fix for determining truth of floating point values from trunk. (check-in: 003dc14053 user: drh tags: is-true-operator) | |
15:27 | Always interpret non-zero floating-point values as true even if their integer part is zero. Fix for ticket [36fae083b450e3af857a459e20]. (check-in: a983fa8570 user: drh tags: trunk) | |
07:58 | Add extra parameter to zonefileCodecCreate() to indicate whether the new object will be used for mock-encryption or mock-decryption. (check-in: 231832c4cb user: dan tags: zonefile) | |
03:20 | Experimental implementation of IS TRUE and IS FALSE operators. All TRUE and FALSE to act like constants if the names do not resolve to a column name. (check-in: 40314bc999 user: drh tags: is-true-operator) | |
2018-02-24
| ||
08:26 | Test edge cases in the zonefile module. Fix a broken error message in the same. (check-in: 1764ade22b user: dan tags: zonefile) | |
2018-02-23
| ||
21:01 | Fix a problem with handling "k >= ?" constraints in the zonefile module. (check-in: 9a99afafa3 user: dan tags: zonefile) | |
19:21 | Add test cases and minor fixes for the zonefile module. (check-in: dbbcbf0066 user: dan tags: zonefile) | |
14:09 | Fix a problem causing SQLITE_HAVE_LZ4 builds of zonefile to fail unless SQLITE_HAVE_ZLIB is also defined. (check-in: 994aa77d78 user: dan tags: zonefile) | |
14:02 | Fix a problem with DROP TABLE statements on zonefile virtual tables. (check-in: d2ed6910b8 user: dan tags: zonefile) | |
14:00 | Fix harmless compiler warnings in the zonefile extension seen with MSVC. (check-in: d28003941c user: mistachkin tags: zonefile) | |
13:58 | Avoid running a test case that requires zstd in non-SQLITE_HAVE_ZSTD builds. (check-in: d716dff444 user: dan tags: zonefile) | |
13:45 | Merge updates from trunk. (check-in: 53f2100a29 user: mistachkin tags: zonefile) | |
13:38 | Fix harmless compiler warnings in the zipfile extension seen with MSVC. (check-in: 15c587cf6f user: mistachkin tags: trunk) | |
13:38 | Enable the JSON1 extension when compiling the test fixture with MSVC. (check-in: e9e9f27b3d user: mistachkin tags: trunk) | |
2018-02-22
| ||
21:06 | Add tests cases and fix some minor zonefile problems. (check-in: f4d42162fa user: dan tags: zonefile) | |
18:30 | For the "SQLite archive" link in the README.md file, point to the CLI .archive command documentation, not the original "sqlar" website. (check-in: 4290faf5f7 user: drh tags: trunk) | |
18:28 | Updates to the README.md file. Mention the ability to use SQLite-archives for download. (check-in: ab9a7ae4ee user: drh tags: trunk) | |
16:46 | Add an LRU cache of uncompressed frame content to the zonefile virtual table implementation. (check-in: 883e7e75d6 user: dan tags: zonefile) | |
2018-02-21
| ||
21:15 | Modifications to the zonefile module to make it easier to add a cache of uncompressed frame content. (check-in: d9d5cc62f1 user: dan tags: zonefile) | |
16:36 | Have zonefile store encryption keys in a hash-table instead of a linked list. Add extra tests for key management. (check-in: 3a63ea6525 user: dan tags: zonefile) | |
10:43 | In zonefile, change the "file TEXT" column back to "fileid INTEGER". The fileid can be used as a key with the associated zonefile_files table, which contains more information than just the filename. (check-in: 38d23888cf user: dan tags: zonefile) | |
01:48 | Remove an unreachable branch in the walIndexPage() logic. (check-in: 4e61a9731f user: drh tags: trunk) | |
01:05 | Small performance improvement in sqltie3WalFindFrame(). (check-in: 52013cad0e user: drh tags: trunk) | |
00:48 | Remove an unnecessary memset(). (check-in: e7b7f5884a user: drh tags: trunk) | |
2018-02-20
| ||
22:20 | Make the walIndexPage() routine about 3x faster by factoring out the seldom used reallocation logic into a separate subroutine. (check-in: e2b107141c user: drh tags: trunk) | |
20:57 | Update README.md in ext/zonefile. (check-in: a13b2b3813 user: dan tags: zonefile) | |
19:25 | Fix a problem with reading the "file" column of a zonefile virtual table. (check-in: d8d0bdcb40 user: dan tags: zonefile) | |
18:47 | Instead of just the frame number, store frame sizes and offsets in zonefile shadow table %_shadow_idx. (check-in: 56801c461c user: dan tags: zonefile) | |
17:02 | In the speed-check.sh script, make WAL mode the default. Add the --legacy option to do DELETE mode. Continue to use DELETE mode for long-term performance graphs since WAL mode was not always available, but use WAL mode for day-to-day performance measurements. (check-in: cd81613850 user: drh tags: trunk) | |
16:39 | Remove a superfluous "#if 1". No logic changes. (check-in: caaffd3200 user: drh tags: trunk) | |
15:23 | Optimize calls to sqlite3_mprintf("%z...") so that they attempt to append text onto the end of the existing memory allocation rather than reallocating and copying. (check-in: 4bc8a48e64 user: drh tags: trunk) | |
13:46 | Remove a lot of the text describing extended format options from the documentation on sqlite3_mprintf() and friends, since that information is now covered by the separate printf.html document. Provide links to that other document. No changes to code. (check-in: 99eec556f0 user: drh tags: trunk) | |
2018-02-19
| ||
22:46 | Enhance the string formatter (used by printf()) so that the width and precision of string substitution operators refer to characters instead of bytes when the alternate-form-2 flag ("!") is used. Also fix the %c substition to always work within unicode, regardless of the alternate-form-2 flag. (check-in: c883c4d33f user: drh tags: trunk) | |
21:58 | Printing a value of 0 using %c terminates the string. (Closed-Leaf check-in: 255612f0a1 user: drh tags: printf-enhancement) | |
21:07 | Add support for invoking encryption hooks to zonefile. And mock encryption method "xor" for testing. (check-in: 55cf920c5a user: dan tags: zonefile) | |
20:41 | More test cases for unicode handling in printf. (check-in: ac18821111 user: drh tags: printf-enhancement) | |
20:23 | Test cases and a bug fix on the new unicode handling in %c. (check-in: e41d64e95b user: drh tags: printf-enhancement) | |
18:56 | Fix the %c substitution in printf() so that it works with unicode characters. (check-in: c35be1d9e9 user: drh tags: printf-enhancement) | |
18:03 | Make the alternate-form-2 flag ("!") change the meaning of width and precision from bytes to characters for the %q, %Q, and %w extensions of printf(). (check-in: 391540acbe user: drh tags: printf-enhancement) | |
17:03 | In the printf() library, measure width and precision in characters rather than bytes if the "!" (alternate-form-2) flag is present on a %s or %z substitution. (check-in: ca31c66304 user: drh tags: printf-enhancement) | |
16:34 | Only try to use the geteuid() interface on unix if HAVE_FCHOWN is defined. This fixes the build for vxWorks, we are told. (check-in: 38f654dc11 user: drh tags: trunk) | |
16:28 | Add support for the ExtendedHeaderSize header field to zonefile. (check-in: 78267a0913 user: dan tags: zonefile) | |
14:27 | Modify the zonefile format in order to avoid depending on the filesize to determine the extent of the final frame. See README.md for details. (check-in: 4dbe0cba3f user: dan tags: zonefile) | |
13:53 | Fix an assert so that it compares two CellInfo objects field by field instead of using memcmp(). Memcmp() does not work on x86 because of uninitialized padding bytes. (check-in: 88258770ad user: drh tags: trunk) | |
2018-02-18
| ||
17:50 | Fix a memory leak in the processing of nested row values. This problem has existed every since row values support was added (version 3.15.0, 2016-10-14) but was only just now detected by OSSFuzz. (check-in: 2df6bbf1b8 user: drh tags: trunk) | |
00:54 | Port mutex enhancments from check-in [f53b8a573b] to the Win32 implementation. (check-in: 74bb7225d1 user: mistachkin tags: trunk) | |
2018-02-17
| ||
20:22 | Add support for "brotli" compression to the zonefile module. (check-in: 3eb25b3fa5 user: dan tags: zonefile) | |
19:38 | Add support for compression types "lz4" and "lz4hc" to the zonefile module. (check-in: bbe5b21ffa user: dan tags: zonefile) | |
18:33 | Add support for compression methods "zstd" and "zstd_global_dict". (check-in: a993a50bb8 user: dan tags: zonefile) | |
07:38 | Fix a data race causing a tsan complaint with SQLITE_ENABLE_API_ARMOR builds on unix. The race condition is not dangerous in practice, it just upsets tsan. (check-in: f53b8a573b user: dan tags: trunk) | |
2018-02-15
| ||
21:00 | Do not allow parameters or schema references inside of WITH clause of triggers and views. This fixes a bug discovered by OSSFuzz and present since common-table-expressions were first added in 2014-02-03. (check-in: b918d4b4e5 user: drh tags: trunk) | |
20:37 | Add support for zlib compression to the zonefile module. (check-in: 72b8a7ef98 user: dan tags: zonefile) | |
20:00 | On unix, the "PRAGMA fsync_interval=N" command causes an extra fdatasync() after writing N bytes of content, to force a write-queue flush in the underlying OS. This is an experimental hack that is not expected to land on trunk. (Leaf check-in: b18cc5fee4 user: drh tags: write-queue-flush-hack) | |
15:24 | Fix another point in zonefile.c so that all files are opened in either "rb" or "wb" mode. (check-in: fb1c227791 user: dan tags: zonefile) | |
15:17 | When calling fopen() in the zonefile extension, use modes "rb" and "wb" instead of "r" and "w". This makes no difference on unix, but is required when accessing binary files on other systems. (check-in: 4bb854ddd9 user: dan tags: zonefile) | |
03:56 | Improve performance of editdist3() by keeping the costs in sorted order. Also add a new regression test to editdist3(). (check-in: dc734c5b61 user: drh tags: trunk) | |
03:05 | Reduce the number of calls to strncmp() required to run editDist3Core(). (check-in: afd6fbc010 user: drh tags: trunk) | |
01:03 | Fix the --heap, --pagecache, --lookaside and other options to the command-line shell that invoke sqlite3_config() so that they work again. (check-in: 00707f2f2f user: drh tags: trunk) | |
2018-02-14
| ||
23:27 | Add the --readonly option to the ".open" command in the CLI. (check-in: 06870bb156 user: drh tags: trunk) | |
20:58 | Performance optimizations to the editdist3() function in the spellfix extension. (check-in: 70d304dcba user: drh tags: trunk) | |
20:25 | Disable assert() in the spellfix extension if not compiled with SQLITE_DEBUG. (check-in: 3c53ee0fde user: drh tags: trunk) | |
15:30 | New test cases for the editdist3() function in the spellfix extension. (check-in: 2d3f1f22d5 user: drh tags: trunk) | |
14:13 | Try to optimize spellfix1 by storing a NULL in the k1 column of %_vocab if it would otherwise have the same value as the word column. (check-in: b76ec7cb58 user: drh tags: trunk) | |
2018-02-13
| ||
21:16 | Fix formatting errors in ext/zonefile/README.md. (check-in: a2221e35d6 user: dan tags: zonefile) | |
20:53 | Note the fact that zonefile depends on json1 in ext/zonefile/README.md. (check-in: fb27d8f6a8 user: dan tags: zonefile) | |
20:08 | Fix handling of maxAutoFrameSize parameter. (check-in: d65e585574 user: dan tags: zonefile) | |
19:13 | Improved test cases for the [f484b65f3d6230593c34f] bug. (check-in: 1f300514e6 user: drh tags: trunk) | |
19:01 | Enhance ext/zonefile/README.md to describe the currently available functionality. (check-in: 100137c7f6 user: dan tags: zonefile) | |
18:48 | Fix an incorrect table lookup used to find the appropriate search operator for a WHERE clause on a row-value inequality. The incorrect table lookup was causing an incorrect answer for the less-than operator. Fix for ticket [f484b65f3d6230593c34f11] (check-in: f3112e67cd user: drh tags: trunk) | |
18:02 | Remove, for now, the "priority" column from the zonefile_files virtual table. (check-in: 8bf5154bc6 user: dan tags: zonefile) | |
17:33 | Pad the 26 byte Zonefile header to 32 bytes so that the ZonefileIndex object is 8-byte aligned. (check-in: fdb6c0c5dc user: dan tags: zonefile) | |
16:30 | Remove an unused variable from FTS4. (check-in: 27ea783b28 user: drh tags: trunk) | |
16:21 | Ensure that multiple updates of the same FTS4 row (i.e. the row with the same rowid) within a single transaction are written to separate segments. Fix for [d6ec09ec]. (check-in: d2a81a3752 user: dan tags: trunk) | |
2018-02-12
| ||
20:50 | Updates to the speed-check.sh script for improvements to the --vdbeprofile option. (check-in: f89c8f8ecd user: drh tags: trunk) | |
20:27 | When compiling with VDBE_PROFILE, add the sqlite3NProfileCnt global variable which can be used to measure per-opcode values other than elapse time, if non-zero. (check-in: d44d593642 user: drh tags: trunk) | |
20:04 | Add support for reading simple (no compression, no encryption) zonefile files. (check-in: dba42f0e1e user: dan tags: zonefile) | |
15:27 | Update test file func6.test so that it works with SQLITE_ENABLE_NULL_TRIM builds. (check-in: e128d72f1a user: dan tags: trunk) | |
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. (check-in: 27754b74dd user: drh tags: trunk) | |
2018-02-10
| ||
21:04 | Add start of "zonefile" virtual table. (check-in: 0b7bd1694b user: dan tags: zonefile) | |
17:41 | Add the start of the "zonefile" extension. (check-in: c125b4c380 user: dan tags: zonefile) | |
02:31 | Fix misplaced testcase() macros from the previous check-in. (check-in: 3aed949a18 user: drh tags: trunk) | |
2018-02-09
| ||
23:25 | Improve the performance of the built-in REPLACE() function in cases where it does many substitutions that make the string larger. OSSFuzz is reporting intermittant timeouts when running a test where it does a REPLACE() on a 930KB random blob. Perhaps this enhancement will fix that. (check-in: fab2c2b07b user: drh tags: trunk) | |
20:49 | Add the zorder.c extension implementing zorder() and unzorder() SQL functions. (check-in: a57a77dc0c user: drh tags: trunk) | |
15:42 | Make the tests in func6.test more robust against implementation changes. (check-in: b685d32310 user: dan tags: trunk) | |
15:04 | Fix a harmless compiler warning. (check-in: a6c3115483 user: drh tags: trunk) | |
2018-02-08
| ||
01:00 | Enhance sqlite3ErrStr() to include several more error codes. (check-in: ad5d3bdc73 user: mistachkin tags: trunk) | |
2018-02-07
| ||
18:45 | Fix typo in comment. Skip tests added by check-in [4761db83b6] when running on Windows. (check-in: 468a389cdc user: mistachkin tags: trunk) | |
18:02 | In extensions rtree, fts3 and fts5, ensure that when dynamic buffers are bound to persistent SQL statements using SQLITE_STATIC, the binding is replaced with an SQL NULL before the buffer is freed. Otherwise, a user may obtain a pointer to the persistent statement using sqlite3_next_stmt() and attempt to access the freed buffer using sqlite3_expanded_sql() or similar. (check-in: 2a5f813bc6 user: dan tags: trunk) | |
16:14 | When the final connection disconnects from a wal mode database, check that the database file has not been moved or unlinked before deleting the wal and shm files. (check-in: 4761db83b6 user: dan tags: trunk) | |
2018-02-05
| ||
21:02 | Adjust the previous check-in, which modified the Win32 VFS, so that it works with SQLITE_OMIT_WAL. (check-in: 36c2e67e82 user: mistachkin tags: trunk) | |
20:42 | Allocation the mutex used by the Win32 VFS only once at initialization, instead of every time it is needed. (check-in: 535ed0ac5e user: mistachkin tags: trunk) | |
16:39 | Allocation the mutex used by the unix VFS only once at initialization, instead of every time it is needed. (check-in: 5764dc1607 user: drh tags: trunk) | |
13:42 | Fix another minor problem in walro2.test. (check-in: ba0631de60 user: dan tags: trunk) | |
13:28 | Update test file walro2.test to account for systems with a page-size (getpagesize()) larger than 32KB. (check-in: d9e59cfb84 user: dan tags: trunk) | |
2018-02-04
| ||
20:33 | In the CLI, make sure sqlite3_initialize() is called correctly even for non-UTF8 hosts. (check-in: a3591fb541 user: drh tags: trunk) | |
01:30 | Fix harmless compiler warning seen with MSVC. (check-in: 63a914410b user: mistachkin tags: trunk) | |
01:29 | Move variable declaration in zipfile extension to fix MSVC compiler error. (check-in: ac6a32482e user: mistachkin tags: trunk) | |
2018-02-02
| ||
16:28 | Remove the "include <io.h>" win32 dependency from the zipfile extension. (check-in: cb3feb3bc3 user: dan tags: trunk) | |
16:20 | Remove the time() dependency from the zipfile extension. Use SQLite VFS methods instead. (check-in: 0702fb5611 user: dan tags: trunk) | |
2018-02-01
| ||
20:42 | Add a few more zipfile tests. No changes to code. (check-in: 3f62154587 user: dan tags: trunk) | |
19:41 | Fix a problem triggered when a zipfile virtual table is created and written to within the same transaction. And add other zipfile tests. (check-in: 48f1c55699 user: dan tags: trunk) | |
15:57 | New assert() statements to help ensure that no other errors similar to [343634942dd54ab57b7] ever appear in the code. (check-in: 5a70af1e9c user: drh tags: trunk) | |
15:19 | Fix a memory leak that could follow an IO error in the zipfile extension. And add other tests. (check-in: e6bb750697 user: dan tags: trunk) | |
01:13 | When an index is based on a text representation of a numeric column in the original table, make sure the indexed value uses the canonical text representation of the numeric value in the table. Proposed fix for ticket [343634942dd54ab57b70]. (check-in: 88e2ce9167 user: drh tags: trunk) | |
2018-01-31
| ||
20:18 | When creating a new archive entry, have zipfile store UTC instead of local time in the legacy MS-DOS format timestamp field. (check-in: b730d187f2 user: dan tags: trunk) | |
19:45 | Fix a test case in zipfile.test. (Closed-Leaf check-in: 4eb5b24c64 user: dan tags: zipfile-timestamp-fix) | |
19:13 | When creating a new archive entry, have zipfile store UTC instead of local time in the legacy MS-DOS format timestamp field. (check-in: e2114df183 user: dan tags: zipfile-timestamp-fix) | |
16:50 | Improve the omit-left-join optimization so that it works in some cases when the RHS is subject to a UNIQUE but not NOT NULL constraint. (check-in: 02ba8a7ba7 user: drh tags: trunk) | |
14:07 | Fix a failing assert() in the new code on this branch. (Closed-Leaf check-in: 74d857d178 user: dan tags: omit-left-join-fix) | |
01:38 | Changes to the autoconf tarball so that it does not try to use system() when building on iOS. (check-in: 32ed9c1067 user: drh tags: trunk) | |
2018-01-30
| ||
18:33 | If a virtual table xColumn method sets an error message using sqlite3_result_error(), use that message in preference to any error message left in the sqlite3_vtab object. (check-in: 71e3b715ad user: dan tags: trunk) | |
17:43 | Add tests cases for the zipfile extension. (check-in: 13b786dafd user: dan tags: trunk) | |
14:07 | Prevent users from creating zipfile() virtual tables without an argument. (check-in: 81fdbe0cc5 user: dan tags: trunk) | |
2018-01-29
| ||
19:47 | Add unix-only tests to check that the "unzip" program can unpack archives generated by the zipfile extension. (check-in: 438c5c5237 user: dan tags: trunk) | |
18:41 | Add aggregate function zipfile() to the zipfile extension. For composing new zip archives in memory. (check-in: e364eeac76 user: dan tags: trunk) | |
17:08 | Update the omit-left-join optimization so that it works in some cases when the RHS is subject to a UNIQUE but not NOT NULL constraint. (check-in: 88411a402b user: dan tags: omit-left-join-fix) | |
16:22 | Ensure the "unique-not-null" flag is set for automatic indexes on columns declared with "col UNIQUE NOT NULL" (where the NOT NULL comes after the UNIQUE). (check-in: 8767f7b880 user: dan tags: trunk) | |
2018-01-27
| ||
18:55 | Fix missing header comments and other code issues in zipfile.c. (check-in: 6ea8ba312c user: dan tags: trunk) | |
16:29 | If a zipfile virtual table is created with no argument - "CREATE VIRTUAL TABLE zzz USING zipfile()" - accumulate data in memory. Support "SELECT zipfile_blob(z) FROM zzz LIMIT 1" to retrieve a zip archive image. (check-in: e63185edfe user: dan tags: trunk) | |
14:25 | Changes to avoid a harmless UB warning from clang. (check-in: 19f5c14000 user: drh tags: trunk) | |
13:55 | New test case for ticket [ec32177c99ccac2b1] that works without the STAT4. (check-in: 5259d4847f user: drh tags: trunk) | |
05:40 | Proposed fix for the query planner problem of ticket [ec32177c99ccac2b1]. (check-in: eef8cbef3c user: drh tags: trunk) | |
03:26 | Fix compiler warnings in zipfile.c. (check-in: bed610d99b user: drh tags: trunk) | |
2018-01-26
| ||
22:41 | Fix the query planner so that it takes into account dependencies in the arguments to table-valued functions in subexpressions in the WHERE clause. Fix for ticket [80177f0c226ff54f6dd]. (check-in: 7daa687340 user: drh tags: trunk) | |
18:59 | If the argument to table function zipfile() is a blob (not text), assume that it contains a zip file image to interpret, not the name of a file on disk. (check-in: 029ebcd30c user: dan tags: trunk) | |
18:37 | Improve text-to-integer conversion in boundary cases. The sqlite3Atoi64() function always returns the minimum or maximum integer if the magnitude of the text value is too large. Trailing whitespace is now ignored. (check-in: ace0644a1a user: drh tags: trunk) | |
2018-01-25
| ||
20:50 | Reorganize zipfile.c code to make it easier to add support for in-memory zip archive processing. (check-in: 30b9258294 user: dan tags: trunk) | |
01:20 | Slightly smaller and faster implementation of OP_If and OP_IfNot. (check-in: 6ab42934e2 user: drh tags: trunk) | |
2018-01-24
| ||
20:42 | When unpacking a sorter record, do so from right to left instead of left to right, since by starting with the right-most column, the work done by OP_Column opcodes is reduced. (check-in: 8055e4f424 user: drh tags: trunk) | |
18:28 | Reorganize spellfix.c to make it easier to edit automatically (e.g. using a script). No changes to functionality. (check-in: 090a64faaa user: dan tags: trunk) | |
16:04 | Rearrange fields of the BtCursor object so that it is smaller and requires less initialization, for a small performance improvement. (check-in: 0ddf5292cc user: drh tags: trunk) | |
15:07 | Add the normalize.c extension. (check-in: 16ebe558d2 user: drh tags: trunk) | |
15:02 | Merge changes from trunk. (check-in: 6ef3de810d user: drh tags: memdb) | |
14:40 | Interchange the numeric codes for CURSOR_VALID and CURSOR_INVALID to obtain a small size decrease and performance increase. (check-in: e0f192ea6d user: drh tags: trunk) | |
14:39 | Adjust the fts3rank.test module so that it works on big-endian systems (hopefully - I don't have a big-endian machine to test the change on.) (check-in: e4766cabdf user: drh tags: trunk) | |
13:15 | Improved error message output when the btreeinfo.c extension is run in a connection that lacks sqlite_dbpage support. (check-in: 461b0b81b2 user: drh tags: trunk) | |
12:14 | Prevent a harmless unused variable warning when compiling with SQLITE_OMIT_TRACE. (check-in: 61a44961b5 user: drh tags: trunk) | |
11:29 | Fix a formatting issue in sqlite3_prepare_v3() documentation. No changes to code. (check-in: 9e6066de84 user: drh tags: trunk) | |
11:25 | Fix the sqlite3ext.h header file so that it correctly accesses the new sqlite3_value_nochange() and sqlite3_vtab_collation() interfaces. (check-in: 6185d190e2 user: drh tags: trunk) | |
06:30 | Update a couple of test scripts so that they work on F2FS file-systems that support atomic transactions. (check-in: 49e58e645e user: dan tags: trunk) | |
01:58 | Make the shell functional even if compiled with SQLITE_OMIT_COMPLETE. Omit the sqlite3_complete() call from the fuzzing interface if it is compiled with SQLITE_OMIT_COMPLETE. (check-in: c3e816cca4 user: drh tags: trunk) | |
01:02 | Invoke the sqlite3_complete() interface from the fuzzer. (check-in: 332bf84625 user: drh tags: trunk) | |
2018-01-23
| ||
20:22 | Increase the version number to 3.23.0 for the next development cycle. (check-in: b58b60b2c0 user: drh tags: trunk) | |
19:24 | Remove an unreachable branch from sqlite3SkipAccumulatorLoad(). (check-in: 8b9c8eab60 user: drh tags: trunk) | |
17:33 | Work around a problem with GCC on 32-bit machines that cause the CAST operator to generate a floating-point result for strings that could be represented as very large integers. (check-in: 1b02731962 user: drh tags: trunk) | |
16:38 | Fix a bug causing spurious "sub-select returns N columns expected 1" errors in join queries with a term like "(a, b) IN (SELECT ...)" in the WHERE clause. Ticket [7310e2fb3d046a5f5]. (check-in: 14dfd96f9b user: dan tags: trunk) | |
15:26 | Fix the modification-time setting logic in the fileio.c extension on Windows so that it works with utf8 filenames. (check-in: f785b90415 user: drh tags: trunk) | |
14:01 | In SQLITE_ENABLE_BATCH_ATOMIC_WRITE builds on F2FS file-systems, invoke SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE if an SQLITE_FCNTL_COMMIT_ATOMIC_WRITE call fails. Also, do not use an atomic transaction to create the initial database. This is because if an error occurs while writing to the db file, any changes to the file-size do not seem to be rolled back automatically. The only time this matters is when the file was 0 bytes in size to start with. (check-in: b3122db154 user: dan tags: trunk) | |
13:30 | Fix comment typos. No changes to code. (check-in: 8e5e74c66b user: drh tags: trunk) | |
07:11 | Skip defining WIN32_LEAN_AND_MEAN when it is already defined. (check-in: 195f5323df user: mistachkin tags: trunk) | |
04:22 | Slightly faster implementation of the length() SQL function. (check-in: 9a4199aedb user: drh tags: trunk) | |
03:44 | Slightly faster function dispatch in the virtual machine by avoiding unnecessary reinitialization of variables that are already correctly initialized. (check-in: edd4e6876c user: drh tags: trunk) | |
00:17 | Simplify one of the compiler warning fixes from the previous check-in. (check-in: 012d7d49c5 user: mistachkin tags: trunk) | |
00:05 | Fix harmless compiler warnings seen with MSVC. (check-in: 76a11a80e9 user: mistachkin tags: trunk) | |
2018-01-22
| ||
19:04 | Merge all version-3.22.0 changes. (check-in: 27e20d6998 user: drh tags: apple-osx) | |
18:45 | Version 3.22.0 (check-in: 0c55d17973 user: drh tags: trunk, release, version-3.22.0) | |
15:45 | Avoid unnecessary OOM detection warnings in a debugging routine. (check-in: 395f8ea790 user: drh tags: trunk) | |
15:20 | Fix a test case in walro2.test so that it works with encryption extensions (when each page has a little less usable space available than usual). (check-in: b79521d255 user: dan tags: trunk) | |
14:49 | On the walro2-X.4.2.2 test case, show the size as part of the test output. (check-in: ac5091d7f8 user: drh tags: trunk) | |
2018-01-20
| ||
15:48 | Allow the shell to be built from the configure script with SQLITE_OMIT_VIRTUALTABLE defined. (check-in: 136bf323e4 user: dan tags: trunk) | |
2018-01-18
| ||
19:00 | Use a loop to avoid recursion in the heightOfSelect() function. (check-in: 86de43595c user: dan tags: trunk) | |
17:46 | Check for both zlib.h and -lz before enabling zlib support in the amalgamation configure script. (check-in: 8ecd13a1b3 user: dan tags: trunk) | |
17:09 | Update the autoconf configure.ac script and Makefile.am templates so that ZLIB is automatically detected and used. (check-in: 41bfb6b8d6 user: drh tags: trunk) | |
16:59 | Fix sessions module handling of sqlite_stat1 rows with (idx IS NULL). (check-in: 0e91641633 user: dan tags: trunk) | |
16:56 | Clarify the handling of the sqlite_stat1 table by legacy versions of the sessions module. (Closed-Leaf check-in: dc7c48cb41 user: dan tags: sessions-stat1) | |
16:53 | Add comments describing the special sqlite_stat1 handling to sqlite3session.h. (check-in: 4431a3256f user: dan tags: sessions-stat1) | |
16:52 | Fix to the documentation for sqlite3_trace_v2(). No changes to code. (check-in: 6fbd0a11a6 user: drh tags: trunk) | |
16:42 | Fix sessions module conflict handling for the sqlite_stat1 table. (check-in: f05ee74e05 user: dan tags: sessions-stat1) | |
15:06 | Simplify the sessions preupdate-hook logic for transforming NULL to X'' for column sqlite_stat1.idx. (check-in: 089d7cecaa user: dan tags: sessions-stat1) | |
2018-01-17
| ||
21:14 | Alternative implementation for the internal sqlite3Pow10() utility for MSVC, which is more accurate on that platform. (check-in: 469b96be53 user: drh tags: trunk) | |
20:57 | Fix a problem in the sessions module with logging sqlite_stat1 rows for which (idx IS NULL) is true. (check-in: 25bf734be1 user: dan tags: sessions-stat1) | |
17:38 | Fix a problem causing the sessions module to occasionally lose track of rows with composite primary keys when there are two rows with the same text value in the leftmost column of the PK. (check-in: 09aed13678 user: dan tags: trunk) | |
16:11 | Fix main.mk so that testfixture can be built either from the amalgamation or from individual source files. No changes to code. (check-in: a8aea925f8 user: dan tags: trunk) | |
13:15 | Fix harmless compiler warnings, mostly unused parameters for UDFs in the CLI. (check-in: bfbeffab77 user: drh tags: trunk) | |
12:58 | Omit the single test from zipfile.test that uses json functionality in non-SQLITE_ENABLE_JSON1 builds. (check-in: 6bb2a10fad user: dan tags: trunk) | |
12:57 | Update test file fts5fault6.test to account for test tokenizers implemented in Tcl returning SQLITE_ERROR instead of SQLITE_NOMEM following an OOM error. (check-in: c232f6424a user: dan tags: trunk) | |
01:40 | Simplifications to winOpenSharedMemory in the Win32 VFS. (check-in: 3e04999dab user: mistachkin tags: trunk) | |
01:26 | Corrections to error code handling in os_win.c, pursuant to walfault.test. (check-in: 568192228c user: mistachkin tags: trunk) | |
01:15 | Fix duplicate test names in 'walfault.test'. (check-in: 7274d05ff4 user: mistachkin tags: trunk) | |
2018-01-16
| ||
21:09 | Fix a problem causing zipfile to store 0 in place of the CRC32 value for uncompressed files. (check-in: ba44724bcc user: dan tags: trunk) | |
21:05 | Remove an unused field from the internal definition of the sqlite3_context object. (check-in: 948a26b5a6 user: drh tags: trunk) | |
21:00 | Fix compiler warning in the FTS5 test interface. (check-in: 2ab4e8d5d8 user: drh tags: trunk) | |
20:50 | Make the new sqlite3_vtab_collation() interface accessible to loadable extensions. (check-in: f301db3c23 user: drh tags: trunk) | |
20:44 | Fix a test problem causing an error in fts5fault9.test. (check-in: 8e2048113f user: dan tags: trunk) | |
20:37 | Remove the unused SQLITE_CANTOPEN_DIRTYWAL result code. (check-in: 3c786305fc user: drh tags: trunk) | |
20:20 | Fix a makefile problem causing -DSQLITE_ENABLE_STMTVTAB builds to fail. (check-in: 7f6e5bdf90 user: dan tags: trunk) | |
20:05 | Move the ZLIB version announcement in the CLI out of the default banner and put it in the ".version" command. (check-in: 231679d6f8 user: drh tags: trunk) | |
19:03 | Show version of zlib in use when running the shell tool in interactive mode. (check-in: a8906b527a user: mistachkin tags: trunk) | |
17:33 | Change a cat in zipfile.c from (z_const Bytef*) to just (Bytef*). This allows the module to build with older versions of zlib. (check-in: ac9af91d5a user: dan tags: trunk) | |
13:37 | Fix a problem causing an infinite loop or other malfunction in some UPDATE statements with an OR term in the WHERE clause. Ticket [47b2581aa9bfecec] (check-in: feb2c2b6f6 user: dan tags: trunk) | |
02:38 | Disable the ".archive" command tests in shell8.test if the CLI is compiled without ZLIB support. (check-in: ce8bfe6c2b user: drh tags: trunk) | |
2018-01-15
| ||
21:59 | Merge the enhancements associated with the first 3.22.0 beta. (check-in: c9d2ec51c8 user: drh tags: apple-osx) | |
19:00 | Fix a problem in the zipfile module causing it to generate incorrect checksums. Remove the ability to insert compressed data into a zip archive. (check-in: b0b7d0363a user: dan tags: trunk) | |
15:49 | Fix a zipfile problem with extracting zero length files compressed using deflate. (check-in: cf64087224 user: dan tags: trunk) | |
14:32 | Fix an error in the setDeviceCharacteristics() procedure for the (unsupported) QNX code in os_unix.c. (check-in: 8151913a39 user: drh tags: trunk) | |
2018-01-14
| ||
20:12 | Avoid excess stack usage when a VALUES clause with lots of rows occurs within a scalar expression. This fixes a problem discovered by OSSFuzz. (check-in: a4fa0581ba user: drh tags: trunk) | |
2018-01-13
| ||
23:28 | Fix harmless compiler warnings in zipfile.c. (check-in: 8f7a592f8c user: drh tags: trunk) | |
19:08 | Support UPDATE statements against zipfile virtual tables. (check-in: f2d2a5df4f user: dan tags: trunk) | |
14:28 | Fully initialize the Mem object for serial-type 10, in case such a serial-type is found in a corrupt database file. (check-in: bd70a07d81 user: drh tags: trunk) | |
14:02 | Fix various problems in test scripts preventing "make test" from passing on F2FS file-systems with the "atomic-write" feature. (check-in: 6bedc7435d user: dan tags: trunk) | |
14:01 | Fix a typo in crash8.test. (Closed-Leaf check-in: c3dc7b8d9d user: dan tags: f2fs-test-fixes) | |
13:07 | Fix various problems in test scripts preventing "make test" from passing on F2FS file-systems with the "atomic-write" feature. (check-in: 56d93d070d user: dan tags: f2fs-test-fixes) | |
02:07 | Updates and minor typo fix for the README. (check-in: bb196fcb67 user: mistachkin tags: trunk) | |
01:53 | Add the new "nochange" APIs to the extension loading mechanism. (check-in: cd7c42699e user: drh tags: trunk) | |
2018-01-12
| ||
23:38 | Add the sqlite3_value_nochange() API, usable from within the xUpdate method of a virtual table to discover whether or not a column was unchanged at the SQL level. (check-in: dec3ea4e4e user: drh tags: trunk) | |
23:18 | Improved comments. Slightly tighter implementation, but no big changes. (Closed-Leaf check-in: a1b3f28569 user: drh tags: sqlite3_value_nochange) | |
21:00 | Add the experimental sqlite3_value_nochange() interface usable by xUpdate methods of virtual tables to see if a column has actually changed values. (check-in: 8b7be15ece user: drh tags: sqlite3_value_nochange) | |
19:33 | Simplification to the implementation of OP_Insert. (check-in: 6acbdba59e user: drh tags: trunk) | |
19:20 | Fix error handling in sqlite3session_diff() when it is invoked for table "sqlite_stat1". (check-in: 874285e477 user: dan tags: trunk) | |
18:46 | Avoid an unnecessary branch when not using pre-update hooks. (check-in: ec96707eb3 user: drh tags: trunk) | |
18:03 | Fix obsolete comments. No changes to code. (check-in: ec39c99bea user: drh tags: trunk) | |
17:25 | Include changes made to the sqlite_stat1 table in changesets generated by the sessions module. sqlite_stat1 entries in such changesets are ignored by legacy clients. (check-in: 2064233533 user: dan tags: trunk) | |
16:44 | Experimental change to include changes made to the sqlite_stat1 table in changesets generated by the sessions module. sqlite_stat1 entries in such changesets are ignored by legacy clients. (Closed-Leaf check-in: bd46c44296 user: dan tags: sessions-stat1) | |
14:34 | Always use utimes() instead of utimensat() since the latter is not available even on some recent unix systems. (check-in: 30ed7a4b64 user: drh tags: trunk) | |
12:02 | Add a test to ensure that the sqlite3changeset_apply() function ignores tables that do not have the expected primary keys. (check-in: bf2daf0627 user: dan tags: trunk) | |
00:30 | Enable the one-pass optimization for DELETE and UPDATE on RTree. This is parked in a branch because is seems to make no measureable performance difference. (Leaf check-in: 8b8314cb9b user: drh tags: rtree-one-pass) | |
2018-01-11
| ||
18:15 | Add the sqlite3_vtab_nochange() interface. Test cases are in TH3. (check-in: a5d09dfaa3 user: drh tags: trunk) | |
17:33 | Change zipfile to be a WITHOUT ROWID virtual table and table-valued function. (check-in: 931201f64e user: dan tags: trunk) | |
17:04 | Add the sqlite3_vtab_nochange() method which virtual table implementations can use to optimize UPDATEs. (Closed-Leaf check-in: d444b1ff39 user: drh tags: sqlite3_vtab_nochange) | |
16:16 | Add test cases for running multiple RBU operations within the same process concurrently. (check-in: 407b5ed35c user: dan tags: trunk) | |
14:50 | Minor formatting changes in zipfile.c. No logical code differences. (check-in: 4f68bed3b9 user: drh tags: trunk) | |
13:43 | Fix typo in comment. No code changes. (check-in: 2c55571baa user: drh tags: trunk) | |
00:38 | Update the .help screen in the CLI. Make sure the temporary files for ".open" are not deleted too soon. (check-in: b8d92d8dc2 user: drh tags: trunk) | |
00:04 | Add the built-in edit(VALUE) and edit(VALUE,EDITOR) function to the CLI. (check-in: ef823c47a0 user: drh tags: trunk) | |
2018-01-10
| ||
23:29 | Add the ".once -e" and ".once -x" commands to the CLI, and the ".excel" command that is an alias for ".once -x". (check-in: a6ed5ab9bc user: drh tags: trunk) | |
23:27 | Update test cases for the new "usage" for .output. (Closed-Leaf check-in: fbf5e43c07 user: drh tags: excel-shell-cmd) | |
22:27 | Save and restore the output mode when doing ".once -x" or ".excel". (check-in: f697c16451 user: drh tags: excel-shell-cmd) | |
22:15 | An attempt to get ".once -e" working reliably on Windows. (check-in: 9b97f9d2c8 user: drh tags: excel-shell-cmd) | |
21:50 | Fix a potential SQLITE_MISUSE in the .excel command when no database is open. (check-in: 9b95ff1abf user: drh tags: excel-shell-cmd) | |
21:41 | Add support for the ".excel" command (and ".once -e" and ".once -x") in the CLI. (check-in: 23fa7c57c2 user: drh tags: excel-shell-cmd) | |
19:50 | Fix a harmless compiler warning in zipfile.c (check-in: 60c694c1ab user: drh tags: trunk) | |
19:15 | Include RTREE in the default CLI build. (check-in: 6a6a3d4956 user: drh tags: trunk) | |
18:09 | Modify the new "--append" option to the .archive so that it takes a filename argument, the same as "--file". (check-in: 58e3b07cc8 user: drh tags: trunk) | |
17:44 | Add the lsmode(MODE) function in the fileio.c extension and use that function in the .archive implementation. Add the --append and --dryrun options to the .archive command and remove the --zip option, making it automatic. (check-in: 38f28029d1 user: drh tags: trunk) | |
17:39 | Fix minor problems with the new ".archive" command changes. (Closed-Leaf check-in: 612b30c95f user: drh tags: archive-improvements) | |
17:37 | Return an SQLITE_CONSTRAINT error if an attempt is made to insert duplicate entries into a zip archive. (check-in: 1f099b2b45 user: dan tags: trunk) | |
17:19 | In the fileio.c extension, change the filetype(MODE) function into lsmode(MODE). Use the new lsmode(MODE) function in shell.c. (check-in: 52d12ba9f3 user: drh tags: archive-improvements) | |
16:50 | Implement the ".ar --create" command using a single "REPLACE INTO sqlar SELECT ... FROM fsdir();" statement. Add the shell_putsnl() SQL function for providing --verbose output. (check-in: 28ab930436 user: drh tags: archive-improvements) | |
16:30 | Have the zipfile module automatically append "/" to directory names that do not already end with such a character. This is required for info-zip compatibility. (check-in: 94bc3c60e7 user: dan tags: trunk) | |
15:53 | Add the "filetype()" SQL function for interpreting file modes to the fileio.c extension. (check-in: 58c0c74c40 user: drh tags: archive-improvements) | |
15:17 | The ".ar" command deduces whether or not the target file is a ZIP or SQLAR and does the appropropriate thing. The "-z" option is omitted. The "--append" option is added to open auxiliary databases using apndvfs. (check-in: 430d1a7daa user: drh tags: archive-improvements) | |
14:00 | Allow the use of ".ar -t" without specifying an archive file or the "-z" option when the command-line shell is opened on a ZIP archive. (check-in: 9340a2c145 user: drh tags: archive-improvements) | |
13:58 | Tag an unreachable branch using ALWAYS(). (check-in: c42c734f11 user: drh tags: trunk) | |
13:44 | Checked into the wrong branch. (Closed-Leaf check-in: 55116dc30f user: drh tags: mistake) | |
13:11 | Work on the ".archive" command. (1) Add the --dryrun option. (2) Do not require --file when open on a ZIP archive. (3) Miscellaneous code simplifications. This is an incremental check-in of work in progress. (check-in: a2baada429 user: drh tags: archive-improvements) | |
11:56 | Fix a problem in os_unix.c causing it to return SQLITE_CANTOPEN instead of SQLITE_READONLY_RECOVERY. (check-in: 6a16f554f0 user: dan tags: trunk) | |
00:53 | Rearrange some routines in shell.c to avoid the need to forward reference a static function. (check-in: fd7f51a107 user: drh tags: trunk) | |
00:40 | Compute the correct column name even if the column identifier is the very last token in the SQL statement. This fixes a problem introduced by check-in [0fdf97efe5df745510c6b] and reported by the community during beta-testing. (check-in: 36b89d728f user: drh tags: trunk) | |
2018-01-09
| ||
22:23 | When disconnecting from the 'swarmvtab' extension, close each database prior to invoking the 'openclose' function on it. (check-in: 3e5647cb6c user: mistachkin tags: trunk) | |
20:49 | Fix harmless compiler warnings. (check-in: 0fb42090cb user: mistachkin tags: trunk) | |
20:44 | Return SQLITE_CONSTRAINT if a user attempts to update a zipfile table. (check-in: 64c9ccf6c5 user: dan tags: trunk) | |
20:34 | In the os_unix.c implementation of xOpen(), do not return SQLITE_READONLY_DIRECTORY in cases where the file cannot be opened for reasons other than a readonly directory, such as the process running out of file descriptors. (check-in: fa8b80bb96 user: dan tags: trunk) | |
18:31 | Fix a potential crash in sqlite3expert.c caused by a missing sqlite3_reset() call. (check-in: f6355970f0 user: dan tags: trunk) | |
15:57 | Fix another -fsanitize issue in new shell code. (check-in: 6ee7b54c58 user: dan tags: trunk) | |
15:28 | Updates to the README.md file for the ext/misc directory. No code changes. (check-in: 6b3f4349d7 user: drh tags: trunk) | |
15:25 | Fix the shell so that it can be built with SQLITE_OMIT_VIRTUALTABLE. (check-in: 931421a225 user: dan tags: trunk) | |
14:30 | Do not attempt to build the code in ext/expert/sqlite3expert.c if SQLITE_OMIT_VIRTUALTABLE is defined. (check-in: ba967ad2e3 user: dan tags: trunk) | |
14:27 | Attempt to fix the fileio.c extension so that it builds on MinGW-64. (check-in: a7446d3217 user: drh tags: trunk) | |
10:29 | Fix a zipfile problem with adding new directories to an archive. (check-in: 5fed67033c user: dan tags: trunk) | |
07:16 | Fix a problem in zipfile.c found by -fsanitize. (check-in: 4fe697fa6c user: dan tags: trunk) | |
02:27 | Avoid a compiler warning when building with newer versions of MinGW (check-in: cba0206a15 user: drh tags: trunk) | |
00:28 | Improve portability of compile-time MinGW detection for the command line shell. (check-in: 4a7236140c user: mistachkin tags: trunk) | |
00:26 | Fix harmless compiler warnings. (check-in: 1adf4e6039 user: mistachkin tags: trunk) | |
2018-01-08
| ||
20:04 | Test cases for sqlite3_normalize(). (Closed-Leaf check-in: 658f42257d user: drh tags: normalize) | |
19:59 | Update the zipfile module so that it matches the documentation. (check-in: 7e7e472fa9 user: dan tags: trunk) | |
19:29 | Special handling of the NULL keyword. Sometimes it is a literal, and sometimes it is a keyword. (check-in: db5d138e97 user: drh tags: normalize) | |
19:18 | Add IN-operator normalizating and the SQLITE_NORMALIZE_CLI compile-time option for generating a stand-alone program. (check-in: d77dbb398a user: drh tags: normalize) | |
17:34 | Fix problems in the sqlite3expert.c code revealed by -fsanitize. (check-in: 7a93dd784b user: dan tags: trunk) | |
17:12 | Add an "ifcapable trace {}" block to a test in fkey1.test that uses SQL tracing. (check-in: 7182591d35 user: dan tags: trunk) | |
17:09 | Remove a superfluous define from the 'fileio' extension when compiled for Win32. (check-in: 6dcba6693f user: mistachkin tags: trunk) | |
17:05 | Fix a malloc/sqlite3_free mismatch in the shell tool code. (check-in: fe053b2ecd user: dan tags: trunk) | |
16:54 | First code for an auxiliary function that will normalize an SQL statement. (check-in: 84814aac81 user: drh tags: normalize) | |
14:24 | Fix compilation of 'sqltclsh.exe' for MSVC. (check-in: abb112d9e1 user: mistachkin tags: trunk) | |
2018-01-07
| ||
23:28 | Avoid the use of utimensat() on older unix platforms. (check-in: 90cb01d8d6 user: drh tags: trunk) | |
21:58 | Remove the dependency on test_windirent.h from the generated shell.c file. (check-in: 0a50c9e3bb user: drh tags: trunk) | |
20:38 | Modify the sqltclsh startup script to look for a properly formatted SQLAR at the end of the executable. Fix the CLI so that it automatically links against appendvfs and so that the --append command-line option works. (check-in: 67c4a8c688 user: drh tags: trunk) | |
19:52 | Improved comments on the sqlar.c and compress.c extensions that describe the differences between the "zlib format" used by SQLAR, the raw deflate format used by ZIP, and the custom format used by compress.c. No changes to code. (check-in: c13415c5ca user: drh tags: trunk) | |
2018-01-06
| ||
21:46 | The shell detects and opens ZIP archives using the zipfile extension. (check-in: 05c99eb8ce user: drh tags: trunk) | |
19:19 | In the shell, include the ".archive" command only if compiling with SQLITE_HAVE_ZLIB. Add ".archive" to the ".help" output. (check-in: 366469f560 user: drh tags: trunk) | |
15:49 | Better whitespace in the "CREATE TABLE sqlar()" statement for the ".ar" command. (check-in: 252ee55a7f user: drh tags: trunk) | |
15:46 | Improved output from ".schema --indent" when a column definition is followed by a comment. (check-in: 87da7efff0 user: drh tags: trunk) | |
14:44 | Remove a trailing tab from the Makefile for MSVC. (check-in: 00cc26e34d user: mistachkin tags: trunk) | |
14:43 | Minor tweaks to the Makefile for MSVC. (check-in: 2f6cc5d8a0 user: mistachkin tags: trunk) | |
13:42 | Add the appendvfs extension and code for the sqltclsh.exe executable. (check-in: b0a43e325c user: drh tags: trunk) | |
2018-01-05
| ||
21:01 | Make sure i64 and u64 typedefs are available throughout shell.c. (check-in: 656fb5aab3 user: drh tags: trunk) | |
20:30 | Fix the shell.c.in amalgamator script so that it avoids generating redundant typedef statements. (check-in: 6c53c740cb user: drh tags: trunk) | |
20:26 | MinGW does not define the S_ISLNK macro; therefore, define it in the shell when needed. (check-in: 73023febbe user: mistachkin tags: trunk) | |
20:13 | Skip running the 'zipfile' test if the necessary static package cannot be loaded. (check-in: 5bc816ec40 user: mistachkin tags: trunk) | |
20:08 | Fix shell compilation with MinGW by including the 'dirent.h' header. (check-in: dfe510b510 user: mistachkin tags: trunk) | |
19:49 | Fix the autoconf makefile so that it builds testfixture correctly. (check-in: fbfe04c0b4 user: drh tags: trunk) | |
19:28 | Sync up the autoconf Makefile for MSVC. (check-in: da8712bdb8 user: mistachkin tags: trunk) | |
19:27 | The 'releasetest' tool should pass the TCLDIR macro for MSVC to nmake. (check-in: eaa9c0dda7 user: mistachkin tags: trunk) | |
19:25 | For the MSVC Makefile, the 'sqlite3_checker.exe' target requires the Tcl library. (check-in: 38109a47ff user: mistachkin tags: trunk) | |
19:01 | Add the ".ar" command to the command-line shell. (check-in: 148b8aee78 user: drh tags: trunk) | |
18:51 | Fix a bug introduced by efforts to reduce compiler warnings in check-in [364ac333b030f0] (Closed-Leaf check-in: 1d6cee9ad4 user: drh tags: sqlar-shell-support) | |
17:40 | In the Makefile for MSVC, the default target should not include binaries that link against the Tcl library. (check-in: 5c6d0a1d58 user: mistachkin tags: sqlar-shell-support) | |
17:12 | More adjustments to MSVC Makefile dependencies for zlib. (check-in: bb650e5d14 user: mistachkin tags: sqlar-shell-support) | |
17:10 | Fix compiler warnings. (check-in: 19aabccfe3 user: mistachkin tags: sqlar-shell-support) | |
16:23 | Fix missing dependencies for shell.c in all makefiles. (check-in: 45495d3e25 user: drh tags: sqlar-shell-support) | |
16:05 | In the Makefile for MSVC, only attempt to link against Tcl when it is needed. Also, only compile 'zipfile.c' when use of zlib is enabled. (check-in: a33ad33cf0 user: mistachkin tags: sqlar-shell-support) | |
16:03 | Add some missing #ifdefs for building without zlib. (check-in: c63fb1700c user: mistachkin tags: sqlar-shell-support) | |
14:55 | Fix compiler warnings. (check-in: 364ac333b0 user: drh tags: sqlar-shell-support) | |
11:34 | Fix an LSM problem causing the wrong amount of "auto-work" to be performed under fairly obscure circumstances. (check-in: a4876672ed user: dan tags: trunk) | |
07:57 | Fix an LSM crash that could occur if LSM_CONFIG_AUTOFLUSH was set to 0. (check-in: 05346f83d5 user: dan tags: trunk) | |
01:22 | Revise detection of 'tclsh.exe' in the Makefile for MSVC. (check-in: 45fabd868d user: mistachkin tags: sqlar-shell-support) | |
01:00 | Enhance the 'zlib' build target for MSVC. (check-in: 0bc3b76ec9 user: mistachkin tags: sqlar-shell-support) | |
00:53 | Add missing #ifdef. (check-in: a0e18aea09 user: mistachkin tags: sqlar-shell-support) | |
2018-01-04
| ||
23:49 | In the 'fileio' extension code for Win32, use the FILE_FLAG_BACKUP_SEMANTICS flag when setting the file times, just in case the file is actually a directory. (check-in: 4f34440600 user: mistachkin tags: sqlar-shell-support) | |
22:50 | Remove 'timespec' related code from the shell that has no effect and a (now) superfluous 'timespec' typedef from the Win32 dirent header file. (check-in: 57dac995dd user: mistachkin tags: sqlar-shell-support) | |
22:46 | Get the shell enhancements compiling with MSVC. (check-in: 335387f9e0 user: mistachkin tags: sqlar-shell-support) | |
19:54 | Merge in all recent trunk enhancements. (check-in: 406f791837 user: drh tags: sqlar-shell-support) | |
19:20 | Remove the snarky "_supported_" qualifier from the name of the sqlite_offset() SQL function. (check-in: a6eee0fcd8 user: drh tags: trunk) | |
16:40 | Fix a broken documentation hyperlink. No code changes. (check-in: d91e3f3d34 user: drh tags: trunk) | |
2018-01-03
| ||
23:54 | Fix compiler warnings on Windows. (check-in: 512b8e40c4 user: drh tags: memdb) | |
23:40 | New test cases and fixes for minor problems. (check-in: e0da2cc382 user: drh tags: memdb) | |
22:48 | Miscellaneous code and comment cleanup. (check-in: fa6069fb3b user: drh tags: memdb) | |
19:03 | Replace sqlite3_memdb_config() with sqlite3_deserialize(). Remove the "db memdb" command from the TCL interface, replacing it with "db serialize" and "db deserialize". (check-in: 2f6e9df9f0 user: drh tags: memdb) | |
16:49 | Replace the sqlite3_memdb_ptr() interface with the more general sqlite3_serialize() interface. (check-in: 8cf2ed4eff user: drh tags: memdb) | |
13:20 | Simplify the "sqlite3" command in the TCL interface. The filename is now optional. There is a new --memdb option with an argument that is the blob to which the database content should be initialized. (check-in: 47398ae772 user: drh tags: memdb) | |
12:39 | Fix typo in the Makefile for MSVC. (check-in: e5c6ade8ee user: mistachkin tags: memdb) | |
01:47 | Add another test case (found by OSSFuzz) for the problem fixed in check-in [2846458a] and described by ticket [dc3f932f5a147771]. No changes to code. (check-in: 4165fae920 user: drh tags: trunk) | |
01:28 | Add support for the "memdb" VFS and the sqlite3_memdb_ptr() and sqlite3_memdb_config() interfaces, to enable an SQLite database to be manipulated as an in-memory object. (check-in: fb2ac2d2fa user: drh tags: memdb) | |
2018-01-02
| ||
21:29 | Fix code indentation. No logic changes. (check-in: e115f25834 user: drh tags: trunk) | |
18:11 | In the constraint resolution logic, be careful not to cache column values in registers whose initialization might be bypassed by an OP_NoConflict opcode. Fix for ticket [dc3f932f5a147771] reported by OSSFuzz. (check-in: 2846458af5 user: drh tags: trunk) | |
16:02 | Enhance the memvfs extension so that it can be read/write. (check-in: 04c9197d58 user: drh tags: trunk) | |
13:48 | Updates to the sqlite3_file_control() documentation. No changes to code. (check-in: 240e32ab1f user: drh tags: trunk) | |
12:50 | Do not attempt to use pragma_module_list in the command-line shell unless it has been compiled with -DSQLITE_INTROSPECTION_PRAGMAS. (check-in: 39ca5fcd31 user: drh tags: trunk) | |
00:04 | The ".schema" command in the command-line shell now shows the structure of table-valued functions and eponymous virtual tables if they are named on the ".schema" command line. Example: ".schema sql%" shows the structure of the "sqlite_dbstat" and "sqlite_stmt" virtual tables. (check-in: f80f6651df user: drh tags: trunk) | |
2018-01-01
| ||
21:49 | Improved name quoting and escaping in the auxiliary column info section of the ".schema" output for views and virtual tables. (check-in: d64b14e37d user: drh tags: trunk) | |
21:28 | In the output of ".schema", show the column names of virtual tables and views in a separate comment. (check-in: 2234a87fa9 user: drh tags: trunk) | |
20:11 | Minor simplification to the ".schema" logic in the command-line shell. (check-in: add45c4728 user: drh tags: trunk) | |
19:33 | Enable the introspection pragmas for command-line shell builds. (check-in: 0b04223f25 user: drh tags: trunk) | |
16:59 | Experiments with the regexp.c extension, trying to get it to report the exact substring that matches the RE. (Leaf check-in: 3d6fba623a user: drh tags: regexp-span) | |
2017-12-29
| ||
17:21 | Add support for the sqlite_unsupported_offset() SQL function if and only if compiled using -DSQLITE_ENABLE_OFFSET_SQL_FUNC. Use that definition when compiling the command-line shell. (check-in: 4f1f1f521a user: drh tags: trunk) | |
16:37 | Stricter test cases. (Closed-Leaf check-in: 9406c0a685 user: drh tags: location-function) | |
15:19 | Fix a typo in the MSVC makefile. (check-in: 89e5720a8d user: drh tags: location-function) | |
15:04 | Change the function name to sqlite_unsupported_offset(X). Only enable the function if compiled with -DSQLITE_ENABLE_OFFSET_SQL_FUNC. The makefiles add that definition to shell builds. (check-in: 7a7f826e32 user: drh tags: location-function) | |