SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

100 descendants and 100 ancestors of 0593aac88a8c25ddafba4c29a181ee083dfc3dab44335feb6f12fdea6ce7fb27

2018-09-17
08:27
Add extra test for the fix on this branch. Also fix a pointer-compare-after-free problem that occurs in similar cases. (check-in: 1856ea63 user: dan tags: tkt-b41031ea)
00:15
Add assert()s to the new code in the previous check-in. (check-in: b12f23a5 user: drh tags: tkt-b41031ea)
2018-09-16
23:27
First proposed fix for the ALTER TABLE problem described by ticket [b41031ea2b5372378cb3d2d] (check-in: 05a9d129 user: drh tags: tkt-b41031ea)
18:23
Remove an unreachable branch from the index-on-expression optimization. (check-in: 2df2cf4f user: drh tags: trunk)
16:34
Fix a memory leak in the explain extension. (check-in: d0c92b04 user: drh tags: trunk)
16:18
Add the new "explain" virtual table in ext/misc. Use this virtual table for additional test cases for the optimization that avoids updating indexes on expressions when none of the columns changed by the UPDATE are in the expression. (check-in: 2404304c user: drh tags: trunk)
15:01
Improved presentation on the new code that prevents unnecessary writes to expressions on indexes during an UPDATE when the expression does not reference any of the columns that are changing. (check-in: c9f04529 user: drh tags: trunk)
2018-09-15
21:43
Increase the version number to 3.26.0 as we start the next development cycle. (check-in: 885f0f82 user: drh tags: trunk)
21:38
Optimization: when doing an UPDATE on a table with indexes on an expression, do not update the expression indexes if they do not refer to any of the columns of the table being updated. (check-in: a71b1016 user: drh tags: trunk)
04:01
Version 3.25.0 (check-in: b63af6c3 user: drh tags: trunk, release, version-3.25.0)
2018-09-14
17:42
Fix minor typos in comments that get carried over into documentation. No changes to code. (check-in: 7921dd91 user: drh tags: trunk)
2018-09-13
17:11
Update releasetest.tcl to run "make test" as part of the "Fast-One" configuration. (check-in: d5ebfe1c user: dan tags: trunk)
17:07
Make sure the %z optimization for printf() is not invoked if there has been a prior error (SQLITE_NOMEM or SQLITE_TOOBIG) associated with the same printf() call. (check-in: a2304a34 user: drh tags: trunk)
13:17
Fix a requirement mark on a test script. No changes to code. (check-in: 628d5c0a user: drh tags: trunk)
2018-09-12
20:32
Fix an assert() in os_unix.c that is not true when using RBU. (check-in: 028ed861 user: dan tags: trunk)
15:51
Restrict the scope of internal-use functions in alter.c. (check-in: 4396914f user: drh tags: trunk)
14:28
Improvements to the documentation for SQLITE_FCNTL_DATA_VERSION. No changes to code. (check-in: 27837624 user: drh tags: trunk)
08:51
Fix an invalid pointer comparison triggered by renaming a table column when there are views with explicit column names in the schema. (check-in: 572de7e4 user: dan tags: trunk)
01:05
Fix some harmless compiler warnings seen with MSVC. (check-in: 78862252 user: mistachkin tags: trunk)
00:48
For MSVC, migrate some commonly used shell compilation options to the library. (check-in: 68a71e5f user: mistachkin tags: trunk)
00:21
Fix a harmless compiler warning that arose from the ENABLE_CURSOR_HINTS fix of check-in [0af18674ca5b34e67e] (check-in: f578e62a user: drh tags: trunk)
2018-09-11
19:05
Do not do the byte-by-byte modifications in the resetdb.test script if the reserved-byte flag in the DB header is non-zero, because in that case the bytes will be in the wrong place and the test won't work. (check-in: 0af18674 user: drh tags: trunk)
13:38
Fix a problem causing ENABLE_CURSOR_HINTS builds to segfault. (check-in: e7033104 user: dan tags: trunk)
2018-09-10
19:34
Fix a test script issue in fts3ao.test. (check-in: 74c381b5 user: dan tags: trunk)
19:27
Fix a minor problem causing an incorrect cursor-hint to be generated in some cases. (check-in: d879c47d user: dan tags: trunk)
17:21
Add the ability for loadable extensions to access the new sqlite3_create_window_function() interface. (check-in: 3def6d8e user: drh tags: trunk)
16:38
Fix a broken assert() in fts3.c. (check-in: 564fa751 user: dan tags: trunk)
14:43
New testcase() macros on virtual table xBestIndex logic. (check-in: 3bbd9c5f user: drh tags: trunk)
12:40
Fix the LIKE optimization so that it is disabled when the LHS of the expression does not have TEXT affinity and the RHS is the pattern '/%' or the RHS begins with the escape character. Fix for ticket [c94369cae9b561b1f996d0054b]. (check-in: f191431d user: drh tags: trunk)
12:17
Fix a problem with processing a "vtab.col IS NULL" expression within the WHERE clause of a query when "vtab" is a virtual table on the rhs of a LEFT JOIN. (check-in: 83da4d41 user: dan tags: trunk)
2018-09-08
20:29
Fix an unreachable branch in the new sqlite3WhereOrderByLimitOptLabel() function of the query planner. (check-in: 5a954533 user: drh tags: trunk)
20:09
Fix multiple issues with the ORDER BY LIMIT optimization. This is the proposed resolution to ticket [9936b2fa443fec03ff25]. (check-in: 20672012 user: drh tags: trunk)
16:55
Add a missing call to free() in Lemon. (check-in: 8b4cf33a user: mistachkin tags: trunk)
16:53
Fix typo in the Win32-specific code for the fileio extension. (check-in: e812e5d5 user: mistachkin tags: trunk)
2018-09-07
19:12
Remove a faulty ALWAYS() macro added by check-in [8fa254aa6329bdd0]. (check-in: fc47316e user: drh tags: trunk)
18:56
Add extra test case to altertab.test. (check-in: 64c3ee3c user: dan tags: trunk)
18:52
Add assert() and ALWAYS() to identify two unreachable branches. (check-in: 8fa254aa user: drh tags: trunk)
15:50
Fix a problem with renaming a non-temp table that has at least one temp trigger and shares its name with a temp table. (check-in: ceb60bd7 user: dan tags: trunk)
11:51
Minor fixes for problems revealed by releasetest.tcl. (check-in: 1a8aedc3 user: dan tags: trunk)
11:08
Fix an uninitialized variable in the OP_ParseSchema opcode that comes up only if the schema is corrupt. (check-in: 725808d4 user: drh tags: trunk)
2018-09-06
20:33
In all.test, do not attempt to run the RBU tests in non-RBU builds. (check-in: 10c3e5a0 user: dan tags: trunk)
19:36
Fix a harmless compiler warning in os_unix.c. (check-in: b9d1fb5d user: drh tags: trunk)
18:56
Fix a problem with ALTER TABLE when there are views or triggers in the schema that contain "<expr> IS NULL" expressions. (check-in: 91aab32e user: dan tags: trunk)
17:47
Fix a problem in ALTER TABLE with SQLITE_OMIT_VIRTUALTABLE builds. (check-in: fa835145 user: dan tags: trunk)
17:23
Fix test script problems causing SQLITE_OMIT_VIRTUALTABLE builds to fail. (check-in: 37ad064e user: dan tags: trunk)
16:50
Merge accidental fork. (check-in: ebadb7dc user: mistachkin tags: trunk)
16:47
Fix harmless compiler warning. (check-in: 88b39c46 user: mistachkin tags: trunk)
16:47
Fix a problem causing SQLITE_OMIT_VIRTUALTABLE builds to fail. (check-in: 18beabc8 user: dan tags: trunk)
16:24
Add new test file "alterauth.test". (check-in: 00940265 user: dan tags: trunk)
16:20
Add an "ALTER TABLE RENAME COLUMN" command. Upgrade "ALTER TABLE RENAME TABLE" so that it modifies references to the renamed table embedded in SQL view and trigger definitions. (check-in: 4da59983 user: dan tags: trunk)
16:17
Merge latest trunk changes into this branch. (Closed-Leaf check-in: 8a28a326 user: dan tags: alter-table-rename-column)
16:01
Ensure that the tbl_name column in the sqlite_temp_master table is updated correctly as part of a RENAME TABLE operation. (check-in: ffecfca5 user: dan tags: alter-table-rename-column)
14:01
Add the randomshape.tcl test-case generator script to the util subdirectory of the rtree extension. (check-in: 8f48991d user: drh tags: trunk)
11:14
Fix excess memory usage in the JSON parser of GEOPOLY. (check-in: 9057e27e user: drh tags: trunk)
02:40
Fix a problem with geopoly trying to update both the _shape and an auxiliary column in the same UPDATE statement. (check-in: 14c95515 user: drh tags: trunk)
2018-09-05
17:52
Merge latest trunk changes into this branch. (check-in: 6f4f707f user: dan tags: alter-table-rename-column)
17:45
Fix some test script errors. And an incorrect assert() in fts5. (check-in: f804336f user: dan tags: alter-table-rename-column)
16:16
Remove an old testcase() macro that is no longer valid. (check-in: e6287133 user: drh tags: trunk)
14:36
Avoid comparing pointer values after the object that they point to has been deleted. (check-in: 2ec7e50c user: dan tags: alter-table-rename-column)
08:28
Fix minor code issues in alter.c. (check-in: 18ba35b8 user: dan tags: alter-table-rename-column)
2018-09-04
18:23
Merge latest trunk changes into this branch. (check-in: ef9e0882 user: dan tags: alter-table-rename-column)
2018-09-03
20:05
Improve the error messages emitted by RENAME TABLE. (check-in: 6805b590 user: dan tags: alter-table-rename-column)
17:11
Ensure that FTS5 queries of the form "WHERE rowid BETWEEN ? AND ? AND tbl MATCH ? ORDER BY rank" do rowid filtering before sorting. (check-in: f1138a38 user: dan tags: trunk)
2018-09-01
20:38
Add another test case to altertab.test. (check-in: 828e8849 user: dan tags: alter-table-rename-column)
20:23
Fix a problem with renaming a column in a table that has a temp trigger that references another attached database. (check-in: 336b8a09 user: dan tags: alter-table-rename-column)
20:02
Fixes for harmless compiler warnings. (check-in: 41b8f38b user: drh tags: alter-table-rename-column)
16:55
Fix some harmless compiler warnings and improve defenses against OOM errors. (check-in: 2e2cf992 user: drh tags: alter-table-rename-column)
16:13
Merge alter-table-rename-table back into this branch. (check-in: ad704a7c user: dan tags: alter-table-rename-column)
16:05
Have "ALTER TABLE ADD COLUMN" reload the entire db schema, as "RENAME COLUMN" and "RENAME TABLE" do. (Closed-Leaf check-in: 8d89ddc1 user: dan tags: alter-table-rename-table)
15:55
Merge fixes from the alter-table-rename-column branch that occurred after this branch separated from that one. (check-in: 22e785aa user: drh tags: alter-table-rename-table)
15:49
Merge fixes and enhancements from trunk. (check-in: 589186c0 user: drh tags: alter-table-rename-table)
06:13
Update test script snapshot_fault.test to account for the new sqlite3_snapshot_open() error code. (check-in: c1aca767 user: dan tags: trunk)
2018-08-31
23:22
New hyperlink on the README.md file. (check-in: c663961e user: drh tags: trunk)
19:00
If a call to sqlite3_snapshot_open() fails because the requested snapshot no longer exists, return SQLITE_ERROR_SNAPSHOT instead of SQLITE_BUSY_SNAPSHOT. (check-in: e0792312 user: dan tags: trunk)
2018-08-30
20:28
Try to identify the places in WAL code where thread-safety depends on the underlying architecture supporting atomic load and store of aligned 32-bit values. (check-in: 47d44be4 user: drh tags: trunk)
18:53
Give the debugging routine print_pager_stats() external linkage in order to suppress harmless compiler and TSAN warnings. (check-in: ff4dc082 user: drh tags: trunk)
01:52
Improved JSON parser caching. (check-in: 58078c0d user: drh tags: trunk)
2018-08-29
21:01
Additional test cases for geopoly. (check-in: 19b5eb45 user: drh tags: trunk)
20:52
Fixes to the UPDATE logic in Geopoly. (check-in: 7c3cee0a user: drh tags: trunk)
20:24
Also free up the MEM_RowSet bit in the Mem.flags field and have RowSet objects be destroyed using Mem.xDel. This change results in faster code. (check-in: f48e9feb user: drh tags: trunk)
18:47
Free up the MEM_Frame bit in Mem.flags object. Store VdbeFrame objects as MEM_Blob with a special Mem.xDel pointer instead. (check-in: 62db5fd4 user: drh tags: trunk)
15:50
Add the geopoly_group_bbox() aggregate function to the Geopoly module. (check-in: 2d4debcc user: drh tags: trunk)
2018-08-28
21:12
Disable the server1.test script on old PPC Macs due to problems in the pthreads implementation on those archaic machines. (check-in: 43efdd8c user: drh tags: trunk)
19:23
Stricter enforcement of the JSON and GeoJSON standards in the Geopoly extension. (check-in: c0bf3ff3 user: drh tags: trunk)
15:51
Fix new issues in the geopoly module discovered by TH3. (check-in: 22fff9af user: drh tags: trunk)
11:23
Fix a problem causing spurious SQLITE_CORRUPT errors when using the snapshot API to read from old database snapshots. (check-in: 535155be user: dan tags: trunk)
2018-08-27
17:13
Add support for the Geopoly extension to the R-Tree extension. This also involves adding the SQLITE_INDEX_CONSTRAINT_FUNCTION capability to the xFindFunction method of the sqlite3_module object, and to the sqlite3_index_info.aConstraint.op field in the xBestIndex implementation of virtual tables. (check-in: 666133e3 user: drh tags: trunk)
17:05
Minor changes to the visual01.txt test script. (Closed-Leaf check-in: 4bc28eed user: drh tags: rtree-geopoly)
15:55
Split the three-argument version of geopoly_within() off into a separate function named geopoly_contains_point(). (check-in: 5a0e1541 user: drh tags: rtree-geopoly)
2018-08-25
23:03
Enhance the geopoly virtual table so that it does a better job of optimizing geopoly_within() queries. (check-in: 1f717385 user: drh tags: rtree-geopoly)
19:51
Provide the two-argument geopoly_within(P1,P2) routine that determines if polygon P2 is contained within polygon P1. Make this function available to the query planner for optimized rtree lookups. Update the visual01.txt script to verify that the new functionality actually works. (check-in: 6eb5d09b user: drh tags: rtree-geopoly)
18:57
Fix a harmless compiler warning. (check-in: d49be983 user: drh tags: rtree-geopoly)
2018-08-23
14:54
Merge enhancements from trunk. (check-in: c446c884 user: drh tags: rtree-geopoly)
2018-05-29
17:17
Fix a problem in the geopoly json parser associated with spaces before a coordinate number. (check-in: 9d8d3af8 user: drh tags: rtree-geopoly)
2018-05-28
23:59
The geopoly virtual table seems to be working. But only thinly tested so far. (check-in: 4288f1ad user: drh tags: rtree-geopoly)
13:23
Untested incremental check-in. Add the geopoly_xform() function. Complete basic logic for the geopoly virtual table. (check-in: ed06cc32 user: drh tags: rtree-geopoly)
2018-05-26
20:04
Merge the ability to plan virtual table queries using overloaded functions. (check-in: 2c2a202c user: drh tags: rtree-geopoly)
12:21
Minor correction. (check-in: f20d9a99 user: drh tags: rtree-geopoly)
2018-05-25
22:39
Untested incremental check-in. Basic infrastructure for geopoly in place, except for the MATCH operator. (check-in: b2745191 user: drh tags: rtree-geopoly)
20:53
Incremental check-in: Progress toward implementing the geopoly vtab. (check-in: 9b7d6f98 user: drh tags: rtree-geopoly)
19:22
Forward port the geopoly extension functions into the r-tree extension, with the idea of creating a new spatial index based on simply polygons. (check-in: 0593aac8 user: drh tags: rtree-geopoly)
2018-05-24
23:51
When doing a one-pass UPDATE or DELETE on virtual tables, close the cursor prior to running VUpdate. This allows one-pass to work on virtual tables that do not allow concurrent reads and writes. Enhance rtree to take advantage of this new capability. (check-in: b816023c user: drh tags: trunk)
22:42
New test case for reading and writing the same rtree concurrently. (check-in: 3ba08e53 user: drh tags: trunk)
22:31
Do not allow RTree writes when a read cursor is active on the same virtual table, as the writes might rebalance and disrupt the read cursors. Return the new SQLITE_LOCKED_VTAB error code if this happens. (check-in: d4ce6661 user: drh tags: trunk)
17:38
In the OOM testing logic, add the sqlite3FirstFault() routine as a place to set a breakpoint the first time any simulated OOM fault occurs for a single test case. (check-in: b4d80bd2 user: drh tags: trunk)
17:25
Fix a typo in a comment used to generate VDBE opcode documentation. No code changes. (check-in: 36cdfbf2 user: drh tags: trunk)
16:18
Addition cases for rtree preformance testing in speedtest1.c. Add the --nodiff option to the speed-check.sh script. (check-in: 95f2d62c user: drh tags: trunk)
13:59
Updates to the sqlite3_vtab_nochange() documentation. No changes to code. (check-in: 5bd99abc user: drh tags: trunk)
2018-05-23
17:53
Remove a branch that is no longer used due to the fix to the sqlite_sequence schema problem, ticket [d8dc2b3a58cd5dc2918a1d4acbba4676a23ada4c] (check-in: 06674269 user: drh tags: trunk)
16:50
Verify that the sqlite_sequence table exists and is in approximately the correct format prior to using it to process an autoincrement table. Fix for ticket [d8dc2b3a58cd5dc2918a1d4a]. (check-in: e199e859 user: drh tags: trunk)
2018-05-18
17:58
Add support for auxiliary columns to the rtree extension. (check-in: c6071ac9 user: drh tags: trunk)
17:17
Merge enhancements from trunk, especially the CLI fixes. (Closed-Leaf check-in: a350040a user: drh tags: aux-data-in-rtree)
17:11
In the CLI, detect and report errors on sqlite3_close(). Clear global variables prior to exit to so that valgrind can better detect resource leaks. (check-in: e3b2e0a0 user: drh tags: trunk)
16:53
Avoid unnecessary sqlite3_finalize() operations. (check-in: 16f71032 user: drh tags: aux-data-in-rtree)
16:46
Fix a prepare-statement leak. (check-in: 95fd296f user: drh tags: aux-data-in-rtree)
15:21
Improved error messages. Limit the number of auxiliary columns to 100. (check-in: 059d20ab user: drh tags: aux-data-in-rtree)
14:24
Improvements to integer/float comparisons on architectures that lack a "long double" type. (check-in: 5139ea62 user: drh tags: trunk)
14:19
Remove incorrect NEVER() macro added by the previous check-in. (Closed-Leaf check-in: 3d662511 user: drh tags: int-float-compare)
13:39
Improvements to the sqlite3IntFloatCompare() routine for systems that lack the long double type. (check-in: ea6a03a8 user: drh tags: int-float-compare)
2018-05-17
20:04
In the CLI with the -A command, if the file does not previously exist and its name looks like a ZIP archive name, then create it as a ZIP archive. (check-in: 33dc8fad user: drh tags: trunk)
14:09
Improved error and help messages for the ".archive" command and "-A" option to the CLI. If a memory leak in --list processing. (check-in: 02541ac6 user: drh tags: trunk)
13:29
Fix memory errors associated with argv in the CLI when it is compiled on Windows. (check-in: 4474d69b user: drh tags: trunk)
2018-05-16
19:56
Fix an issue with rtreecheck() and auxiliary data columns. (check-in: 46715136 user: drh tags: aux-data-in-rtree)
19:07
Do not allow auxiliary columns in the rtree to interfere with query planning. Begin adding test cases. (check-in: 9abe023e user: drh tags: aux-data-in-rtree)
18:18
Fix the OOM issue mentioned in the previous check-in. (check-in: c489d8e4 user: drh tags: aux-data-in-rtree)
17:57
Initial implementation of the ability to have auxiliary columns in an rtree virtual table that store arbitrary content. It mostly works, but there are some minor issues in OOM corner cases. (check-in: 0c87fec9 user: drh tags: aux-data-in-rtree)
15:35
Enhance the sqlite3_str_new() interface so that it always returns a valid and non-NULL pointer even in an OOM condition. (check-in: ed5b0968 user: drh tags: trunk)
12:19
Correct output for the fullkey column of json_each() when the total JSON input is a simple value, not an array or object. (check-in: b45b1885 user: drh tags: trunk)
2018-05-15
09:09
Fix a test case problem in wherelimit.test. (check-in: 3012df8b user: dan tags: trunk)
2018-05-14
22:46
Make more aggressive use of automatic indexes when processing materalized views and subqueries. (check-in: 172f5bd2 user: drh tags: trunk)
15:26
Convert the schema creation logic in the rtree extension to use the new sqlite3_str interface. (check-in: fd8b8c41 user: drh tags: trunk)
12:23
Fix typo in the shell.c source file. (check-in: 389dc0a9 user: mistachkin tags: trunk)
00:41
Export the deduceDatabaseType() function the shell.c source file. (check-in: d0f35739 user: drh tags: trunk)
00:23
Add the --append option to the ".backup" command in the CLI. (check-in: 0dfdbdee user: drh tags: trunk)
2018-05-12
23:56
In the CLI, allow comment lines that begin with '#', but only in a context where a dot-command is allowed. In other words, '#' at the beginning of a line in the middle of an SQL statement is just part of the SQL. (check-in: 4ee136d6 user: drh tags: trunk)
2018-05-11
19:11
In the CLI, return non-zero if there are errors on the command-line. (check-in: 13e7300a user: drh tags: trunk)
15:10
Fix a typo in the help message from the ".sha3sum" command in the CLI. (check-in: dba87a20 user: drh tags: trunk)
15:10
Make sure the open_db() routine in the CLI does not invoke access() with a NULL filename. (check-in: 20a8c611 user: drh tags: trunk)
14:02
Fix a typo in the help message from the ".sha3sum" command in the CLI. (check-in: e76f676c user: drh tags: geojson)
14:00
Make sure the open_db() routine in the CLI does not invoke access() with a NULL filename. (check-in: 2b8fd3b4 user: drh tags: geojson)
2018-05-09
16:32
Add a test case to check that the fts5 unicode64 tokenizer is dealing with codepoints greater than 65535 correctly. (check-in: 9f7a6ae8 user: dan tags: trunk)
15:17
Add 14 new interfaces to the loadable extension mechanism. (check-in: 0e809cdc user: drh tags: trunk)
14:29
Fix minor problems with the sqlite3_str interface. (check-in: 43ea8a68 user: drh tags: trunk)
13:46
Make the internal dynamic string interface available to extensions using the new sqlite3_str object and its associated methods. This is mostly just a renaming of internal objects and methods to use external names, through there are a few small wrapper functions. (check-in: 87f261f0 user: drh tags: trunk)
10:11
Fix a typo in a comment used for documentation. No code changes. (check-in: b866693e user: drh tags: trunk)
2018-05-08
23:17
Correctly format the STAT1 and STAT4 content in the output from the ".fullschema" command in the CLI. Fix for ticket [e63a34a0045832dc850367552]. (check-in: 0c3f128f user: drh tags: trunk)
13:03
Fix a harmless compiler warning in fuzzcheck. Add new OSSFuzz test cases to the test case library. (check-in: d2619746 user: drh tags: trunk)
12:49
Fuzz test cases for UPSERT. (check-in: fd11fbd2 user: drh tags: trunk)
2018-05-07
18:41
Activate the cell-overwrite optimization for index b-trees. (check-in: a68697d1 user: drh tags: trunk)
17:27
Improved comments on the cell-overwrite optimization code. (check-in: a4fe966d user: drh tags: trunk)
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: 5887d8be user: drh tags: trunk)
11:37
Fix harmless compiler warnings associated with the new EXPLAIN QUERY PLAN logic. (check-in: 374d8e26 user: drh tags: trunk)
11:29
Fix harmless compiler warnings in the cell-overwrite logic. (Closed-Leaf check-in: 3e11dc31 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: b348d119 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: 5d61e75f user: drh tags: trunk)
01:23
Fix a slightly incorrect corruption detection branch in the btree logic. (check-in: 9191ff67 user: drh tags: trunk)
2018-05-04
19:18
Merge enhancements from trunk. (check-in: 9650f71b user: drh tags: cell-overwrite-prototype)
18:32
Fix requirements marks. No code changes. (check-in: 7fdad122 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: 03edecaf 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: 75ac7b4e 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: c381f0ea user: drh tags: trunk)
22:52
Fix a branch that has become unreachable due to recent enhancements. (check-in: 81ab5e0d 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: 260fc696 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: ff01bbda user: drh tags: trunk)
19:47
Optimizations to the new EQP framework. (Closed-Leaf check-in: 956fef36 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: f89b54f4 user: drh tags: cell-overwrite-prototype)
14:07
The BtCursor.info fields are only valid if info.nSize!=0. (check-in: 54c537ee user: drh tags: cell-overwrite-prototype)
13:56
Add more corruption checking to the cell overwrite logic. (check-in: 58d14afe user: drh tags: cell-overwrite-prototype)
12:57
Bug fixes in the overwrite optimization. (check-in: 0cb6cd2a 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: 489451b3 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: c75eee69 user: drh tags: rework-EQP)
2018-05-02
19:42
More test case updates. Tests are all running now. (check-in: dab5e529 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: 5f0e803e user: drh tags: rework-EQP)
16:13
Improved EQP output for recursive CTEs and multi-value VALUES clauses. (check-in: f2f52554 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: ab0d99d0 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: 82ca44b8 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: 0c671507 user: dan tags: trunk)
03:01
Add sqlite3_win32_set_directory8() and sqlite3_win32_set_directory16() functions. (check-in: 22089ea2 user: mistachkin tags: trunk)
02:22
Improvements to the EQP display for compound select statements. (check-in: 699a77e4 user: drh tags: rework-EQP)
00:33
Begin reengineering the EXPLAIN QUERY PLAN function to provide more intuitive output. (check-in: 70b48a79 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: 853f3163 user: drh tags: trunk)
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: ce4ef460 user: drh tags: faster-order-by-limit)
2018-04-28
19:08
Test cases added for SQLITE_DBCONFIG_RESET_DATABASE. (check-in: 08665a9e 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: 564ae829 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: a200a49e 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: ff836cb8 user: drh tags: reset-database)
11:22
Merge updates from trunk. (check-in: 94877e49 user: drh tags: reset-database)
04:16
Prevent deep recursions on nested COLLATE operators. (check-in: 6e098ee4 user: drh tags: trunk)
04:10
Fix compiler warnings in FTS3. (check-in: de508e83 user: drh tags: trunk)
01:46
Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: 7626b593 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: d11c4197 user: mistachkin tags: win32dir)
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: 02e1a13c user: drh tags: reset-database)
2018-04-27
22:42
Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: cbce7180 user: mistachkin tags: win32dir)
18:05
Update test script fts3expr4.test so that it always creates fts3 tokenizers in the "en_US" locality. (check-in: 576a8f69 user: dan tags: trunk)
16:35
Fix a test script error causing tests to fail in soak.test. (check-in: 462b52b1 user: dan tags: trunk)
15:17
Enhance the comments in the templatevtab.c implementation. (check-in: 05f6278a 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: 9fd0faf5 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: 0fcfc36c 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: 71bf91c2 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: 0a514e62 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: 7bb23c2a user: drh tags: trunk)