SQLite

Timeline
Login

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

595 check-ins using file src/pcache1.c version 69d13762

2018-12-14
20:28
Add a missing OP_ColumnsUsed opcode to code for expressions like "? IN (SELECT ...)" in cases where expression can use an index that may contain NULL values. (Backported fix from version 3.14.0). (Leaf check-in: 11368e67 user: drh tags: branch-3.8.9)
20:20
Add the OP_ColumnsUsed opcode (when compiled with SQLITE_ENABLE_COLUMN_USED_MASK) as a hint to the b-tree layer as to which columns of a btree cursor will be used. (Backport from 3.8.11) (check-in: b29e02f8 user: drh tags: branch-3.8.9)
2017-11-14
18:26
Fix the SQLITE_ENABLE_UPDATE_DELETE_LIMIT functionality so that it works with views and WITHOUT ROWID tables. This is a modified cherrypick of [dae4a97a]. (check-in: b2679d3b user: dan tags: branch-3.8.9)
2017-11-09
04:13
Disallow ORDER BY and LIMIT on UPDATE and DELETE of views and WITHOUT ROWID tables. This is a temporary fix for ticket [d4beea1633f1b88f] until a better solution can be found. (check-in: 30aa941f user: drh tags: branch-3.8.9)
2017-07-27
22:16
Enhance the like optimization so that it works with an ESCAPE clause. (check-in: 2495acf7 user: drh tags: branch-3.8.9)
2017-07-21
04:08
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This is a cherry-pick of [f0f49224] which was in turn inspired by [72de49f2]. (Leaf check-in: 5a3022e0 user: drh tags: branch-3.8.10)
2017-07-17
19:37
Try to push relevant WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. This is a cherry-pick of [6df18e949d36] with bug fixes. (check-in: cd6ac078 user: drh tags: branch-3.8.9)
19:25
When checking for the WHERE-clause push-down optimization, verify that all terms of the compound inner SELECT are non-aggregate, not just the last term. Fix for ticket [f7f8c97e97597]. (Closed-Leaf check-in: adc082c1 user: drh tags: push-down-backport)
19:14
Do not apply the WHERE-clause pushdown optimization to terms that originate in the ON or USING clause of a LEFT JOIN. Fix for ticket [c2a19d81652f40568c]. (check-in: 52674f94 user: drh tags: push-down-backport)
19:07
For FROM-clause subqueries that cannot be flattened, try to push relevant WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. Cherry-pick from [6df18e949d36]. Still need to backport bug fixes associated with that check-in. (check-in: 043d6ce8 user: drh tags: push-down-backport)
2017-07-08
01:01
Fix the covering index OR optimization (check-in [fcbd6abd]) so that it works with SQLITE_MAX_ATTACHED>30. Broken by a bad cherry-pick merge. (check-in: d227de8a user: drh tags: branch-3.8.9)
2017-07-05
16:20
Make use of covering indexes in the OR optimization. (check-in: fcbd6abd user: drh tags: branch-3.8.9)
14:54
Add the count-of-view optimization when compiled using SQLITE_COUNTOFVIEW_OPTIMIZATION. (check-in: b7ae4b87 user: drh tags: branch-3.8.9)
2017-06-06
18:22
Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated number of rows in tables that lack sqlite_stat1 entries. (check-in: 802b82f3 user: drh tags: branch-3.8.9)
2017-05-24
04:32
Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. (check-in: 19dad0a7 user: drh tags: branch-3.8.9)
2017-05-22
00:27
When planning a query using sorting, resolve ties in the solver by selecting loop plans with the smaller unsorted cost. (check-in: 962531e7 user: drh tags: branch-3.8.9)
2017-01-11
14:21
In the STAT4 computations, ensure that the aAvgEq values do not go negative. (check-in: 4f83f680 user: drh tags: branch-3.8.9)
2016-11-02
16:29
When the block sorting optimization is used in a scalar subquery, be sure to exit the loop as soon as the first valid output row is received. Fix for ticket [cb3aa0641d9a4] backported to the 3.8.9 branch. (check-in: 8e4ba115 user: drh tags: branch-3.8.9)
2016-09-23
18:06
Fix the ORDER BY LIMIT optimization backport so that it works when the ORDER BY uses the DESC direction. (check-in: 0c3cafb7 user: drh tags: branch-3.8.9)
2016-09-14
01:43
Backport the ORDER BY LIMIT optimization to version 3.8.9. (check-in: db361482 user: drh tags: branch-3.8.9)
2015-08-11
18:18
Fix the retry mechanism on file locks. (check-in: 600df309 user: drh tags: apple-osx)
2015-06-12
12:54
Add the OP_ColumnsUsed opcode (when compiled with SQLITE_ENABLE_COLUMN_USED_MASK) as a hint to the b-tree layer as to which columns of a btree cursor will be used. (check-in: 711a176c user: drh tags: trunk)
2015-06-11
18:01
Merge recent trunk enhancements and fixes. (check-in: c39cb0e2 user: drh tags: sessions)
17:58
Merge trunk fixes. (Leaf check-in: 1df8cbbe user: drh tags: view-optimization)
17:26
Add the sqlite3changegroup_xxx() APIs to the sessions module. For combining multiple changesets or patchsets. (check-in: 0c1a901c user: dan tags: sessions)
14:19
Remove stray outputs from the test suite. (check-in: afc6db9b user: drh tags: trunk)
13:58
When generating code for partial indexes, be sure not to modify the index condition expression in the schema. (check-in: e63d01c6 user: drh tags: trunk)
2015-06-10
23:02
More test output refinements. (Closed-Leaf check-in: e64a5681 user: mistachkin tags: testerOutput)
22:51
Remove possibly stray output from various tests. (check-in: f38e0be5 user: mistachkin tags: testerOutput)
22:03
Fix minor typo in the quicktest MSVC makefile target. (check-in: 75b65f9d user: mistachkin tags: trunk)
20:00
Merge enhancements from trunk. (check-in: 0e23a079 user: drh tags: view-optimization)
18:53
"test" targets on all makefiles use --verbose=file --output=test-out.txt. Add the new "quicktest" target to all makefiles - designed to run in under three minutes. The --quick option on releasetest.tcl now uses quicktest. (check-in: 6ddef2ad user: drh tags: trunk)
17:20
Resolve FROM-clause subqueries after query planning instead of before. Greatly reduce the estimated cost of automatic indexes for VIEWs and ephemeral tables since performance problems there cannot be mitigated via a CREATE INDEX. (check-in: a1eaf171 user: drh tags: view-optimization)
14:27
Avoid passing constraints that are unusable due to LEFT or CROSS joins to virtual table xBestIndex() methods. (check-in: 7b446771 user: dan tags: trunk)
10:45
Fix the fts5 xRename() method. (check-in: 0f7fd513 user: dan tags: fts5)
2015-06-09
20:58
Add the "columnsize=" option to fts5, similar to fts4's "matchinfo=fts3". (check-in: aa12f9d9 user: dan tags: fts5)
15:58
Add the --output=$file and --verbose=(0|1|file) options to tester.tcl. (check-in: f7b2c703 user: dan tags: trunk)
10:58
Remove some repeated lines of source code. Probably introduced by careless cut'n'pasting. (Closed-Leaf check-in: a34cd71c user: dan tags: vtab-left-join)
2015-06-08
22:59
Code refactoring to try to shift FROM-clause subquery manifesting until after the query planner runs. Except this does not currently work because the query planner needs an estimated of the number of rows in the manifested table. Work in progress. (check-in: cabf2187 user: drh tags: view-optimization)
19:15
Add the valgrindfuzz target to unix makefile. (check-in: e62aed01 user: drh tags: trunk)
18:48
If a query contains "FROM t1 LEFT JOIN t2, t3, t4", ensure that tables t3 and t4 are not scanned before t2. The trunk already does this. (check-in: 0d9edfab user: dan tags: vtab-left-join)
18:05
Avoid passing constraints that are unusable due to LEFT or CROSS joins to virtual table xBestIndex() methods. (check-in: 80ee56dd user: dan tags: vtab-left-join)
17:42
Fix typo in comment. No changes to code. (check-in: e49c2917 user: mistachkin tags: trunk)
17:40
Split out some source code into new files: wherecode.c, whereexpr.c, and treeview.c. Other minor refactoring changes. (check-in: 50f33681 user: drh tags: trunk)
15:08
Factor out the TreeView parse tree printing module into a separate file. (check-in: c32ce54c user: drh tags: view-optimization)
14:23
Split more subfunctions of where.c out into a new whereexpr.c source file, for improved maintainability. (check-in: 46ef95c1 user: drh tags: view-optimization)
2015-06-06
20:12
Split out the bulk of the actual VDBE code generation logic from where.c into a new file, leaving behind the analysis logic. This makes the original where.c smaller and hopefully easier to edit. (check-in: faa0e420 user: drh tags: view-optimization)
19:23
Fix a comment in fts5.h. (check-in: e964b587 user: dan tags: fts5)
18:30
Code simplifications in select.c and where.c. (check-in: 4f20ac90 user: drh tags: view-optimization)
16:28
Fix handling of fts5 rowid constraints in the absence of a MATCH clause. Add tests to cover recently added branches. (check-in: 3a9cb648 user: dan tags: fts5)
00:18
Minor cleanup of the sqlite3Select() procedure. (check-in: f4c90d06 user: drh tags: view-optimization)
2015-06-05
22:33
Split FROM-clause subquery flattening and code generation into separate loops. (check-in: be8e3fc7 user: drh tags: view-optimization)
20:27
Provide one final Select tree dump prior to WHERE clause analysis when ".selecttrace 0x400" tracing bit is set with SELECTTRACE_ENABLED. Analysis and debug changes only - normal builds are unaffected. (check-in: 283bf0b6 user: drh tags: trunk)
19:05
Make use of range constraints on the rowid field of an fts5 table in full-text queries. (check-in: 32cbc0ed user: dan tags: fts5)
15:59
Add a new opcode to the VDBE that gives the b-tree a hint about the set of columns in a table or index that are actually used by the query. (Closed-Leaf check-in: f167bba4 user: drh tags: column-usage-hint)
2015-06-04
12:08
Change the name of SrcList.a[].zIndex to the more descriptive SrcList.a[0].zIndexedBy. (check-in: 6a9cf063 user: drh tags: trunk)
2015-06-03
11:23
Fix an fts5 problem in extracting columns from position lists containing large varints. (check-in: 4ea015ab user: dan tags: fts5)
2015-06-02
19:38
Change the fts5 multi-column syntax to use parenthesis instead of square brackets. (check-in: ab85a6fc user: dan tags: fts5)
19:36
Always check for cell overflow before returning a slot from the pageFindSlot routine in btree.c. (check-in: 9f035c45 user: drh tags: trunk)
18:09
For FROM-clause subqueries that cannot be flattened, try to push relevant WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. Call this the "WHERE-clause push-down optimization". Do not confuse this with the completely different MySQL push-down optimization. (check-in: 6df18e94 user: drh tags: trunk)
18:07
Merge latest trunk changes with this branch. (check-in: c9ffda4a user: dan tags: fts5)
17:57
Reimplement [ec69e09a] so that each call to the xNext() method does not involve two iterations of the match expression tree (only one). (check-in: 80fe305b user: dan tags: fts5)
17:25
Add test cases for type affinity rules. (check-in: 9678646d user: drh tags: trunk)
16:19
Rename SQLITE_AFF_NONE to SQLITE_AFF_BLOB to avoid confusion with "no affinity". (check-in: 29ad9e91 user: drh tags: trunk)
16:09
Add the built-in affinity() SQL function. This turns out to be not as useful as originally envisioned, so abandon it on a branch. (Leaf check-in: 80889306 user: drh tags: affinity-func)
15:32
Rename SQLITE_AFF_NONE to SQLITE_AFF_BLOB. (Closed-Leaf check-in: bce3f041 user: drh tags: blob-affinity-rename)
14:02
Fix a faulty assert() in btree.c. Update the database fuzz test file with new test cases. (check-in: 4e621af1 user: drh tags: trunk)
09:20
Add the "finish_test" command to the end of new test script sessionE.test. (check-in: fb391407 user: dan tags: sessions)
09:19
Modify the sessions module to ignore all operations on tables with no primary keys as documented. (check-in: bdaf9575 user: dan tags: sessions)
2015-06-01
20:28
For FROM-clause subqueries that cannot be flattened, try to push WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. (Closed-Leaf check-in: 297fae75 user: drh tags: subquery-opt)
19:17
Improve performance of the fts5 AND operator. (check-in: b43e9a5b user: dan tags: fts5)
18:13
Corrections to comments in expr.c. No code changes. (check-in: f925389e user: drh tags: trunk)
17:32
Break out the query flattener into a separate source-code file. (Closed-Leaf check-in: e3fa8b93 user: drh tags: flattener-in-new-file)
11:10
Typo fixes and additional background information in README.md. (check-in: 9b8e5823 user: drh tags: trunk)
09:15
Change fts5 expression processing to avoid linear scans of long doclists caused by phrases that match specific columns only. (check-in: ec69e09a user: dan tags: fts5)
2015-05-30
22:57
Updates to configure.ac to help it find where the TCL libraries hidden on Ubuntu 14.04. (check-in: c864ff91 user: drh tags: trunk)
22:05
Fix minor typo in comment. No changes to code. (check-in: 73fc058b user: mistachkin tags: trunk)
11:49
Remove the "#include sqlite3Int.h" from fts5Int.h. (check-in: e008c3c8 user: dan tags: fts5)
2015-05-29
19:04
Import recent enhancements from trunk. (check-in: 54bec164 user: drh tags: sessions)
19:00
Add extra tests and fixes for multi-column matches. (check-in: ae6794ff user: dan tags: fts5)
18:42
Ensure that allocateBtreePage() always clears the MemPage pointer when it fails due to an I/O or memory allocation error. (check-in: 09a38bf6 user: drh tags: trunk)
17:51
Move two unreachable conditionals inside of NEVER() or assert(). (check-in: db4e9728 user: drh tags: trunk)
17:13
Remove a corruption test in balance_nonroot that is superceded by a prior better check. (check-in: 00693682 user: drh tags: trunk)
15:55
Add syntax to fts5 used to specify that a phrase or NEAR group should match a subset of columns. For example "[col1 col2 ...] : <phrase>". (check-in: 0fc0ea20 user: dan tags: fts5)
15:15
Omit the rowallock.test script (Read-Only WAL lock) from the inmemory_journal permutation. (check-in: d21db330 user: drh tags: trunk)
14:47
Add support for automatic indexes on FROM-clause subqueries that are implemented via co-routine. (check-in: 020b8b10 user: drh tags: trunk)
14:36
Add some extra source-code comments and a test case. (Closed-Leaf check-in: 6d410442 user: drh tags: coroutine-autoindex)
13:55
An attempt to allow automatic index creation on subqueries accessed via co-routine. (check-in: 521345ad user: drh tags: coroutine-autoindex)
01:35
Using "SELECT ALL" instead of just "SELECT" on a query that uses a single unflattenable subquery or view in its FROM clause will force the subquery to be manifested into a temporary table rather than run incrementally using a co-routine. This is a stop-gap means of controlling the decision to manifest while we try to work out a better to make that decision automatically. (check-in: a29e117d user: drh tags: trunk)
2015-05-28
19:57
Optimizations for fts5 queries that match against a specific column. (check-in: b29ac50a user: dan tags: fts5)
15:14
Added comments and testcase() macros to error cases in the btree search. (check-in: 7da7dc71 user: drh tags: trunk)
14:37
Remove some dead code from fts5. Add auxiliary function api tests to the same. (check-in: 0f9df202 user: dan tags: fts5)
11:23
Earlier detection of incompatible sibling pages in balance_nonroot. (check-in: 60a09f17 user: drh tags: trunk)
03:45
Add new test cases to the fuzzdata3.db set of database fuzz tests. (check-in: 467b13a4 user: drh tags: trunk)
03:28
Add the btreeGetUnusedPage() routine to btree.c, and use it to detect content pages on the freelist and to cause that condition to trigger an SQLITE_CORRUPT. (check-in: fe15d1f7 user: drh tags: trunk)
00:54
Do not attempt to take any write lock on a read-only database on Windows. (check-in: a47ff0cd user: drh tags: trunk)
2015-05-27
19:35
The fuzzoomtest makefile target is no longer supported, so update releasetest.tcl accordingly. (check-in: 06959d4a user: drh tags: trunk)
18:19
Fix a minor and harmless memory leak in fuzzcheck. Adjust the makefiles to run fuzzcheck with --quiet on valgrind tests. (check-in: 8bfe8344 user: drh tags: trunk)
18:13
All bytes of a page are initialized, even bytes that follow a 2-byte cell on a malformed page. (check-in: 7373a004 user: drh tags: trunk)
15:42
A different approach to preventing buffer overreads when comparing a vector of values with a corrupt index record that spans at least one overflow page. (check-in: 95eaa49f user: drh tags: trunk)
15:10
Disallow the use of "rowid" in CTEs - it has never worked correctly and it makes no sense, so we might as well make it an explicit error. Also: add the PRAGMA cell_size_check=ON command. (check-in: 19e2cebc user: drh tags: trunk)
14:21
A different approach to preventing buffer overreads when comparing a vector of values with a corrupt index record that spans at least one overflow page. (Closed-Leaf check-in: 7e9e1b61 user: dan tags: avoid-buffer-overread)
13:06
CTEs have never had working rowids. So disallow the use of the "rowid" column within CTEs. (Closed-Leaf check-in: 0055df04 user: drh tags: no-rowid-in-cte)
03:46
Add the "PRAGMA cell_size_check=ON" command. (Closed-Leaf check-in: 2ead43f0 user: drh tags: cell-size-check-pragma)
2015-05-26
20:31
Avoid a buffer overread when comparing against a corrupt record that spans at least one overflow page. (check-in: 62a5b363 user: dan tags: trunk)
20:07
Avoid branching on an uninitalized variable when comparing SQL values with the undefined serial types 10 and 11 (which only appear in corrupt databases). (check-in: b4a45d3b user: dan tags: trunk)
19:08
The "make fuzztest" target now uses fuzzcheck instead of fuzzershell. Test data is added for database fuzz testing. (check-in: 5e3e410b user: drh tags: trunk)
19:01
Merge accidental fork. (Closed-Leaf check-in: e85628e3 user: dan tags: test-using-fuzzcheck)
18:58
Fix a one-byte buffer overread that may follow a syntax error while preparing an SQL statement. (check-in: 07500393 user: dan tags: test-using-fuzzcheck)
18:58
Fix fuzzcheck so that it responds correctly to the TEST_FAILURE environment variable. (check-in: 76770c9e user: drh tags: test-using-fuzzcheck)
18:22
Simplifications and minor optimizations to fts5 prefix queries that cannot use a prefix index. (check-in: aef89d9f user: dan tags: fts5)
18:15
The "make fuzztest" target now uses fuzzcheck instead of fuzzershell. (check-in: 4a5f6f1f user: drh tags: test-using-fuzzcheck)
17:57
Enhance fuzzcheck with the ability to store descriptions in each source database and to run multiple source databases in a single invocation. (check-in: 193364c8 user: drh tags: trunk)
17:33
Add a cast to one side of the test added by [97806a78] in order to avoid a signed/unsigned comparison warning. (check-in: 5b46d2a7 user: dan tags: trunk)
17:29
Avoid using a zero-sized array within a struct in fts3 code. (check-in: b05cae36 user: dan tags: trunk)
16:12
Fix another bug in the in-memory VFS for fuzzcheck. (check-in: 16878a31 user: drh tags: trunk)
14:57
Update test cases in corruptI.test so that they work with both SQLITE_ENABLE_OVERSIZE_CELL_CHECK and SQLITE_DEFAULT_AUTOVACUUM builds. (check-in: 22a14663 user: dan tags: trunk)
12:18
Return SQLITE_CORRUPT to the user if an attempt is made to add database page 1 to the free page list. (check-in: 68876003 user: dan tags: trunk)
11:53
Fix a problem with ignoring UNIQUE constraints on WITHOUT ROWID tables rendered redundant by the PRIMARY KEY. (check-in: 3b936913 user: dan tags: trunk)
03:31
Silence harmless compiler warnings when building the command line utilities with MSVC. (check-in: d26060c4 user: mistachkin tags: trunk)
03:24
Add fuzzcheck to makefile clean targets. Also, for consistency, replace a few tabs with spaces. (check-in: eda2a437 user: mistachkin tags: trunk)
00:28
Add the --result-trace option to fuzzcheck, and other interface enhancements. (check-in: c415bb7b user: drh tags: trunk)
2015-05-25
23:14
Fix an important bug in the xRead method of the in-memory VFS for fuzzcheck. (check-in: 58cd40e8 user: drh tags: trunk)
22:38
Add the fuzzcheck test program. (check-in: 341cb6ab user: drh tags: trunk)
22:29
Add fuzzcheck to all makefiles and fix compiler warnings. (Closed-Leaf check-in: 7b3d2190 user: drh tags: fuzzcheck)
22:18
Merge in trunk fixes. (check-in: c71c2e1a user: drh tags: fuzzcheck)
22:17
Improved tracing capabilities in fuzzcheck. (check-in: 864bfdbf user: drh tags: fuzzcheck)
21:59
Add the --native-vfs option on fuzzcheck. (check-in: 12e95e3f user: drh tags: fuzzcheck)
20:04
Fix a case of a corrupt database causing SQLite to read from up to 4 bytes before the start of a memory allocation. (check-in: 7d2c4f7b user: dan tags: trunk)
19:37
Merge the btree fixes out of trunk. (check-in: f3cd8cec user: drh tags: fuzzcheck)
19:35
Add the --dbid and --sqlid parameters to fuzzcheck. Other fuzzcheck fixes. (check-in: 75ec9299 user: drh tags: fuzzcheck)
19:24
Have the b-tree layer return SQLITE_CORRUPT to any attempt to open a cursor with a root page number less than 1. (check-in: aa18c8e9 user: dan tags: trunk)
18:48
First code for a new utility program to rerun checks on a large number of fuzzer-generated test cases. (check-in: c5b4e363 user: drh tags: fuzzcheck)
18:47
Fix a couple of btree asserts that would fail when encountering 32-bit rollover in cell payload size fields (cell payloads this large always indicate corruption). (check-in: 8fa0937a user: dan tags: trunk)
17:07
Fix a case where database corruption may cause SQLite to write past the end of a buffer. (check-in: 97806a78 user: dan tags: trunk)
15:03
Fix an assert() in btree routine freeSpace() that may be false if the database is corrupt. (check-in: 00a473c5 user: dan tags: trunk)
11:46
Avoid redundant loads from the %_data table in the fts5 code. (check-in: 02069782 user: dan tags: fts5)
10:57
Fix an fts4 matchinf() problem triggered by deferred tokens that are part of phrases that are part of AND expressions. (check-in: f1e942a1 user: dan tags: trunk)
10:29
Fix an obsolete comment - no changes to code. (check-in: 4e4228c4 user: drh tags: trunk)
09:33
Remove an incorrect and pointless assert(). (check-in: 8c3929bd user: drh tags: trunk)
2015-05-24
21:46
The assert() changes removed in the previous check-in are needed after all. (check-in: 336fccc8 user: drh tags: trunk)
21:09
Better detection of corruption in allocateSpace() in btree.c. (check-in: bf7bb53e user: drh tags: trunk)
10:18
Detect database corruption in the modifyPagePointer() routine and abort. (check-in: 4f0bba42 user: drh tags: trunk)
2015-05-23
19:53
Instead of early detection of corruption in balance_nonroot, simply ignore the error, as it is harmless and exceedingly uncommon. (check-in: 7bbf9b3c user: drh tags: trunk)
19:29
Earlier detection of a specific kind of corruption in the balance_nonroot() routine. (check-in: ee6dc991 user: drh tags: trunk)
15:43
Avoid making redundant copies of position-lists within the fts5 code. (check-in: 5165de54 user: dan tags: fts5)
02:44
Minor documentation improvements. No changes to code. (check-in: e446d9ce user: drh tags: trunk)
2015-05-22
23:51
Merge bug fixes from trunk. (check-in: 519054bb user: drh tags: sessions)
23:50
Improved error messages in fuzzershell when unable to open the database. (check-in: c404fcac user: drh tags: trunk)
23:45
Fix a bug in fuzzershell caused by an uninitialized local variable. (check-in: 745deab8 user: drh tags: trunk)
23:39
Fix another bad assert() in btree - one that can be false on a corrupt database file. (check-in: 89f0bbfd user: drh tags: trunk)
23:26
Merge enhancements from trunk, including the new sqlite3_value_dup() API and the addition of the apSqlParam field in the sqlite3_rtree_query_info object of R-Tree. (check-in: cdc0ca6f user: drh tags: sessions)
23:17
Fix incorrect validation of the size of the BLOB returned by a geometry function on the RHS of a MATCH operator in RTree. The old code worked for 64-bit systems (by chance) but fails on 32-bit. (check-in: 10cc44f5 user: drh tags: trunk)
21:12
Add the sqlite3_value_dup() and sqlite3_value_free() interfaces. Use these interfaces to enhance R-Tree to add the sqlite3_rtree_query_info.apSqlParam field. (check-in: c1814242 user: drh tags: trunk)
21:04
Make sure sqlite3_value_dup() works correctly even for sqlite3_value objects that are marked SQLITE_STATIC. (Closed-Leaf check-in: f332ffc3 user: drh tags: value-dup)
19:55
Fix minor issues with the sqlite3_value_dup() interface. (check-in: 95edcf50 user: drh tags: value-dup)
18:40
Update with fixes and enhancements from trunk. (check-in: 9605d008 user: drh tags: value-dup)
17:29
The SRT_Table type for the SelectDest object is now just an SRT_EphemTab for which the ephemeral table has already been allocated. (check-in: b9727e6b user: drh tags: trunk)
16:08
Have r-tree prefer to use the constraint "col MATCH ?" over "rowid = ?". (check-in: b9fb9519 user: dan tags: trunk)
13:09
Fix two faulty assert statements discovered by fuzzing. (check-in: 799817bf user: drh tags: trunk)
12:37
Fix an assert in btree.c that can be false when using a corrupted database file. (check-in: a6eb2a39 user: drh tags: trunk)
11:38
Add the --database option to the fuzzershell test program. (check-in: c6d5512f user: drh tags: trunk)
07:44
Increase test coverage of fts5_vocab.c. (check-in: 065ab83a user: dan tags: fts5)
06:08
Improve test coverage of fts5_unicode2.c. (check-in: fea8a4db user: dan tags: fts5)
2015-05-21
20:26
Have r-tree prefer to use the constraint "col MATCH ?" over "rowid = ?". drh added later: All changes on this branch have been cherrypicked to trunk and will be merged into sessions from trunk. So this branch can close. (Closed-Leaf check-in: b9e45596 user: dan tags: sessions-value-dup)
2015-05-20
22:01
Add the sqlite3_value_dup() and sqlite3_value_free() interfaces and use those to add the sqlite3_rtree_query_info.apSqlParam field to the query callback in R-Tree. (check-in: 2007391c user: drh tags: sessions-value-dup)
21:28
Add the sqlite3_value_dup() and sqlite3_value_free() interfaces. Use these interfaces to enhance R-Tree to add the sqlite3_rtree_query_info.apSqlParam field. (check-in: a7ee40c4 user: drh tags: value-dup)
18:17
Version 3.8.10.2 (check-in: 2ef4f3a5 user: drh tags: release, version-3.8.10.2, branch-3.8.10)
17:36
Fix the initialization logic in CREATE TABLE AS so that the correct affinities are applied to all values being inserted into the new table, even if the RHS is a compound SELECT. Fix for ticket [f2ad7de056ab1dc9200]. (check-in: 6a0cf3ce user: drh tags: trunk)
17:25
Add a test case to verify that CREATE TABLE AS does not store INT values in TEXT columns. Ticket [f2ad7de056ab1dc92]. (Closed-Leaf check-in: 0e45e8f1 user: drh tags: create-table-as-type-fix)
17:18
Simplification of the initialization code for CREATE TABLE AS. (check-in: 937f659e user: drh tags: create-table-as-type-fix)
15:51
A proposed fix for the problem of CREATE TABLE AS generating a table that has INTEGER values in a TEXT column. Ticket [f2ad7de056ab1dc92]. (check-in: d5e2c1fc user: drh tags: create-table-as-type-fix)
09:27
Improve test coverage of fts5_tokenize.c. (check-in: 0e91a6a5 user: dan tags: fts5)
00:15
Fix handling of queries with VALUES on the left and UNION ALL SELECT on the right and a LIMIT clause. (check-in: c403502c user: drh tags: trunk)
2015-05-19
23:56
Enhance the selecttrace display by showing Select.selFlags. (check-in: 45d3893c user: drh tags: trunk)
23:04
Merge the Makefile.msc fix and the compiler warning fix from trunk. Also fix another compiler warning in sqlite3session_diff(). (check-in: 7530e1bf user: drh tags: sessions)
22:56
Fix the MSVC makefile so that it works with OTA. Fix a harmless compiler warning in FTS3. (check-in: c7b16645 user: drh tags: trunk)
22:42
Merge recent trunk changes, include the R-Tree enhancement that allows 8-byte BLOB arguments to geometry functions, and the fix for the TEXT affinity problem that could cause corrupt indexes. (check-in: 0a0de8b7 user: drh tags: sessions)
22:20
Allow R-Tree geometry functions to take 8-byte BLOB arguments which are passed directly through to the underlying callback, and which can be used to pass pointers into the callback. (check-in: b271ed56 user: drh tags: trunk)
19:52
Ensure that when the VM applies TEXT affinity to a value it discards any existing REAL or INTEGER value. Fix for [34cd55d6]. Increase the version number to 3.8.10.2. (check-in: 40f67265 user: drh tags: branch-3.8.10)
19:44
Ensure that when the VM applies TEXT affinity to a value it discards any existing REAL or INTEGER value. Fix for [34cd55d6]. (check-in: f5d0ce80 user: dan tags: trunk)
19:37
Add tests for fts5 tokenizers. (check-in: 4f90ba20 user: dan tags: fts5)
17:48
Remove the sqlite3ota_open_v2() API. Add a new parameter to sqlite3ota_open() instead. (check-in: c74e0bc4 user: dan tags: trunk)
16:50
Merge the ota-update branch with trunk. (check-in: 08e2864e user: dan tags: trunk)
16:26
Add a comment for SQLITE_FCNTL_OTA to sqlite.h.in. (Closed-Leaf check-in: efa20f8e user: dan tags: ota-update)
16:22
Allow OTA update state data to be stored in a database separate from the OTA update database. (check-in: 5af8db56 user: dan tags: ota-update)
14:14
Merge latest trunk changes with this branch. (check-in: 6055a672 user: dan tags: ota-update)
11:38
Update Makefile.in so that the amalgamation files built by "make sqlite3.c" include fts5. (check-in: 2870a805 user: dan tags: fts5)
11:32
Fix a memory leak that could follow an OOM condition in fts5. (check-in: de9f8ef6 user: dan tags: fts5)
2015-05-18
20:34
Improve test coverage of fts5_storage.c. (check-in: 4dfe2e58 user: dan tags: fts5)
18:24
Fix a bug in test script fts5fault4.test. (check-in: a5080593 user: dan tags: fts5)
18:03
Add a test for an untested branch in fts5_expr.c. (check-in: ce08206b user: dan tags: fts5)
17:50
Improve test coverage of fts5_config.c. (check-in: 47dbfadb user: dan tags: fts5)
12:28
Transitive constraints should only work if operands have compatible affinities and collating sequences. (check-in: 5df40564 user: drh tags: trunk)
12:18
Use an ALWAY() on conditionals in the transitive constraint logic that are always true as far as we know. (Closed-Leaf check-in: 204e567f user: drh tags: transitive-constraints)
11:34
Refinements to the determination of when an A==B term is an equivalence. Add test cases. (check-in: 6bfaf525 user: drh tags: transitive-constraints)
04:24
Make a hard copy of the results of a subquery lest the result of the subquery be referenced after a change to the table that generated the subquery result. (check-in: 9c0d8090 user: drh tags: trunk)
2015-05-16
20:51
Further restrictions on the use of the transitive property in WHERE clauses. (check-in: 8c886c43 user: drh tags: transitive-constraints)
20:04
Further test coverage improvements for fts5. (check-in: 927d9a64 user: dan tags: fts5)
19:17
Fix the transitive constraint processing to only allow transitivity if the operands of the == or IS operator have compatible affinities. (check-in: a46a247f user: drh tags: transitive-constraints)
18:31
Fix a typo in a comment. No changes to code. (check-in: ee4b7425 user: drh tags: trunk)
03:41
Improve the clean target in the MSVC makefile. (check-in: 2c1039d4 user: mistachkin tags: trunk)
2015-05-15
22:20
Update the README.md file at the top of the repository so that the homepage of Git mirrors of SQLite direct users to the official repository. (check-in: 08f11980 user: drh tags: trunk)
20:14
Minor coding style change, adjust new local variable casing for consistency. (check-in: 1a4628c6 user: mistachkin tags: trunk)
19:59
Do not assume that "col IS ?" matches at most a single row of a UNIQUE column unless the column is also NOT NULL. (check-in: e038ce89 user: dan tags: trunk)
18:13
Improve test coverage of fts5_index.c. (check-in: 7aea8c6d user: dan tags: fts5)
12:18
Add test cases. And some fixes. (check-in: adee7885 user: dan tags: fts5)
04:13
Simplifications to error message processing. Fix a possible problem in error message formatting when vacuuming a database with a corrupt schema. (check-in: 56ef98a0 user: drh tags: trunk)
2015-05-14
15:39
Increase the version number to 3.8.11. Upgrade autoconf from 2.62 to 2.69. (check-in: be438d04 user: drh tags: trunk)
15:17
Merge in the IS-operator enhancements and other recent changes from trunk. (check-in: 4f922944 user: drh tags: sessions)
14:32
The IS operator can now use indexes the same as the == operator. (check-in: 3428043c user: drh tags: trunk)
14:03
A few more test cases for the IS operator. (Closed-Leaf check-in: f397c862 user: drh tags: index-is-operator)
13:41
More test cases. Remove some invalid testcase() macros. Rearrange some code for improved testability. (check-in: b3676377 user: drh tags: index-is-operator)
13:18
Add testcase() macros. Get transitive WHERE clause constraints on IS operators working again. (check-in: d195d4a6 user: drh tags: index-is-operator)
09:53
Merge changes from the index-is-operator branch into this one. Drop the partial support added for IS on this branch by [52e73eec]. (check-in: 16ab9caf user: dan tags: ota-update)
08:58
Merge latest trunk changes with this branch. (check-in: 299ed55c user: dan tags: ota-update)
01:05
A new implementation of indexing with the IS operator that works correctly when the IS operator is in the WHERE clause and the operands are from opposite sides of a LEFT JOIN. (check-in: 4541688b user: drh tags: index-is-operator)
2015-05-13
19:33
Simplified implementation of indexing with the IS operator. (check-in: 95b1f9bf user: drh tags: index-is-operator)
18:12
Merge latest trunk changes with this branch. (check-in: b5f0e8c5 user: dan tags: fts5)
17:54
Add testcase() macros and comments and a few test-cases. (check-in: 24263d08 user: drh tags: index-is-operator)
17:15
Change fts5 doclist-index structures to be trees instead of flat lists. This only makes a difference for databases that contain millions of instances of the same token. (check-in: aa34bf66 user: dan tags: fts5)
15:24
An early attempt to get indexes to work with the IS operator. This code passes tests, but much more testing is needed to verify that it works on all corner cases. (check-in: 6f7f1673 user: drh tags: index-is-operator)
04:52
Merge updates from trunk. (Leaf check-in: 10ee36d0 user: mistachkin tags: get-trace)
04:50
Enhancements to the MSVC makefile. (check-in: 59e3e9e7 user: mistachkin tags: trunk)
2015-05-12
23:33
Use the database mutex where applicable. (check-in: 28cfdabc user: mistachkin tags: get-trace)
23:31
Fix a couple of typos in comments. (check-in: e908365f user: mistachkin tags: get-trace)
23:28
Improve API armor integration. Fix harmless compiler warnings. (check-in: fbf29b45 user: mistachkin tags: get-trace)
23:20
Modify the new functions to make them return a standard return code. (check-in: 02f694d5 user: mistachkin tags: get-trace)
21:27
Experimental API extension for recovering the current trace and profile callbacks on a database connection. (check-in: 9de33768 user: drh tags: get-trace)
19:53
Fix typo in Win32 VFS code enabled when the SQLITE_WIN32_USE_UUID compile-time option is used. (check-in: b33f1bac user: mistachkin tags: trunk)
19:10
Attempt to get DBSTAT to compile without warnings across all build configurations. (check-in: c3cbe3b0 user: drh tags: trunk)
14:22
Fix a compiler warning when building with tclsqlite3.c and without SQLITE_ENABLE_DBSTAT_VTAB. (check-in: aad3ff25 user: drh tags: trunk)
13:32
Improvements to documentation of the sqlite3_column_xxxxx() interfaces. No code changes. (check-in: f1aa951a user: drh tags: trunk)
12:24
Try to get recent sqlite3_analyzer and sqldiff tests working for all tested combinations of compile-time options, especially SQLITE_OMIT_VIRTUALTABLE and SQLITE_OMIT_LOAD_EXTENSION. (check-in: 07c7d392 user: drh tags: trunk)
00:46
Fix sqldiff.exe so that it always runs in single-thread mode. (check-in: c223910e user: drh tags: trunk)
2015-05-11
19:01
Add new fts3 matchinfo option 'b'. Also optimize existing option 'y'. (check-in: 2e7679a1 user: dan tags: trunk)
18:48
Add missing "finish_test" commands to the end of the two new test scripts for sqlite3_analyzer and sqldiff. (check-in: 1d5e72b1 user: drh tags: trunk)
18:46
Merge latest trunk changes into this branch. (Closed-Leaf check-in: 82e5a6e0 user: dan tags: fts3-matchinfo-y)
17:46
Test cases for sqlite3_analyzer and sqldiff. Fix a problem with sqlite3_analyzer related to the renaming of the initialization routine. (check-in: 85a4a46c user: drh tags: trunk)
16:27
Fix minor Makefile typos. Improve consistency of MSVC makefile. Add new targets to clean. (check-in: f84fbe98 user: mistachkin tags: trunk)
12:15
Build the sqlite3_analyzer.exe and sqldiff.exe programs on "make test" and "make smoketest" and other similar test targets. (check-in: 1b83f2e7 user: drh tags: trunk)
11:59
Revamp the way the DBSTAT virtual table is registered. (check-in: 4e652015 user: drh tags: trunk)
06:22
Change autoconf/Makefile.am to avoid building target sqlite3.o as part of both the shared library and shell tool. Doing so causes problems for parallel builds. (check-in: 85bfa9a6 user: dan tags: trunk)
2015-05-10
02:01
Fix the sqlite3_memory_used() and sqlite3_memory_highwater() interfaces so that they really do provide a 64-bit answer. (check-in: 8a0d5d5e user: drh tags: trunk)
2015-05-09
18:28
Allow the fts5vocab table to optionally provide data on a per-column basis. (check-in: 39222761 user: dan tags: fts5)
12:14
Version 3.8.10.1 (check-in: 05b4b1f2 user: drh tags: trunk, release, version-3.8.10.1)
10:27
Bump the version number to 3.8.10.1 (check-in: 9c6bf0c1 user: drh tags: trunk)
2015-05-08
20:21
Add the fts5vocab module, for direct access to the fts5 index. (check-in: 6bf93e3b user: dan tags: fts5)
09:21
Improve the error message returned by FTS5 if it encounters an unknown file format. (check-in: f369caec user: dan tags: fts5)
01:04
Fix harmless compiler warning with MSVC. (check-in: 902d0cb8 user: mistachkin tags: trunk)
00:58
Remove a couple stray test breakpoint calls. (check-in: 2860cebe user: mistachkin tags: trunk)
2015-05-07
20:26
Add an entry to sqlite3_compileoption_used() for SQLITE_ENABLE_DBSTAT_VTAB. (check-in: 480b4cb0 user: drh tags: trunk)
19:29
Change to storing all keys in a single merge-tree structure instead of one main structure and a separate one for each prefix index. This is a file-format change. Also introduce a mechanism for managing file-format changes. (check-in: a684b5e2 user: dan tags: fts5)
18:29
Testing improvements and corner-case bug fixes for the dbstat virtual table. (check-in: d51ce539 user: drh tags: trunk)
14:41
Enhance the dbstat virtual table with the ability to analyze ATTACHed databases. (check-in: 25ec0940 user: drh tags: trunk)
12:29
Merge in the 3.8.10 release changes. (check-in: 0404ef88 user: drh tags: sessions)
11:53
Version 3.8.10 (check-in: cf975957 user: drh tags: trunk, release, version-3.8.10)
00:09
Remove a faulty assert() statement. (check-in: 5f2539da user: drh tags: trunk)
2015-05-06
18:15
Merge latest trunk changes with this branch. (check-in: 8a13e1fd user: dan tags: fts3-matchinfo-y)
17:51
Remove some dead code from fts3_snippet.c. (check-in: 46b2d3ce user: dan tags: fts3-matchinfo-y)
17:41
More optimization for the 'y' and 'b' matchinfo directives. (check-in: 8c5b9fed user: dan tags: fts3-matchinfo-y)
14:18
Have the autoconf package build the shell tool with SQLite linked in statically. (check-in: 31834c3a user: dan tags: trunk)
08:43
Further optimizations for the 'y' and 'b' matchinfo operators. (check-in: fbd038bb user: dan tags: fts3-matchinfo-y)
2015-05-05
20:39
Add the fts3 matchinfo 'b' flag. (check-in: b9b77972 user: dan tags: fts3-matchinfo-y)
19:37
Optimizations for the matchinfo() function, particularly the 'y' flag. (check-in: dddd7e18 user: dan tags: fts3-matchinfo-y)
18:52
Remove four lines of superfluous code identified by clang scan-build. (check-in: 04afa3fe user: drh tags: trunk)
17:12
Merge all trunk enhancements and fixes into the sessions branch. (check-in: de7083cf user: drh tags: sessions)
16:57
Fix a minor coding inefficiency found during pre-release inspection. (check-in: cc50883d user: drh tags: trunk)
11:08
Add #ifdef statements to test_blob.c so that it will build with SQLITE_OMIT_INCRBLOB. (check-in: b8f090e6 user: drh tags: trunk)
10:46
Spell SQLITE_OMIT_VIRTUALTABLE correctly in a #if in dbstat.c. (check-in: d2cb1bec user: drh tags: trunk)
10:03
Fix a faulty assert() in the btree part of the "PRAGMA page_size = ?" code. (check-in: 90b19748 user: dan tags: trunk)
01:09
Fix a problem in Makefile.in that only comes up on Windows with MinGW. (check-in: 5f3cd68b user: drh tags: trunk)
00:48
Fix #ifdef problem in tclsqlite.c. (check-in: fe723bb5 user: drh tags: trunk)
2015-05-04
20:25
Automatically enable the dbstat virtual table on all new database connections with the SQLITE_ENABLE_DBSTAT_VTAB compile-time option is used. (check-in: 1c9c6eaa user: drh tags: trunk)
19:13
In the command-line shell, and the ".binary" command and additional C-style backslash escapes. (check-in: 850c1186 user: drh tags: trunk)
19:06
Add the "dbstat" virtual table as a standard component in the SQLite amalgamation, though turned off unless compiled with SQLITE_ENABLE_DBSTAT_VTAB. (check-in: e7529705 user: drh tags: trunk)
18:31
Rename the test_stat.c source file to dbstat.c and rework the makefiles to make dbstat.c a first-class source module. (Closed-Leaf check-in: a24480a4 user: drh tags: dbstat-in-amalgamation)
17:06
Include the "dbstat" virtual table in the amalgamation. (check-in: fc6504aa user: drh tags: dbstat-in-amalgamation)
16:09
Fix a faulty assert() in the SELECT code generator and add a test case to prevent regression. (check-in: 1421c8ff user: drh tags: trunk)
15:04
Fix a bug in --changeset output for sqldiff.exe for floating-point values. Also fix harmless compiler warnings in sqldiff.exe. (check-in: 9f428530 user: drh tags: trunk)
13:25
Add the --lib option to the sqldiff.exe command-line utility. (check-in: a117e8f6 user: drh tags: trunk)
12:29
Add the 'y' flag to the fts3/4 matchinfo() function. (check-in: aef1e8f4 user: dan tags: trunk)
2015-05-02
20:35
Reorganize some of the fts5 expression parsing code. Improve test coverage of the same. (check-in: c4456dc5 user: dan tags: fts5)
19:54
Improvements to fuzzershell: Avoid excess memory allocations when loading many files. Show the total runtime on final output. Show individual filenames as they are processed even if they are single test-case files. (check-in: 34a722a2 user: drh tags: trunk)
18:25
Add the SQLITE_LIMIT_PRINTF_WIDTH setting for sqlite3_limit() and associated logic for preventing DOS attacks using printf() with oversized widths or precisions. (Leaf check-in: f8b15979 user: drh tags: limit-printf-width)
17:40
Add the ".limit" command to the command-line shell. (check-in: 803cb60e user: drh tags: trunk)
12:40
Reorganize some multi-threaded code in vdbesort.c so that full MC/DC test coverage does not depend on the outcome of a race condition. (check-in: 78c7ec95 user: dan tags: trunk)
11:45
Cleanup of the sqlite3StrAccumInit() function. No functionality changes. (check-in: 7952c322 user: drh tags: trunk)
09:44
Add the experimental matchinfo 'y' flag to fts3/4. (Closed-Leaf check-in: 92941609 user: dan tags: fts3-matchinfo-y)
2015-05-01
20:38
Further improvements to test coverage of fts5 code. (check-in: d4331943 user: dan tags: fts5)
20:34
Enhance the fuzzershell --uniquecases option to output results in order of increasing runtime and to include the runtime in the comment separator of the output. (check-in: 04630b98 user: drh tags: trunk)
19:21
Enhance fuzzershell to accept multiple input files. Add the test/fuzzdata2.txt fuzz test content. (check-in: ab5523aa user: drh tags: trunk)
18:00
Fix an assert in RTREE that would fire if the rtree table is misdeclared. (check-in: 9a45409c user: drh tags: trunk)
16:57
Fix an assert() failure caused by setting "PRAGMA journal_mode=off" on an database in exclusive-mode that has already opened the journal file. (check-in: 40db3e40 user: dan tags: trunk)
15:25
Remove obselete comment text from the description of the Table object. No changes to code. (check-in: 6566b72a user: drh tags: trunk)
14:07
Use the sqlite3Fts3ErrMsg() function to set error message text in FTS3, and to ensure that error messages are not overwritten and thus leaked. (check-in: 605347e0 user: drh tags: trunk)
12:14
Improve test coverage of fts5.c. (check-in: add4f468 user: dan tags: fts5)
2015-04-30
20:35
Enhance the CLI to initialize the dbstat virtual table if compiled using SQLITE_ENABLE_STAT_VTAB. (check-in: 822dfc00 user: drh tags: trunk)
20:33
Fix a harmless comment typo. (check-in: 012a0c4e user: drh tags: trunk)
20:26
Avoid dropping an error code in test function sqlite3_dbstat_register(). (check-in: 9a9f633f user: dan tags: trunk)
13:06
Modify the mkfuzzdata1.tcl script so that it retains the culled test vectors in the tmp2 subdirectory. (check-in: 431a958f user: drh tags: trunk)
12:31
Fix signed/unsigned comparison compiler warnings. Add the SQLITE_OMIT_RANDOMNESS compile-time option to cause the PRNG to be seeded identically on every run, for testing purposes. (check-in: 93ce2bca user: drh tags: trunk)
2015-04-29
20:54
Improve fts5 tests. (check-in: c1f07a3a user: dan tags: fts5)
16:50
Use sqlite3_malloc64() in place of sqlite3_malloc() internally. (check-in: 48f553b0 user: drh tags: trunk)
00:35
Improved support for OSTRACE on Windows. (check-in: ca43812b user: drh tags: trunk)
2015-04-28
23:34
Revise when the sqlite3ErrName() function is defined. (Closed-Leaf check-in: 9e593fb3 user: mistachkin tags: winTest)
20:24
Fix an fts5 bug in handling writes while there are active cursors. (check-in: 07f70955 user: dan tags: fts5)
18:35
Improve coverage of fts5 tests. (check-in: 8e8136f2 user: dan tags: fts5)
14:49
Update the test/fuzzdata1.txt file with the latest cases discovered by AFL. (check-in: f2063f53 user: drh tags: trunk)
14:07
Fix an assert() failure that could occur if the internal sqlite3_rename_parent() SQL scalar function was invoked directly. (check-in: 36e51526 user: dan tags: trunk)
14:00
Fix sqlite3VdbeMakeWritable() to always clear the MEM_Ephem flag. Change the OP_Move opcode to always deephemeralize moved content. (check-in: fbb06727 user: drh tags: trunk)
13:11
Oops - the deephemerialization needs to occur before the move, not after. Was: Rather than try to keep track of the parent of an ephermeral register when the register moves, just deephemeralize all registers touched by the OP_Move opcode. (Closed-Leaf check-in: 091cfe8e user: drh tags: mistake)
12:44
Shift the Mem.pScopyFrom pointer in the correct direction in OP_Move. Fix for a defective check-in [a2135ad13049] and ticket [d6352363751]. Debugging code only - does not affect normal operation. (check-in: add4e043 user: drh tags: trunk)
12:27
Add code to the shell to optionally initialize the dbstat virtual table. (Closed-Leaf check-in: 7ed86dd3 user: drh tags: stat-vtab-in-shell)
01:28
Fix comment typos. No code changes. (check-in: 60174cf5 user: drh tags: trunk)
00:53
Add a TCL script that can be run to generate the fuzzdata1.txt file. (check-in: fdc79fd1 user: drh tags: trunk)
2015-04-27
19:53
Add fault-injection tests for the code in test_stat.c. (check-in: ea5e0b74 user: dan tags: trunk)
16:21
Change the fts5 content= option so that it matches fts5 columns with the underlying table columns by name, not by their position within the CREATE TABLE statement. (check-in: e38e2bb6 user: dan tags: fts5)
15:08
Update the fuzzer test data after having run it through afl-cmin to remove redundant test cases. (check-in: 8134d41b user: drh tags: trunk)
11:31
Further tests for fts5. (check-in: ffeb3ef3 user: dan tags: fts5)
2015-04-25
20:29
Improve coverage of fts5_index.c slightly. (check-in: e5aaa013 user: dan tags: fts5)
18:56
Add tests for fts5. (check-in: e748651c user: dan tags: fts5)
18:39
Fix compiler warnings in sqldiff. (check-in: 5f48d6f6 user: drh tags: trunk)
17:45
Update the AFL fuzzer data with newly discovered paths. (check-in: d9821980 user: drh tags: trunk)
16:39
Fuzzershell: change the error summary output to work with releasetest.tcl. Reduce the maximum number of OOM interations. (check-in: f5e6c4b2 user: drh tags: trunk)
13:39
Add the fuzzoomtest target to the makefiles. Invoke fuzzoomtest from releasetest.tcl. (check-in: f60657c2 user: drh tags: trunk)
12:20
Fix an obscure memory leak that could follow an OOM in where.c. (check-in: 08ec9f2f user: dan tags: trunk)
11:35
In fuzzershell: (1) comment fixes. (2) Set and clear g.zTestName[] correctly. (3) Use the value in g.zTestName[] in error messages. (check-in: b7394755 user: drh tags: trunk)
11:19
In the fuzzershell, always invoke the trace and log callbacks even if output is suppressed. Keep track of the current test name in a global variable for simplified debugging. (check-in: 3045f454 user: drh tags: trunk)
00:32
Do not send the extra ";" and "\000" tokens to the parser if a prior error has occurred. (check-in: 9aa70ddf user: drh tags: trunk)
00:20
Add fflush() calls to fuzzershell to keep stderr and stdout synchronized. (check-in: 2b98a252 user: drh tags: trunk)
2015-04-24
23:45
Add the --oom option to fuzzershell. (check-in: 14a9e4a3 user: drh tags: trunk)
20:18
Merge latest trunk changes with this branch. (check-in: 1c78d892 user: dan tags: fts5)
19:41
Add the "unindexed" column option to fts5. (check-in: 86309961 user: dan tags: fts5)
18:31
Fix fuzzershell so that it works with SQLITE_OMIT_TRACE. (check-in: dc88fe7e user: drh tags: trunk)
17:50
Add the --with-tcl=DIR option to the test/releasetest.tcl script. (check-in: 4dda916a user: drh tags: trunk)
16:53
Run fuzzershell as part of the valgrindtest makefile target. (check-in: 0bb96a03 user: drh tags: trunk)
16:16
Add the fuzztest target to the MSVC makefile. (check-in: 98edc615 user: drh tags: trunk)
16:09
Add AFL-generated test cases in the test/fuzzdata1.txt file. Automatically run fuzzershell against those cases on a "make test". (check-in: 627ea83c user: drh tags: trunk)
15:56
Add extra tests for corrupt database handling in fts5. (check-in: 41449f7a user: dan tags: fts5)
14:47
Add the --unique-cases option to fuzzershell. (check-in: 7cb71849 user: drh tags: trunk)
13:00
Fuzzershell enhancements: (1) Add the --verbose and --quiet flags (2) Show percentage complete and final test count for multi-test inputs (3) Omit trace and result logs unless the --verbose flag is used. (check-in: ed202ffa user: drh tags: trunk)
06:02
Fix an fts5 build problem in main.mk. (check-in: 60045ced user: dan tags: fts5)
2015-04-23
19:38
Fix a problem in the "ota" utility program causing it to crash if SQLite failed to open the target database. (check-in: a1a2b4a2 user: dan tags: ota-update)
19:32
Merge latest trunk changes into this branch. (check-in: 1506e99e user: dan tags: ota-update)
19:18
Fix a performance problem in calls to sqlite3ota_close() made after the OTA update has been completely applied and checkpointed. (check-in: fa62093b user: dan tags: ota-update)
18:14
Have OTA maintain a small LRU cache of UPDATE statements. This reduces the amount of time it spends compiling UPDATE if a single data_xxx table contains many different ota_control strings. (check-in: baee3556 user: dan tags: ota-update)
17:22
Modify the sqlite3session_diff() API so that tables with no PRIMARY KEYs are ignored. This matches the other sessions APIs. Also change sqlite3session_diff() so that it returns SQLITE_SCHEMA, instead of SQLITE_ERROR, if the tables being compared do not have compatible schemas. (check-in: aada0ad0 user: dan tags: sessions)
15:03
Fix the error message returned by sqlite3session_diff() for tables with no PRIMARY KEY. (check-in: 4d34a3d4 user: dan tags: sessions)
14:40
Fix a performance problem in sqlite3session_diff(). (check-in: ea400eca user: dan tags: sessions)
13:49
Merge the latest trunk enhancements and fixes into the sessions branch. (check-in: 4e5f17d1 user: drh tags: sessions)
13:37
Fix a faulty assert() in the "AS" alias resolution logic of the parser. (check-in: b5e43602 user: drh tags: trunk)
13:00
Improvement to "ID" formatting on the ".selecttrace 0x1ff" debugging function. (check-in: 01c50cee user: drh tags: trunk)
11:52
Fix a problem causing the fts3 integrity-check to fail if run inside a transaction. (check-in: 3b925189 user: dan tags: trunk)
2015-04-22
20:58
Add extra OOM tests for fts5. (check-in: 2dd59b57 user: dan tags: fts5)
20:14
Fix problems with doclist-indexes involving very large rowids. (check-in: 1e599409 user: dan tags: fts5)
14:41
Prototype for an sqlite3_db_log() interface. (Leaf check-in: 658e20f5 user: drh tags: sqlite3_db_log)
13:16
Improved filtering of input for fuzzershell for modes other than generic. (check-in: 025e8370 user: drh tags: trunk)
11:34
Add comments related to database locking to sqlite3ota.h. (check-in: 77242965 user: dan tags: ota-update)
11:16
Change the printf, strftime, and glob modes of fuzzershell so that they reject all inputs that do not start with a string literal followed by a comma. This helps the fuzzer focus in on the kinds of behavior those modes are intended to test. (check-in: 1cceefa7 user: drh tags: trunk)
09:40
Update this branch with latest trunk changes. (check-in: 9797482d user: dan tags: fts5)
01:33
When compiling for UAP, link against the new minimal MSVC runtime. (check-in: 2cb94511 user: mistachkin tags: trunk)
2015-04-21
17:17
Alternative fix for the double-initialization of type and collating sequence problem that leaves the estimated table size intact. (check-in: 623ddbdb user: drh tags: trunk)
17:07
Make sure the datatype and collating sequence of transients tables are not initialized more than once. Otherwise a memory leak results. (check-in: 9e6beda2 user: drh tags: trunk)
16:38
Ensure that tables names are dequoted exactly once by the trigger logic. (check-in: 9d887b92 user: dan tags: trunk)
16:09
Fix a memory leak in the SELECT code generator tracing logic (code that is omitted in non-debugging builds). (check-in: b623ebd8 user: drh tags: trunk)
15:49
Fix an obscure problem with "INSERT INTO tbl(cols) SELECT" statements where the SELECT is a compound with an ORDER BY and "cols" is a strict subset of tbl's columns. (check-in: 718d5d0e user: dan tags: trunk)
15:35
Add a comment to sqlite3ota.h. No code changes. (check-in: 352fa09e user: dan tags: ota-update)
15:16
Change an assert() in the aggregate query code generator into a testcase(). (check-in: d1e6bc91 user: drh tags: trunk)
12:06
Fix an fts4 problem to do with the handling of phrases that contain zero tokens. (check-in: caba5be0 user: dan tags: trunk)
03:13
Fix some identifier name de-quoting issues in the foreign key and trigger logic. (check-in: 59e92bd9 user: drh tags: trunk)
02:17
Test case for the previous check-in. (check-in: a526f58b user: drh tags: trunk)
02:12
Make sure the whereSplit() routine in the query planner is not confused by the likely() operator. (check-in: 588db14f user: drh tags: trunk)
00:23
Enable compilation and VSIX package creation with the Visual Studio 2015 CTP. (check-in: 03b725a7 user: mistachkin tags: trunk)
2015-04-20
23:53
Merge updates from trunk. (Closed-Leaf check-in: 583a79a0 user: mistachkin tags: vsix2015)
22:36
Add the --mode option to fuzzershell. (check-in: b940b0fa user: drh tags: trunk)
18:58
Many new configuration options for fuzzershell. (check-in: 41c95439 user: drh tags: trunk)
15:13
Fix a memory leak caused by duplicate entries in the sqlite_stat1 table. (check-in: 2f58c8c9 user: dan tags: trunk)
13:59
Fix an obscure memory leak in sqlite3Stat4ProbeFree() (check-in: c72abbe2 user: drh tags: trunk)
12:50
Enhance fuzzershell to support multiple blocks of SQL, each run in its own private in-memory database. (check-in: ab0a96ca user: drh tags: trunk)
01:32
Merge all recent trunk enhancements and fixes into the sessions branch. (check-in: b8ef1cde user: drh tags: sessions)
01:25
Merge all recent trunk enhancements and fixes into the apple-osx branch. (check-in: 74b7bf17 user: drh tags: apple-osx)
01:13
Add an ALWAYS() around a new branch that was made unreachable by an even newer change. (check-in: 592c0104 user: drh tags: trunk)
2015-04-19
23:48
Fix another harmless compiler warning. (check-in: 5ae853aa user: mistachkin tags: vsix2015)
23:40
Merge updates from trunk. (check-in: 59d1a3bb user: mistachkin tags: vsix2015)
23:39
Modify the 'mkvsix' tool itself to support the Visual Studio 2015 CTP. (check-in: e0b7a191 user: mistachkin tags: vsix2015)
23:11
Fix an off-by-one assert() in the virtual table argument tokenizer. (check-in: c83052e4 user: drh tags: trunk)
22:41
Fix a broken assert() and comparison for INSERT INTO ... SELECT when the SELECT uses an unknown collating sequence. (check-in: e73ac0cb user: drh tags: trunk)
22:31
Silently ignore parser stack overflow when parsing a malformed schema in PRAGMA writable_schema mode. (check-in: 2cb37b95 user: drh tags: trunk)
21:59
Fix another assert() that is not true if the database schema is corrupt. (check-in: bc97cec6 user: drh tags: trunk)
21:43
Fix harmless compiler warnings seen with MSVC 2015. (check-in: d05becd8 user: mistachkin tags: vsix2015)
20:39
Fix a faulty assert in the schema parsing logic. (check-in: b1ed9495 user: drh tags: trunk)
19:53
Document the NMAKE_ARGS environment variable as well. (check-in: 977fd39c user: mistachkin tags: vsix2015)
19:21
Fix a potential NULL pointer deference on a corrupt database schema. (check-in: dc61b292 user: drh tags: trunk)
18:58
Improve documentation and comments in the MSVC batch build tool. (check-in: ca64ef07 user: mistachkin tags: vsix2015)
18:32
Bring comments on the INSERT code generator up-to-date. Fix the INSERT code generator so that it correctly handles inserts from a SELECT into a virtual table with non-terminal hidden columns. (check-in: 4ac81fac user: drh tags: trunk)
06:18
Work in progress on making VSIX packages for the Visual Studio 2015 CTP. (check-in: 8469d651 user: mistachkin tags: vsix2015)
2015-04-18
19:20
The sqlite3_trace() callback does not try to expand parameters in statements that have no parameter. (check-in: 917e3c36 user: drh tags: trunk)
17:43
Fix an incorrect assert() statement in the CREATE INDEX code generator. (check-in: 2eed41fd user: drh tags: trunk)
16:25
Ensure that if a "ROLLBACK TO" statement is used to rollback (but not close) theoutermost transaction, the xRollbackTo() method of any virtual tables involved in the transaction is invoked. (check-in: e98d481d user: dan tags: trunk)
04:45
Disregard leading zeros when converting strings to 32-bit integers. (check-in: 691cc201 user: drh tags: trunk)
00:22
Fix an incorrect assert() in the sqlite3_trace() logic. (check-in: eabde339 user: drh tags: trunk)
2015-04-17
20:51
Fix a problem affecting some fts3 UPDATE and DELETE statements on order=DESC tables. (check-in: 284c1623 user: dan tags: trunk)
19:41
In the expression-tree comparison routine, do not compiler Expr.iColumn and Expr.iTable for TK_STRING expressions. (check-in: b67bb16c user: drh tags: trunk)
18:52
Always resolve symbols in all ORDER BY clauses of a compound-SELECT, even illegal ORDER BY clauses. (check-in: 6c39ef73 user: drh tags: trunk)
18:22
Remove unnecessary parser error count increments. Let the sqlite3ErrorMsg() take care of doing that. (check-in: 3f3b0f68 user: drh tags: trunk)
17:00
Ensure that filenames passed to the VFS xOpen() function are terminated by 2 '\0' bytes. (check-in: 66eff473 user: dan tags: ota-update)
16:29
Fix a memory leak in sqlite3ota.c that can follow an OOM error. (check-in: c3dc15e7 user: dan tags: ota-update)
16:12
Remove an ALWAYS() that turns out to be false when there is a semantic error on a compound SELECT. (check-in: ad67a67c user: drh tags: trunk)
15:58
Ensure that semantic SQL errors are always reported back up to the syntax parser. Also: Improve the defense against invalid PRAGMA synchronous settings. (check-in: 7aeade9a user: drh tags: trunk)
15:16
Fix a faulty assert() in sqlite3SelectNew(). (check-in: 620d19c3 user: drh tags: trunk)
14:30
Add the tool/fuzzershell.c utility program. (check-in: db8d9af4 user: drh tags: trunk)
12:16
Fix the header comment on the sqldiff utility program. No code changes. (check-in: b355ca3a user: drh tags: trunk)
11:31
Hold the database mutex for the duration of sqlite3session_diff(). (check-in: 6f330501 user: dan tags: sessions)
08:36
Have OTA always specify SQLITE_CONFIG_URI when opening databases. Fix a test issue causing otacrash.test to fail. (check-in: 0d0e5ec0 user: dan tags: ota-update)
2015-04-16
23:04
Restrict the scope of a local-use function in the parser. (check-in: cd6598f4 user: drh tags: trunk)
21:57
Use a heap rather than a bitmap for cell coverage and overlap testing on btree pages in PRAGMA integrity_check. (check-in: e94b2ef2 user: drh tags: trunk)
20:27
Fix a couple of unreachable branches. (check-in: 8f391dff user: drh tags: trunk)
20:10
Fix a boundry-value condition in the phrase poslist extractor of FTS3/4. (check-in: 55d10baf user: drh tags: trunk)
18:49
Be sure to release any xShmLock locks held when closing an OTA handle. (check-in: d0fba72a user: dan tags: ota-update)
18:11
Make sure all cursors are closed when returning from a VDBE subprogram that implements a foreign-key construct. (check-in: d04d354d user: drh tags: trunk)
17:31
Fix the VDBE so that it always uses the original opcode for profiling and debugging even after the pOp pointer has been updated due to a jump. (check-in: 647495cf user: drh tags: trunk)
16:27
Restore SQLITE_FORCE_OS_TRACE to the MSVC makefile, which was removed during a merge. (check-in: c37f4d49 user: mistachkin tags: winTest)
16:22
Fix a faulty assert() in the compound-SELECT code generator. (check-in: 10715b05 user: drh tags: trunk)
16:04
Silently ignore requests to change the PRAGMA synchronous setting to an illegal integer value, rather than raising an assertion. (check-in: e0a88176 user: drh tags: trunk)
15:47
Make sure errors in coding triggers are propagated back up to the parser. (check-in: 928f973c user: drh tags: trunk)
15:05
Add the --backslash option to the command-line shell for testing purposes. (check-in: dd96211e user: drh tags: trunk)
14:33
Fix a faulty assert() in the compound select code generator. (check-in: 9d336be1 user: drh tags: trunk)
14:33
Fix a mismatched printf() argument and format specifier. Add ota files to Makefile.in. (check-in: 5db810a8 user: dan tags: ota-update)
14:13
Improvements to the way VALUES clauses are parsed. (check-in: ec5a493a user: drh tags: trunk)
13:52
Fix a stray backslash character in a printf format string in sessionDiffFindModified() (check-in: abb192a1 user: drh tags: sessions)
12:12
Fix the corruptC.test module due to a change in error message text. (check-in: 7c0deed2 user: drh tags: trunk)
12:09
Checked in the wrong fix. (Closed-Leaf check-in: 4b0f4484 user: drh tags: mistake)
11:56
Use a heap instead of a bitmap for cell overlap and coverage testing of btree pages in PRAGMA integrity_check. (Closed-Leaf check-in: 5619c959 user: drh tags: integrity-check-heap)
10:55
Avoid attempting to rename the *-oal file while it is still open. (check-in: 658c3b0c user: dan tags: ota-update)
08:54
Fix a problem in test file e_reindex.test. (check-in: 5b3de939 user: dan tags: trunk)
07:19
Ensure the sqlite3Select() routine always returns non-zero if an error has occurred. (check-in: b51028ed user: dan tags: trunk)
04:20
Merge updates from trunk. (Closed-Leaf check-in: 22827542 user: mistachkin tags: expShell)
03:56
Move OSTRACE defines so they are visible to all source files that need them. (check-in: 72485c97 user: mistachkin tags: winTest)
03:37
Make sure the sqlite3DebugPrintf() function is defined for OSTRACE as well. (check-in: ae5af704 user: mistachkin tags: winTest)
03:24
Merge updates from trunk. Make OSTRACE changes work on Linux. (check-in: cd154266 user: mistachkin tags: winTest)
00:26
When parsing the schema, ignore any SQL that does not begin with "CREATE". (check-in: d3c00d61 user: drh tags: trunk)
2015-04-15
19:25
Fix a potential one-byte buffer overread in the command-line shell. (check-in: e018f4bf user: drh tags: trunk)
19:13
Add the BtCursor.pPage field which is the current page to which the cursor points, for a very small performance gain. (Leaf check-in: a200e1ea user: drh tags: btree-current-page-cache)
17:26
Prevent the fetchPayload() routine from reporting a cell size that extends off the end of the page on a pathologically corrupted database file. (check-in: f71053cf user: drh tags: trunk)
15:29
Enhance the showdb utility program so that it can read the last partial page of a truncated database file. (check-in: 61d72e17 user: drh tags: trunk)
14:52
Add the --msvc command-line option to the releasetest.tcl script. This is only a partial merge from the winTest branch as the OS_TRACE changes are omitted. (check-in: b8768f12 user: drh tags: trunk)
14:26
Merge all recent trunk enhancements and fixes into the ota-update branch. (check-in: 9bd3e445 user: drh tags: ota-update)
14:14
Merge all recent trunk fixes and enhancements into the sessions branch. (check-in: e65e65f9 user: drh tags: sessions)
13:51
Merge recent trunk fixes and enhancements into the apple-osx branch. (check-in: bfc7142a user: drh tags: apple-osx)
09:16
Remove an incorrect assert() statement from sqlite3Fts3Dequote(). (check-in: bd06eeb8 user: dan tags: trunk)
08:37
Remove a branch that became unreachable due to one of the earlier check-ins today. (check-in: fa0956ed user: drh tags: trunk)
08:20
Fix a problem causing an assert() to fail if a snippet containing 0 tokens was requested from fts3. (check-in: eafd0a1e user: dan tags: trunk)
07:57
Fix the error message generator for illegal token errors so that it does not leak memory if it immediately follows another erroneous SQL statement. (check-in: 3576973f user: drh tags: trunk)
07:34
Remove an incorrect ALWAYS() from the automatic index generator. (check-in: eeb4bd06 user: drh tags: trunk)
07:19
Remove an incorrect ALWAYS() from the table_info pragma. (check-in: 0e087c01 user: drh tags: trunk)
07:10
Change the multiSelectOrderBy() routine to return non-zero if there has been any prior error. (check-in: 14784c31 user: drh tags: trunk)
06:45
Fix a faulty assert() statement in the name resolver associated with the optimization that converts compound selects with ORDER BY COLLATE into subqueries. (check-in: c72324ef user: drh tags: trunk)
05:57
Correctly handle COLLATE operators applied to COLLATE operators in an ORDER BY clause. (check-in: 9e1f837b user: drh tags: trunk)
05:38
Fix a faulty assert() in the sqlite3StrAccumAppend() routine. (check-in: 998cfdb8 user: drh tags: trunk)
05:31
Correctly deal with an unknown collating sequence on an indexed DISTINCT query. (check-in: a0b6e2fe user: drh tags: trunk)
05:20
When adding the implied "LIMIT 1" to the end of a scalar subquery, make sure that subquery is not a VALUES-only query as such queries cannot deal with LIMIT clauses. (check-in: 7c27310b user: drh tags: trunk)
04:51
When doing the (dubious) conversion of double-quoted identifier into string literal for MySQL compatibility, be sure to also clear the iTable value from the Expr entry to avoid an assert. (check-in: d7211b68 user: drh tags: trunk)
04:20
Add a test case for what was formerly thought to be an unreachable condition: when the LHS of an OR operator contains an error and the RHS contains an IN operator. (check-in: 38727425 user: drh tags: trunk)
04:10
An oversize hex literal can cause a parsing error while generating code for constants that are factored out of the main body of the VDBE program. So allow for that case. (check-in: a084690b user: drh tags: trunk)
2015-04-14
19:01
Add the --summary option to the sqldiff command-line tool. (check-in: 88b22761 user: drh tags: trunk)
15:14
Update API documentation to identify many functions as methods on objects. No changes to code. (check-in: b549cbce user: drh tags: trunk)
2015-04-13
23:11
Merge all recent trunk enhances into the apple-osx branch. (check-in: e709d3b4 user: drh tags: apple-osx)
23:05
Add #ifdef magic for HAVE_GETHOSTUUID so that the build will hopefully now work on more verions of MacOS with SQLITE_ENABLE_LOCKING_STYLE turned on. (check-in: 211411d0 user: drh tags: trunk)
22:26
On a DETACH statement, keep all schemas intact except fo the one that is being detached, and thus avoid unnecessary schema reparsing. (check-in: 661db19b user: drh tags: trunk)
21:39
Omit the "pc" or "program counter" variable from the VDBE loop for 0.6% performance increase. (check-in: d2f10c41 user: drh tags: trunk)
19:14
Remove the out2-prerelease VDBE opcode property and its associated code, for a 0.5% performance improvement. (check-in: e29c7f2c user: drh tags: trunk)
17:43
Add a comment to wal.c to explain why a race condition is safe. (check-in: bc33af86 user: dan tags: trunk)
14:44
Remove a faulty assert() from the btree balancing logic. (check-in: d06669d9 user: drh tags: trunk)
14:08
Test that if the definition of a collation sequence is changed and VACUUM run, the new database contains records sorted in the (new) correct order. (check-in: ce6eaac1 user: dan tags: trunk)
14:03
Remove an unreachable branch from the VACUUM logic. (check-in: 65ace4b0 user: drh tags: trunk)
12:45
Remove an unreachable branch from the vdbeSorterCompareInt() routine. (check-in: f666ef06 user: drh tags: trunk)
2015-04-12
21:28
Update the version number to 3.8.10 because of the new sort optimizations from check-in [79326d6eec]. (check-in: bd2cfa1d user: drh tags: trunk)
17:35
Fix a problem with a stale Select.pWith pointer when a CTE is used together with a compound query and an ORDER BY clause. (check-in: 9a453f52 user: drh tags: trunk)
01:33
Merge all recent trunk enhancements into the sessions branch. (check-in: 5f14f34f user: drh tags: sessions)
01:22
Avoid problems when a query has a GROUP BY and an ORDER BY but no FROM clause. (check-in: e527d96a user: drh tags: trunk)
2015-04-11
20:44
Optimizations for VACUUM, CREATE INDEX and some cases of ORDER BY. (check-in: 79326d6e user: dan tags: trunk)
20:20
Fix a problem with sorting large amounts of partially ordered data. (check-in: acca97ef user: dan tags: trunk)
18:45
Merge latest trunk changes with this branch. (Closed-Leaf check-in: cf7590f6 user: dan tags: sorter-opt)
17:09
Merge the sessions-diff branch with this one. (check-in: 805baa57 user: dan tags: sessions)
13:49
Add the --changeset option to the sqldiff utility program, for generating a sessions changeset file instead of an SQL diff. (check-in: f9a3a839 user: drh tags: trunk)
13:48
The --changeset option now appears to be working. (Closed-Leaf check-in: 1a2e2803 user: drh tags: sqldiff-changeset)
12:07
First complete attempt to generate a working changeset. Still contains bugs. (check-in: 5611fa9b user: drh tags: sqldiff-changeset)
11:53
Update tests in whereD.test to account for the change in the previous commit. (check-in: da49700c user: dan tags: trunk)
11:44
Do not assume an index contains unique entries unless it is declared UNIQUE and NOT NULL is specified for all columns. Fix for [7b4fee9f6c]. (check-in: e3b1f625 user: dan tags: trunk)
02:08
Detect and report oversized records constructed from multiple zeroblobs. (check-in: 9e139afd user: drh tags: trunk)
2015-04-10
21:16
Minor build enhancements for MSVC. (check-in: 40c417a7 user: mistachkin tags: trunk)
19:41
Work toward adding the --changeset option to the sqldiff utility program. Changes are incomplete. This is an incremental check-in. (check-in: 463e38d7 user: drh tags: sqldiff-changeset)
16:05
In sqlite3_declare_vtab(), avoid accessing the database structure until after the "api-armour" safety-check has completed and the db mutex has been obtained. (check-in: 860e4f8a user: dan tags: trunk)
12:04
Fix foreign key CASCADE for cases where the parent key is an INTEGER PRIMARY KEY and the parent table contains other columns named "rowid", "_rowid_", and "oid". (check-in: ed3cbaab user: drh tags: trunk)
08:28
Update this branch with the latest changes from sorter-opt. (Leaf check-in: 08c0b19b user: dan tags: insert-select-opt)
08:20
Update this branch with latest trunk changes. (check-in: 60be9c1c user: dan tags: sorter-opt)
07:55
Do not allow virtual table constructors to be called recursively. (check-in: 0a72726d user: dan tags: trunk)
2015-04-09
19:39
Fix incorrect column names in UPDATE statements generated by the sqldiff utility. (check-in: ee53b460 user: drh tags: trunk)
19:19
Updates to comments describing the changeset and patchset formats. (check-in: 5342f721 user: dan tags: sessions)
18:14
Add the --primarykey option to the sqldiff tool, which causes it to use the schema-defined PRIMARY KEY. (check-in: 5063f907 user: drh tags: trunk)
16:30
Remove two pointless assert() statements. This should silence harmless compiler warnings reported at https://bugzilla.mozilla.org/show_bug.cgi?id=1152845 (check-in: 83b342a4 user: drh tags: trunk)
13:40
Fix comment typos in the sqldiff.c utility program. (check-in: 32ab2bb9 user: drh tags: trunk)
13:34
Add the "sqldiff" utility program. (check-in: 88da5bf5 user: drh tags: trunk)
11:24
Remove a variable initializion to silence a harmless compiler warning. (check-in: 79861adb user: drh tags: trunk)
2015-04-08
16:43
Fix problems in the sessions module causing it to produce spurious SQLITE_NOMEM errors when handling SQL text or blob values zero bytes in size. (check-in: b9459d59 user: dan tags: sessions)
16:01
Add experimental API sqlite3session_diff(). (Closed-Leaf check-in: c4340b2e user: dan tags: sessions-diff)
14:01
Merge all changes for version 3.8.9 into the ota-update branch. (check-in: ec9d907a user: drh tags: ota-update)
12:47
Merge in all version 3.8.9 changes from trunk. (check-in: 30121870 user: drh tags: apple-osx)
12:16
Version 3.8.9 (check-in: 8a8ffc86 user: drh tags: trunk, release, version-3.8.9)
2015-04-07
23:10
Merge printf() width and precision overflow fixes from trunk. (check-in: aeca95ac user: drh tags: sessions)
21:18
Merge updates from trunk. (check-in: c458db41 user: mistachkin tags: expShell)
15:39
Avoid signed integer overflow when converting oversized in-line integer widths and precisions in printf(). (check-in: 8e4ac2ce user: drh tags: trunk)
14:38
Another change to avoid a problem caused by integer overflow in the printf() code. (check-in: 95625ef3 user: dan tags: trunk)
13:28
Further changes to guard against integer overflow in the width and precision of printf() arguments. (check-in: 5ce4e7d7 user: drh tags: trunk)
12:41
Guard against excessive width and precision in floating-point conversions in the printf routines. (check-in: c494171f user: drh tags: trunk)
2015-04-06
12:08
Merge obscure problem fixes from trunk. (check-in: 271c110b user: drh tags: sessions)
11:04
Fix a problem with fts3 prefix terms within phrase queries on "order=DESC" tables with a mix of negative and positive rowids. (check-in: 3ad829e5 user: dan tags: trunk)
09:05
Fix a problem with fts3 prefix terms within phrase queries on "order=DESC" tables with a mix of negative and positive rowids. (Closed-Leaf check-in: 0cdf5028 user: dan tags: fts3-prefix-query-fix)
2015-04-04
16:49
Fix a problem with resolving ORDER BY clauses that feature COLLATE clauses attached to compound SELECT statements. (check-in: edc1de2a user: dan tags: trunk)
16:43
Fix a problem with resolving ORDER BY clauses that feature COLLATE clauses attached to compound SELECT statements. (Closed-Leaf check-in: 427b50fb user: dan tags: compound-order-by-fix)
00:02
Enhance the 'releasetest.tcl' tool to support MSVC. (check-in: f664bfdc user: mistachkin tags: winTest)
2015-04-03
20:33
Disable the SQLITE_FCNTL_WAL_BLOCK feature for now. It needs more work and is not yet ready for release. (check-in: 4ae9a3ac user: drh tags: trunk)
18:33
Add source code to the "showlocks" utility program in the tool/ subdirectory. (check-in: 6868cc66 user: drh tags: trunk)
2015-04-02
17:46
Fix build with OSTRACE enabled on Windows when building using separate source files. (check-in: 5f6e3580 user: mistachkin tags: winTest)
15:24
Disable e_walauto.test on OpenBSD, as it requires a coherent cache. (check-in: 90701227 user: dan tags: trunk)
09:06
Fix a problem in vdbesort.c to do with caching unpacked records. (check-in: 80a00539 user: dan tags: sorter-opt)
2015-04-01
18:22
Merge latest trunk changes with this branch. (check-in: 4621b2ee user: dan tags: sorter-opt)
18:20
When vacuuming an index that uses no collations other than BINARY, assume that the order of index entries will not be changed by the VACUUM. (check-in: e403460b user: dan tags: sorter-opt)
16:39
Merge recent enhancements from trunk. (check-in: aea439bd user: drh tags: sessions)
16:18
Reduce the CPU used by CREATE INDEX statements by taking better advantage of the fact that keys are inserted in sorted order. (check-in: 592cdc5d user: dan tags: sorter-opt)
16:13
Merge all recent trunk fixes and enhancements into the apple-osx branch. (check-in: 71b6f507 user: drh tags: apple-osx)
13:21
Improved detection and suppression of endless loops in clearDatabasePage(). (check-in: 30011ad2 user: drh tags: trunk)
01:26
The build is still broken. Multiple definitions of sqlite3OSTrace when compiled using separate source files. (check-in: 5c965a71 user: drh tags: winTest)
2015-03-31
19:40
On windows, flush the mapping view when syncing content to disk. (check-in: a828e73d user: drh tags: trunk)
19:17
Set the winShm.id member when it is going to be traced. (check-in: fa7916b6 user: mistachkin tags: winTest)
19:06
Build fixes for OSTRACE enhancements. (check-in: f79c236f user: mistachkin tags: winTest)
18:18
Path portability enhancements for mptester.exe. (check-in: c8694657 user: drh tags: winTest)
18:05
Add the "mptest" target to main.mk. Change TRUNCATE and PERSIST to DELETE for mptest.c on Windows because of problems trying to delete the journal. (check-in: ea697e6d user: drh tags: trunk)
17:58
Path handling portability enhancements for mptester. (check-in: da49634b user: mistachkin tags: winTest)
17:45
Testing enhancements on Windows. (check-in: 9cc70eee user: mistachkin tags: winTest)
17:32
Change the sqlite3_log() message generated on a retry after delay in os_win to be an SQLITE_NOTICE instead of SQLITE_IOERR. (check-in: 5d533eee user: drh tags: trunk)
17:01
Fix configure.ac and Makefile.in so that they generate pkgIndex.tcl correctly. (check-in: 3deff252 user: drh tags: trunk)
16:42
Minor tweaks to the MSVC Makefile. (check-in: 7244ea59 user: mistachkin tags: trunk)
16:33
Handle very large URI pathnames for in-memory shared-cache databases. (check-in: 586a94e8 user: drh tags: trunk)
15:15
Fix harmless compiler warnings in lemon.c (check-in: bbe7dcda user: drh tags: trunk)
14:31
Fix the corruptJ.test case so that it works with and without SQLITE_SECURE_DELETE. (check-in: 0c0ecfd6 user: drh tags: trunk)
14:18
Additional logging information output by mptester. (check-in: 0cbbf6e4 user: drh tags: trunk)
13:46
Add the "mptest" target to Makefile.msc (check-in: 1e814e0b user: drh tags: trunk)
11:42
Ensure that comparison operators do not mess up the MEM_Dyn flag on registers when reverting affinity changes. (check-in: 02e3c88f user: drh tags: trunk)
00:10
Merge all recent trunk enhancements and fixes into the sessions branch. (check-in: df94e61f user: drh tags: sessions)
2015-03-30
23:52
Merge the latest trunk enhancements, and especially the fix for the infinite loop on a DROP TABLE in a corrupt database, into the apple-osx branch. (check-in: 4d42bf5e user: drh tags: apple-osx)
23:43
Prevent a possible infinite loop when trying to DROP a table from a corrupt database. (check-in: 395bb3e6 user: drh tags: trunk)
15:45
Merge sorter optimizations with this branch. (check-in: 9bf1cfb4 user: dan tags: insert-select-opt)
12:06
Improve performance of multi-field sorts where the first field has a low cardinality. (check-in: 601e7b6b user: dan tags: sorter-opt)
09:58
Remove some unnecessary code from vdbesort.c. (check-in: b58191e9 user: dan tags: sorter-opt)
2015-03-28
19:56
Further optimizations for sorting records that begin with integer or text values. (check-in: 24fe9f25 user: dan tags: sorter-opt)
2015-03-27
18:22
Merge updates from trunk. (Closed-Leaf check-in: 45acf6a8 user: mistachkin tags: winViewFlush)
18:20
Enhancements to OSTRACE usage in the Win32 VFS. (check-in: ab580029 user: mistachkin tags: trunk)
02:27
Fix the ".testctrl imposter" command in the command-line shell to be consistent in error reporting and results with the other .testctrl commands. (check-in: 0ec08ba8 user: drh tags: trunk)
00:21
Using MSVC, get the sqlite3IoTrace variable working with the USE_STDCALL and/or DYNAMIC_SHELL options. (check-in: fe976c91 user: mistachkin tags: trunk)
00:19
In the MSVC Makefile, make the DYNAMIC_SHELL option work without USE_STDCALL. (check-in: 25b46a9c user: mistachkin tags: trunk)
2015-03-26
23:36
When syncing a memory mapped file on Windows, flush the mapped view as well. (check-in: df204049 user: mistachkin tags: winViewFlush)
18:24
Revise Win32 locking test to account for recent log message changes. (check-in: 1bc76339 user: mistachkin tags: trunk)
17:04
Avoid leaving the malloc subsystem in a partially initialized state if the low-level initialization callback fails. (check-in: 3e872011 user: drh tags: trunk)
15:27
Provide source code line numbers for errors in the Windows VFS generated by the winLogIoerr() routine. (check-in: b5da0d93 user: drh tags: trunk)
14:29
Fix a harmless compiler warning in FTS3. (check-in: 1688f60c user: drh tags: trunk)
12:38
Merge sorter optimization into this branch. (check-in: aeb8e9a9 user: dan tags: insert-select-opt)
11:55
Optimize cases where all the sorter is sorting a set of records that all begin with integer values, or that all begin with text values to be compared using BINARY. (check-in: ce5ad17c user: dan tags: sorter-opt)
2015-03-25
18:29
Change an unreachable branch into an assert(). (check-in: fb076b28 user: drh tags: trunk)
17:35
Fix the saveCursorPosition() routine in btree.c so that it works correctly for a eState=CURSOR_SKIPNEXT cursor. (check-in: 37866b4d user: drh tags: trunk)
15:23
Extend [52e73eec] so that the IS optimization may be used on primary keys with more than 3 columns. (check-in: 4e8796af user: dan tags: ota-update)
13:06
Reactivate an older assert() (adding an "|| CORRUPT_DB" term) and add a new assert() in btree.c. (check-in: 1e96520a user: drh tags: trunk)
12:05
Add two new assert()s to the sqlite3BtreeDataSize() method. (check-in: 42d1793d user: drh tags: trunk)
2015-03-24
22:00
Add SQLITE_STDCALL and SQLITE_CDECL macros on public function definitions. (check-in: cae3239a user: mistachkin tags: trunk)
21:54
Further simplifications to the amalgamation builder. (Closed-Leaf check-in: e826cd7d user: drh tags: stdcall)
21:52
Update the 'mksqlite3c-noext' tool as well. (check-in: a5322566 user: mistachkin tags: stdcall)
21:34
Fix a couple comment typos in a tool script. No changes to code. (check-in: 83421af6 user: mistachkin tags: trunk)
21:27
Add SQLITE_STDCALL and SQLITE_CDECL macros on public function definitions. (check-in: 242f09d4 user: mistachkin tags: stdcall)
19:43
Update this branch with latest trunk changes. (check-in: 3ccd64ef user: dan tags: insert-select-opt)
19:02
Merge all recent trunk enhancements into the sessions branch. (check-in: 54aaa6f2 user: drh tags: sessions)
18:49
Merge the latest trunk enhancements into the apple-osx branch. (check-in: a2bd81e5 user: drh tags: apple-osx)
18:21
Merge the latest trunk changes into this branch. (check-in: 9d9b6c88 user: dan tags: ota-update)
18:19
Suppress a compiler warning that was appearing with SQLITE_THREADSAFE=0. (check-in: 436314b5 user: drh tags: trunk)
16:43
Prevent a virtual table from being destroyed while it is in use. Also: replace Vdbe.inVtabMethod with sqlite3.nVDestroy. Simplify the EXPLAIN output for P4.pVtab to only show the sqlite3_vtab pointer. (check-in: cbeb9a1a user: drh tags: trunk)
14:57
Add tests to check that attempting to DROP a virtual table while it is use does not cause problems. (Closed-Leaf check-in: 5ee625b1 user: dan tags: nVDestroy)
14:57
Simplify the EXPLAIN output of virtual table P4 parameters to only show the pointer to the sqlite3_vtab object and omit the sqlite3_module object. (Closed-Leaf check-in: 85610bbb user: drh tags: nVDestroy)
14:05
More defenses against virtual table being deleted out from under a running statement. (check-in: 116c9982 user: drh tags: nVDestroy)
13:32
Prevent a virtual table from being destroyed while it is in use. (check-in: fba674c0 user: drh tags: nVDestroy)
12:51
Replace the Vdbe.inVtabMethod field with the sqlite3.nVDestroy counter. (check-in: 9faefb96 user: drh tags: nVDestroy)
2015-03-23
21:32
Disable loadable extensions in the command-line shell on VxWorks user-space. (check-in: 0ee2d38d user: drh tags: trunk)
19:55
Track total memory usage using a 64-bit integer on 64-bit systems. Add the sqlite3_status64() interface. Make the sqlite3_status() and sqlite3_status64() interfaces atomic using mutexes and verify correct mutex operation using assert() statements. (check-in: 6fc4e79a user: drh tags: trunk)
19:16
Fix a non-C89 variable declaration that causes problems for MSVC. (Closed-Leaf check-in: 3de085ea user: drh tags: status64)
18:52
Add the SQLITE_PTRSIZE macro. Use it to help sqlite3_status() run faster on 32-bit systems. (check-in: c742bd60 user: drh tags: status64)
17:25
Add the sqlite3_status64() interface. Make the new interface and the legacy sqlite3_status() both atomic and threadsafe. Check threadsafety using assert()s. (check-in: 1ce8e8fa user: drh tags: status64)