SQLite

Timeline
Login

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

388 check-ins using file main.mk version 9abb506e

2019-09-03
19:40
Fix a buffer overread that could occur when running fts5 prefix queries inside a transaction. Leaf check-in: b54aa18b user: dan tags: branch-3.18
18:43
Fix a buffer overread that could occur when running fts5 prefix queries inside a transaction. Leaf check-in: 0770363b user: drh tags: branch-3.19
17:55
Disable the undocumented rtreenode() SQL function that is only used for testing, except when doing a build that is specifically intended for testing. check-in: 34cd2d92 user: drh tags: branch-3.19
17:46
Disable the undocumented rtreenode() SQL function that is only used for testing, except when doing a build that is specifically intended for testing. check-in: 0a1cce49 user: drh tags: branch-3.18
2018-12-19
17:05
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. Cherrypick from commit [8201f4e1] on branch-3.18. check-in: 553a923c user: dan tags: branch-3.19
14:44
Fix a crash that can follow an OOM in fts3 on this branch. check-in: de078148 user: dan tags: branch-3.19
01:44
Add extra defenses against strategically corrupt databases to fts3/4. check-in: 4f315e4a user: drh tags: branch-3.19
01:38
Add extra defenses against strategically corrupt databases to fts3/4. check-in: 4bb21d82 user: drh tags: branch-3.18
2018-03-16
07:49
Fix a problem in test script thread001.test causing a spurious "-1 files were left open" error when run separately. Cherrypick of [1774f1c3b]. check-in: 6cf8172d user: dan tags: branch-3.19
2018-03-06
11:49
Avoid running a couple of tests in crash8.test that depend on the presence of the journal file if running on an F2FS file-system that does not require a journal file. Cherrypick of [797e02e0]. check-in: eeedfc74 user: dan tags: branch-3.19
2018-02-02
08:14
In SQLITE_ENABLE_BATCH_ATOMIC_WRITE builds on F2FS file-systems, invoke SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE if an SQLITE_FCNTL_COMMIT_ATOMIC_WRITE call fails. Also, do not use an atomic transaction to create the initial database. This is because if an error occurs while writing to the db file, any changes to the file-size do not seem to be rolled back automatically. The only time this matters is when the file was 0 bytes in size to start with. Cherrypick of [b3122db154]. check-in: 22a228ed user: dan tags: branch-3.19
08:08
Update a couple of test scripts so that they work on F2FS file-systems that support atomic transactions. Cherrypick of [49e58e645e]. check-in: 1b394679 user: dan tags: branch-3.19
2018-01-13
14:07
Fix a typo in test file crash8.test. check-in: 4951d91d user: dan tags: branch-3.19
13:21
Fix various problems in test scripts preventing "make test" from passing on F2FS file-systems with the "atomic-write" feature. Cherrypick of [56d93d07]. check-in: 6a296d4d user: dan tags: branch-3.19
2017-08-18
19:28
Version 3.19.4 check-in: 605907e7 user: drh tags: release, version-3.19.4, branch-3.19
2017-07-31
13:22
Use batch atomic writes when running on a recent F2FS filesystem, if compiled with SQLITE_ENABLE_BATCH_ATOMIC_WRITE. check-in: 2dd0c77d user: drh tags: branch-3.19
13:11
Move the generation of output column names earlier, to right after name resolution and before query transformations such as flattening. This prevents the names from getting mangled by query transformations, and obviates hacks in the query flattener that attempt to work around the name mangling. The resulting code is smaller and faster and gives more consistent output. This is a fix for ticket [de3403bf5ae5f72ed] and a cherry-pick of check-in [09834279aeca3bda] check-in: 499942b3 user: drh tags: branch-3.19
12:19
Correctly handle an "INTEGER PRIMARY KEY UNIQUE" column in a WITHOUT ROWID table. This is a fix for ticket [bc115541132dad136], cherry-picked from check-in [5216bfb73f1a49bdd8] check-in: 322a2ede user: drh tags: branch-3.19
12:07
Increase the version number to 3.19.4 check-in: b77f297d user: drh tags: branch-3.19
12:04
Merge further enhancements to the batch-atomic-write subsystem. Leaf check-in: 4be4265d user: drh tags: batch-atomic-write-3.19
2017-07-28
02:02
Backport of all batch-atomic-write changes through check-in [67bad7fb9b] check-in: def55027 user: drh tags: batch-atomic-write-3.19
2017-07-27
00:27
Do now allow the geometry object in the right operand of a MATCH operator in the RTREE extension to be inpersonated by a BLOB literal. check-in: 24c9cd46 user: drh tags: branch-3.19
2017-07-21
07:56
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 changes is a cherry-pick of [f0f49224] via [69906880cee] and is ultimately inspired by check-in [72de49f2]. check-in: 8201f4e1 user: drh tags: branch-3.18
2017-06-29
12:59
The query planner examines the values of bound parameters to help determine if a partial index is usable. Reprepares may happen if the bindings change. This behavior is disabled by the QPSG setting. check-in: c322bfa2 user: drh tags: trunk
12:54
Implement xUnlink, xShmMap, and xShmUnmap for lsm1 on Win32. Closed-Leaf check-in: 680cc064 user: mistachkin tags: lsm-vtab
01:23
Fix the exprCompareVariable() routine so that it works for non-UTF8 text. Closed-Leaf check-in: 25acd965 user: drh tags: partial-index-variables
00:20
Implement xRemap for lsm1 on Win32. Also, zero file handle when closing it. check-in: 93c9aa7d user: mistachkin tags: lsm-vtab
2017-06-28
21:47
Alternative implementation of exprCompareVariable(). check-in: b959c629 user: drh tags: partial-index-variables
21:36
Implement xLock and xTestLock for lsm1 on Win32. check-in: 9112117d user: mistachkin tags: lsm-vtab
18:25
Make the query planners use of partial indexes based on bound variables responsive to the SQLITE_DBCONFIG_ENABLE_QPSG setting. check-in: a934dd14 user: drh tags: partial-index-variables
18:07
Merge the in the latest enhancements from trunk. check-in: 8f63c586 user: drh tags: partial-index-variables
17:29
Instead of the new sqlite3_prepare_v3() interface, provide the SQLITE_DBCONFIG_PREPARE_FLAGS interface which sets the flags on the single next call to sqlite3_prepare_v2() or its cousins. Closed-Leaf check-in: 942c3ef8 user: drh tags: dbconfig-prepare-flags
15:56
Incorporate recent trunk changes. Closed-Leaf check-in: 62b8269b user: drh tags: prepare_v3
15:17
Fix harmless compiler warnings in the CSV extension. check-in: f02a5459 user: drh tags: trunk
15:01
Faster parser stack overflow detection. check-in: 36e54cd8 user: drh tags: trunk
14:26
Minor tweak to the SQL grammar to make the parser tables a few bytes smaller. check-in: cc4810b2 user: drh tags: trunk
13:47
In the lemon-generated parser, store the number of symbols on the RHS of each rule as a negative number and add it to the stack pointer, rather than storing the value as a positive and subtracting it. This makes the parser faster. check-in: b362f0d8 user: drh tags: trunk
11:56
In the lemon-generated parser, automatically promote SHIFTREDUCE actions on nonterminal systems to pure REDUCE actions, for a performance enhancement. check-in: c46d94a8 user: drh tags: trunk
01:21
Simplify error handling logic in sqlite3_exec() to save about 40 bytes. check-in: 6480916c user: drh tags: trunk
01:12
Minor code simplification in the ALTER TABLE logic. check-in: bfc4e7f3 user: drh tags: trunk
00:55
Avoid an unnecessary call to sqlite3XPrintf() in the code generator, for a performance improvement. check-in: 29d6ceb3 user: drh tags: trunk
2017-06-27
23:36
Add SQLITE_DBCONFIG_ENABLE_QPSG that forces the query planner stability guarantee. This is the fix for ticket [b9f010107724c] check-in: b82efd2a user: drh tags: trunk
22:33
Improve a local variable name. check-in: d0f6973d user: mistachkin tags: lsm-vtab
22:27
Initial work on porting lsmtest to Win32. check-in: 7e669d9b user: mistachkin tags: lsm-vtab
18:15
Implement xFullpath for lsm1 on Win32. check-in: dbe9c8aa user: mistachkin tags: lsm-vtab
16:39
Fix a virtual table problem that can occur when the vtab is on the RHS of a LEFT JOIN and there is a MATCH constraint in the ON clause, or when the vtab is in a sub-query that is the RHS of a LEFT JOIN and there is a MATCH constraint in the WHERE clause of the sub-query. check-in: 87b38166 user: dan tags: trunk
06:28
Minor corrections to the previous check-in. check-in: e1cf8a78 user: mistachkin tags: lsm-vtab
05:59
Work in progress porting lsm1 to Win32. check-in: 2017636e user: mistachkin tags: lsm-vtab
2017-06-26
21:08
Add the -withoutnulls option to the "db eval" method in the TCL interface. check-in: 18f0616e user: drh tags: trunk
18:42
The ".import" command of the shell, and the csv virtual table extension both ignore a single UTF-8 BOM at the beginning of their input. check-in: 7c15d762 user: drh tags: trunk
16:13
Add the "-unsetnull 1" option to the "sqlite3" command in the TCL interface. Closed-Leaf check-in: cbe441b2 user: drh tags: unsetnull-option
14:46
Make sure sqlite3VdbeSetVarmask() is never invoked when QPSG is enabled. Closed-Leaf check-in: ebcfa73e user: drh tags: enable-QPSG
13:57
Add the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner stability guarantee. This involves refactoring the sqlite3.flags bitvector to carve out a free bit to use. check-in: 7076e828 user: drh tags: enable-QPSG
11:46
Remove an invalid assert() from lsm test code. check-in: ca8a7e99 user: dan tags: lsm-vtab
08:24
Fix another problem with multi-threaded mode in the LSM test code. check-in: 461ced77 user: dan tags: lsm-vtab
07:31
Update a test case to reflect the fact that the lsm blocksize is configured in KiB. And defaults to 1024, not 2048. check-in: d7015475 user: dan tags: lsm-vtab
06:53
Fix some compiler warnings in lsm_file.c. check-in: 23f16382 user: dan tags: lsm-vtab
2017-06-24
19:21
Disable shell tests for the .schema command if virtual tables are not available. check-in: c8186874 user: drh tags: trunk
18:10
Consider the values bound to SQL variables when determining whether or not a partial index may be used. check-in: 7b59c353 user: dan tags: partial-index-variables
16:35
Make sure the config.h header is included by ctime.c, if that header exists. check-in: c2ea6293 user: drh tags: trunk
16:03
Query planner tuning: When deciding between two plans with the same cost, bias the selection toward the one that does not use the sorter. check-in: f0ec36d4 user: drh tags: trunk
13:31
Make sure enough memory is allocated for pathological quoting cases when computing a quoted table name in the command-line shell. check-in: 0583b84a user: drh tags: trunk
2017-06-23
15:47
When generating individual loops for each ORed term of an OR scan, move any constant WHERE expressions outside of the loop, as is done for top-level loops. check-in: 712267c9 user: dan tags: trunk
2017-06-22
16:51
When generating individual loops for each ORed term of an OR scan, move any constant WHERE expressions outside of the loop, as is done for top-level loops. Closed-Leaf check-in: e4a022be user: dan tags: or-optimization
2017-06-21
01:36
Enable pragma virtual tables for the integrity_check, quick_check, and foreign_key_check pragmas. check-in: 118f7bb3 user: drh tags: trunk
2017-06-20
18:19
Rename the azCompileOpt global constant to avoid a harmless compiler warning about a name conflict with a local variable. check-in: 94e420ec user: drh tags: trunk
17:43
Ensure that the query planner knows that any column of a flattened LEFT JOIN can be NULL even if that column is labeled with "NOT NULL". Fix for ticket [892fc34f173e99d8]. check-in: 48346268 user: dan tags: trunk
2017-06-19
11:44
Experimental "PRAGMA secure_delete=FAST" pragma. The intent is to overwrite deleted content with zeros without increasing the amount of disk I/O. Closed-Leaf check-in: f1682f0f user: drh tags: fast-secure-delete
2017-06-17
19:06
Avoid adding an artifical "LIMIT 1" on scalar subqueries that do not need it. This seems like a pointless optimization as it makes minimal run-time difference but does increase code complexity. Parked on a branch for historical reference. Leaf check-in: c21628e9 user: drh tags: subquery-limit-opt
18:49
Fix a missing comma in the previous check-in. check-in: f3db02f4 user: drh tags: trunk
17:55
Rework the code in ctime.c a bit to report on more compile time options. And to only output configuration options passed in to SQLite, not the default values of #define symbols set automatically. Also generate the large array in ctime.c using new script tool/mkctime.tcl, instead of entering it manually. check-in: 9a443397 user: dan tags: trunk
17:29
Ensure that the value of the THREADSAFE symbol is always included when reporting compile time options, even if it was not explicitly configured. Closed-Leaf check-in: 95141c64 user: dan tags: ctime-refactor
16:39
Add extra test cases for sqlite3changeset_apply() and ALTER TABLE ADD COLUMN. check-in: 603838fc user: dan tags: trunk
09:59
Version 3.18.2 check-in: 036ebf72 user: drh tags: release, branch-3.18, version-3.18.2
00:39
When building an ephemeral table of integers, do not assume that the table does not already contain N if the insert cursor points to N-1. Fix for ticket [61fe9745]. Also increase the version number to 3.18.2. This is the release candidate. check-in: e1b71029 user: drh tags: branch-3.18
2017-06-16
19:51
Rework the code in ctime.c a bit to report on more compile time options. And to only output configuration options passed in to SQLite, not the default values of #define symbols set automatically. Also generate the large array in ctime.c using new script tool/mkctime.tcl, instead of entering it manually. check-in: bc1951d6 user: dan tags: ctime-refactor
18:31
Minor refactoring change to clarify how ATTACH works. No functional changes. check-in: 3944a32e user: drh tags: trunk
13:43
Prevent pagesize changes on VACUUM in encrypted databases even when running the VACUUM on an attached database. check-in: 11693849 user: drh tags: trunk
13:41
Version 3.18.1 check-in: 77bb4623 user: drh tags: release, branch-3.18, version-3.18.1
12:15
An unintentional fork was created due to a typo when creating branch-3.18. This check-in resolves the fork and is the 3.18.1 release candidate. check-in: 20e5ffb1 user: drh tags: branch-3.18
2017-06-15
16:56
Move the "shell_add_schema()" SQL function used by the ".schema" command of the command-line shell to a different spot in the shell.c source file so that it is not in the middle of an unrelated module. check-in: 254617a1 user: drh tags: trunk
16:45
Fix typo and improve the wording of the description of "Metadata" in the output of the sqlite3_analyzer tool. check-in: ca1ff707 user: drh tags: trunk
15:06
Merge the latest changes from trunk. check-in: 60105c22 user: drh tags: lsm-vtab
13:07
Fix harmless compiler warnings in the shell.c file check-in: 9afd7a2f user: drh tags: trunk
12:50
Improvements to the ".tables" command in the command-line shell so that it shows the name of all schemas if the name is anything other than "main". check-in: c7f778b7 user: drh tags: trunk
12:21
In the command-line shell, enhance the ".schema" command show that it shows the schema for ATTACH-ed databases in addition to "main". check-in: 48e08628 user: drh tags: trunk
07:47
Increase the version number to 3.18.1. check-in: 4be2eba8 user: drh tags: branch-3.18
00:52
Enhance the sqlite3_analyzer.exe utility so that it computes and shows the number of bytes of metadata on btree pages and per table and index entry. check-in: 43ad41ef user: drh tags: trunk
2017-06-13
16:52
Fix sqlite3rbu_close() so that the pzErrmsg parameter may be passed NULL. check-in: c433672d user: dan tags: trunk
04:31
Fix the processing of double-negatives in WHERE clause constraints with STAT4. Ticket [cfa2c908f2182] check-in: 35b34bdf user: drh tags: trunk
2017-06-12
23:44
Ensure pointer map entries are always added when a row that does use overflow pages replaces one that does not in an auto-vacuum database. Fix for [fda22108]. check-in: 30c50f0e user: drh tags: branch-3.18
2017-06-11
20:17
Fix an off-by-one error that messes up the display of loop codes in the ".wheretrace" debugging output for queries with more than 62 candidate loops when SQLITE_ENABLE_WHERETRACE is on. check-in: 0bbdaf28 user: drh tags: trunk
19:51
When reusing a materialized view, make sure the estimated number of output rows is correctly initialized to avoid confusing the query planner. check-in: 87aceb41 user: drh tags: trunk
19:40
Fix the sessiondiff test module so that it does not run if the session extension is not enabled. check-in: 8f92b7a6 user: drh tags: trunk
18:26
Fix a potential null-pointer deference following OOM introduced by check-in [e39795d7] (unreleased). check-in: a2f77285 user: drh tags: trunk
2017-06-09
15:14
Merge enhancements and fixes from trunk. check-in: 3fd050c3 user: drh tags: prepare_v3
11:43
Update the documentation to make it clear that the table name parameter to sqlite3_table_column_metadata() may not be NULL. check-in: 2881ab1e user: drh tags: trunk
02:27
Adjust the implementation of the ".selftest" feature of the shell to avoid using the deprecated sqlite3_get_table() interface. check-in: 3168e2c9 user: drh tags: trunk
2017-06-08
14:35
Add a testcase() to confirm that an OOM on sqlite3DbStrNDup() is handled correctly in trigger.c. check-in: 343e5599 user: drh tags: trunk
14:26
Version 3.19.3 check-in: 0ee482a1 user: drh tags: release, version-3.19.3, branch-3.19
11:32
Fix an issue with OPT_FEATURE_FLAGS in configure.ac. check-in: 97b5c4a5 user: drh tags: branch-3.19
11:27
Increase the version number to 3.19.3. check-in: 903fff53 user: drh tags: branch-3.19
11:26
Ensure pointer map entries are always added when a row that does use overflow pages replaces one that does not in an auto-vacuum database. Fix for [fda22108]. check-in: 9478106c user: drh tags: branch-3.19
11:14
Ensure pointer map entries are always added when a row that does use overflow pages replaces one that does not in an auto-vacuum database. Fix for [fda22108]. check-in: b30dfba8 user: dan tags: trunk
2017-06-07
22:32
In SQLITE_DEBUG mode, attempt to log the page number of the database that contained the problem when SQLITE_CORRUPT errors are seen. check-in: e39795d7 user: drh tags: trunk
19:46
Fix another lsmtest build problem. Add the "-trans BOOLEAN" option to "lsmtest speed2". check-in: 61853bc1 user: dan tags: lsm-vtab
16:25
Merge in trunk enhancements. check-in: f8bbb608 user: drh tags: prepare_v3
10:55
Cause the ANALYZE command to build sqlite_stat1 table entries for empty tables with the assumption that such tables really contain 10 elements. This gives better query plans for tables that are truely empty, but is likely to cause problems in legacy systems, so the change is kept off trunk. Some TCL tests fail on this check-in due to the new stat1 entries. Leaf check-in: c81f260c user: drh tags: analyze-empty-tables
2017-06-06
18:20
Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated number of rows in tables that lack sqlite_stat1 entries. check-in: 234ede26 user: drh tags: trunk
16:14
Fix a threading problem in lsm test code. check-in: 501238b9 user: dan tags: lsm-vtab
2017-06-05
19:20
Fix a subtle bug in the remember UDF of the kvtest.exe utility program. check-in: 9eea3670 user: drh tags: trunk
16:33
Fix a bug in test_fs.c that occurs when the first component of a path contains a GLOB or LIKE escape character. check-in: 73c70590 user: dan tags: trunk
13:28
For the kvtest utility, add the --vacuum option to "kvtest stat" and also run PRAGMA integrity_check with "kvtest stat". check-in: f3c25df4 user: drh tags: trunk
12:29
Fix the column width deduction logic in the command-line shell to account for multi-byte utf8 characters. check-in: ed0842c1 user: drh tags: trunk
10:31
Omit some of the fstree tests in vtabH if the PWD contains LIKE wildcards. check-in: ead29f9c user: drh tags: trunk
2017-06-03
20:09
Initialize a variable to zero to prevent an (incorrect) compiler warning of it potentially being uninitialized. check-in: 65182ce0 user: drh tags: trunk
19:16
Fix the SQLITE_PTR_TO_INT macro so that works on recent versions of LLVM on Macs. check-in: c4089ffb user: drh tags: trunk
18:27
Remove unused header file from kvtest. check-in: dd7e043f user: drh tags: trunk
17:24
In kvtest, add the ability to work with a hierarchy of files on disk, in addition to having all files in the same directory. check-in: f568f666 user: drh tags: trunk
15:17
Add the --nocheckpoint and --multitrans options to kvtest. check-in: 5828633c user: drh tags: trunk
2017-06-02
23:44
Merge all recent trunk enhancements. check-in: 1d23294d user: drh tags: lsm-vtab
23:32
Add the --fsync flag to kvtest, and document the --nosync flag. check-in: 7fdc78a6 user: drh tags: trunk
19:31
Work toward enhancing kvtest to measure write performance. check-in: fc73e7d2 user: drh tags: trunk
15:44
Change the name of the OP_Seek opcode into OP_DeferredSeek for better clarity of function. No functional code changes. check-in: ab33d299 user: drh tags: trunk
13:16
Fix a typo in the header comment of the "series.c" virtual table extension. check-in: d637feb4 user: drh tags: trunk
2017-06-01
01:53
Add a comment to the Lemon documentation regarding the security of the lemon.exe command-line tool. check-in: 4c2458c1 user: drh tags: trunk
00:54
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one bit in that argument. check-in: 4a25c588 user: drh tags: prepare_v3
2017-05-31
17:30
Add the SQLITE_STMTSTATUS_MEMUSED opcode to sqlite3_stmt_status() for finding the heap memory usage by a single prepared statement. check-in: c26cf978 user: drh tags: trunk
16:21
Add the SQLITE_STMTSTATUS_MEMUSED option for sqlite3_stmt_status() that reports the amount of heap memory used for a single prepared statement. Closed-Leaf check-in: b57d5104 user: drh tags: stmtstatus-memused
16:09
Add the experimental "stmts" virtual table for introspection of prepared statements. check-in: cb4c5c66 user: drh tags: trunk
13:45
Avoid allocating excess memory to the KeyInfo objects. check-in: df785943 user: drh tags: trunk
13:27
Remove a completely unnecessary memset() from the INSERT code generator. check-in: 7d58836b user: drh tags: trunk
11:24
Very small performance increase in sqlite3VdbeSetNumCols(). check-in: 8885b446 user: drh tags: trunk
03:20
Reorder fields in the PgHdr object for a performance increase. check-in: 326e63d7 user: drh tags: trunk
02:58
Avoid unnecessary memory zeroing during expression list allocation. check-in: de28e651 user: drh tags: trunk
00:49
Size and performance optimizations to sqlite3ResolveExprNames(). check-in: af8c0fed user: drh tags: trunk
2017-05-30
18:34
Change sqlite3BtreeNext() and sqlite3BtreePrevious() so that they return SQLITE_DONE if they have already reached the end (or beginning) of the table. This gives a performance increase and size reduction. check-in: e972a386 user: drh tags: trunk
18:14
Omit a test of codepoint 0x202F (non-break narrow space) from the fts3 ICU tests. Different versions of ICU apparently handle this obscure codepoint slightly differently. check-in: 69ae6889 user: dan tags: trunk
2017-05-29
22:44
More efficient error handling and reset in the binding mechanism. check-in: 9a3e3b34 user: drh tags: trunk
17:59
Omit unnecessary fstat() calls for determining the database file size, resulting in smaller and faster code. check-in: dd61c736 user: drh tags: trunk
17:43
Fix an issue with OPT_FEATURE_FLAGS in configure.ac. check-in: 43ce3bd3 user: drh tags: trunk
16:45
Avoid unnecessary fstat() calls to determine the database size when transitioning into a read transaction on a rollback-mode database. Closed-Leaf check-in: 6c3476b5 user: drh tags: io-opt
14:57
Avoid unnecessary calls to fstat() to determine the database file size. check-in: c733a1de user: drh tags: io-opt
14:30
Fix a typo in a comment. No code changes. check-in: cb29b838 user: drh tags: trunk
14:26
Optimizations to the Walker object and its methods to make the code a little smaller and to help it run a little faster. check-in: 6854a34e user: drh tags: trunk
13:09
Correctly initialize the iSelectId of FROM clause terms that are a self join of a reused materialized subquery. Without this, the EXPLAIN QUERY PLAN output for the query will identify the subquery using the uninitialized (and arbitrary) iSelectId. check-in: 43c9ae37 user: drh tags: trunk
03:48
Improve shell help text for the '.open' command. check-in: 7cc940a9 user: mistachkin tags: trunk
2017-05-27
22:42
Smaller and faster vdbeSorterCompareText(). check-in: 542dc4c5 user: drh tags: trunk
2017-05-25
21:35
Small performance increase and size decrease in the btreeInitPage() routine. check-in: 6f415833 user: drh tags: trunk
17:27
Merge the LEFT JOIN query flattener fixes from 3.19.2. check-in: 6513e4a1 user: drh tags: trunk
16:50
Version 3.19.2 check-in: edb4e819 user: drh tags: release, branch-3.19, version-3.19.2
11:39
The SQLITE_EXTRA_IFNULLROW compile-time option causes OP_IfNullRow opcodes to be issued for references to the right-hand side table of *any* flattened join, not just LEFT JOINs. This puts extra stress on the OP_IfNUllRow opcodes for testing purposes. check-in: 1a074c8a user: drh tags: branch-3.19
00:28
The TK_IF_NULL_ROW expression node must be treated as a variable that references the table Expr.iTable. Proposed fix for ticket [7fde638e94287d2c]. check-in: b30a364a user: drh tags: branch-3.19
00:12
Increase the version number to 3.19.2 since ticket [7fde638e94287d2] is going to necessitate another patch release. check-in: c315727a user: drh tags: branch-3.19
00:08
The TK_IF_NULL_ROW expression node must be treated as a variable that references the table Expr.iTable. Proposed fix for ticket [7fde638e94287d2c]. check-in: 77fc2301 user: drh tags: trunk
2017-05-24
15:32
Fix harmless compiler warnings in FTS5. check-in: 57a60e95 user: mistachkin tags: trunk
13:08
Version 3.19.1 check-in: f6d7b988 user: drh tags: release, branch-3.19, version-3.19.1
04:18
Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. check-in: cfb0d9e0 user: drh tags: trunk
2017-05-23
20:00
Remove the msvc.h header file from the autoconf tarball. check-in: 84996aef user: drh tags: trunk
19:35
Do not use strcpy() in the (obsolete) amatch extension. In releasetest.tcl, run Apple tests using -Os instead of -O1 check-in: 4440e420 user: drh tags: trunk
15:33
Disable the LEFT JOIN flattening optimization for aggregate queries, as it does not currently work. Further fix for ticket [cad1ab4cb7b0fc344]. check-in: 05ada741 user: drh tags: branch-3.19
15:21
Disable the LEFT JOIN flattening optimization for aggregate queries, as it does not currently work. Further fix for ticket [cad1ab4cb7b0fc344]. check-in: 44b21e35 user: drh tags: trunk
12:44
Ensure that the expression rewriter inside the query flattener decends into the substructure of the TK_IF_NULL_ROW operator. This is a continuation of the fix for ticket [cad1ab4cb7b0fc344]. check-in: 28d2902d user: drh tags: branch-3.19
12:36
Ensure that the expression rewriter inside the query flattener decends into the substructure of the TK_IF_NULL_ROW operator. This is a continuation of the fix for ticket [cad1ab4cb7b0fc344]. check-in: 941d8142 user: drh tags: trunk
01:35
Change the version number to 3.19.1. check-in: 16656b8f user: drh tags: branch-3.19
01:30
Remove a surplus semicolon, which was harmless on gcc and clang but caused compile-time errors on msvc. This only comes up using the encryption extension. check-in: 4510d55d user: drh tags: branch-3.19
01:29
When flattening a query, make sure iTable attribute of TK_IF_NULL_ROW operators (that result from a prior flattening of a LEFT JOIN) are updated correctly. Fix for ticket [cad1ab4cb7b0fc344]. check-in: 919d36e6 user: drh tags: branch-3.19
01:21
When flattening a query, make sure iTable attribute of TK_IF_NULL_ROW operators (that result from a prior flattening of a LEFT JOIN) are updated correctly. Fix for ticket [cad1ab4cb7b0fc344]. check-in: 92c17850 user: drh tags: trunk
00:32
Remove a surplus semicolon, which was harmless on gcc and clang but caused compile-time errors on msvc. This only comes up using the encryption extension. check-in: 987a2b55 user: drh tags: trunk
2017-05-22
18:09
Fix incompatibilities between the "sqldiff --changeset" command and the sessions module. Specifically, allow sessions to process changesets containing tables with zero operations on them and have sqldiff output the expected output for tables with multi-column primary keys. check-in: 0bb23c48 user: dan tags: trunk
18:00
Add the ".cd" command to the command-line shell. check-in: 5fe28e15 user: drh tags: trunk
17:39
Increase the version number to 3.20 for the next release cycle. check-in: ab471f61 user: drh tags: trunk
14:04
Merge the last-minute 3.19.0 changes into trunk. check-in: e6ba2a93 user: drh tags: trunk
13:58
Version 3.19.0 check-in: 28a94eb2 user: drh tags: release, branch-3.19, version-3.19.0
13:06
Include the "msvc.h" header file in the amalgamation tarball. check-in: 3dd6fe53 user: drh tags: branch-3.19
08:04
Fix a case where NULL was being passed to memcmp() following an OOM. This is probably not a real problem, as the number-of-bytes parameter was passed 0 in this case, but it was causing a santizer complaint. check-in: 3ea2bad2 user: dan tags: trunk
00:45
When planning a query using sorting, resolve ties in the solver by selecting loop plans with the smaller unsorted cost. check-in: f261678c user: drh tags: trunk
2017-05-19
23:04
Prevent a possible NULL pointer dereference in the OP_Found opcode that can follow an OOM error. Problem found by OSS-Fuzz. check-in: 50ad60de user: drh tags: branch-3.19
22:51
Prevent a possible NULL pointer dereference in the OP_Found opcode that can follow an OOM error. Problem found by OSS-Fuzz. check-in: c2de178f user: drh tags: trunk
20:55
Improved comments on one routine in the query planner. Improved diagnostic output for ".wheretrace". No production code changes. check-in: 946b87a5 user: drh tags: trunk
20:47
Fix a documentation typo. No changes to code. check-in: 68942a4f user: drh tags: trunk
20:46
Branch for the 3.19 release. check-in: f2b829ec user: drh tags: branch-3.19
12:32
Fix some problems in fts5 code detected by -fsanitize=undefined. check-in: 35f72104 user: dan tags: trunk
2017-05-18
18:17
Fix a documentation typo. No changes to code. Closed-Leaf check-in: cfa4aa20 user: drh tags: doc-type
2017-05-16
09:49
Update the tool/warnings.sh script to automatically use the right options on OpenBSD. check-in: 7940bff3 user: dan tags: trunk
2017-05-15
15:12
Fix the build so that it works again with SQLITE_OMIT_SUBQUERY. check-in: bb0d9281 user: drh tags: trunk
15:05
Improvements to the omittest.tcl script. check-in: 0f05d7e9 user: drh tags: trunk
2017-05-12
14:05
Make sure the 'sqlite3changegroup_*' functions are included in the SQLITE_APICALL handling. check-in: a123cb93 user: mistachkin tags: trunk
2017-05-11
19:09
Add another test case for the new authorizer functionality. check-in: 339df63f user: dan tags: trunk
18:42
Enhance the json_extract() function to reuse parses of the same JSON when the function appears multiple times in the same query. check-in: 3ba9e7ab user: drh tags: trunk
18:14
Do not save the state of an fts5 merge operation mid-way through an input term, even if no previous entry for that term has caused any output. Doing so may corrupt the FTS index. check-in: 9a2de4f0 user: dan tags: trunk
16:49
Cache the JSON parse used by json_extract(). Closed-Leaf check-in: 44ca6c2c user: drh tags: auxdata-cache
15:20
Negative N values in sqlite3_get_auxdata() and sqlite3_set_auxdata() can be used to access an auxiliary data cache over all functions in a single prepared statement. check-in: ff530675 user: drh tags: auxdata-cache
13:43
New requirements marks and documentation for the authorizer. check-in: 3980ea09 user: drh tags: trunk
12:27
Improvements to the sqlite3_set_authorizer() documentation. check-in: 47629b19 user: drh tags: trunk
12:05
Change the SQLITE_READ authorization call for unreferenced tables to use an empty string for the column name, as this is less likely to impact legacy authorization callbacks that assume column names are always non-NULL. check-in: 4139953a user: drh tags: trunk
2017-05-10
19:42
Rename fields of the internal AuxData object to make them unique and easier to search for. check-in: 2be9850c user: drh tags: trunk
16:33
Improved documentation for the SQLITE_READ authorizer callback. No code changes. check-in: 92c5ea70 user: drh tags: trunk
16:12
Invoke the SQLITE_READ authorizer callback with a NULL column name for any table referenced by a query but from when no columns are extracted. check-in: 92ab1f72 user: drh tags: trunk
13:36
Fix a couple of test scripts so that they work with -DSQLITE_DISABLE_FTS4_DEFERRED builds. check-in: 30018d31 user: dan tags: trunk
12:58
Avoid unnecessary codec operations on in-memory subjournals. check-in: 199b2a84 user: drh tags: trunk
12:49
Do not invoke codec macros for in-memory subjournals. Closed-Leaf check-in: d2bb0066 user: drh tags: codecless-inmemory-subjournal
2017-05-08
18:29
Do not invoke codec macros when reading or writing an in-memory sub-journal. check-in: 2c145ee6 user: dan tags: codecless-inmemory-subjournal
2017-05-06
18:09
Fix an obscure assertion fault that can follow an OOM. The problem was introduced by check-in [a1cf44763277b6c7]. check-in: 04e7e565 user: drh tags: trunk
17:12
Fix requirements marks and harmless compiler warnings. check-in: 198ff4c0 user: drh tags: trunk
2017-05-04
11:13
Fix a collision of the "B0" identifier name between the termios.h header file and the SHA3 implementation in the shell. check-in: b9a58dac user: drh tags: trunk
2017-05-03
19:36
Remove the unused "sqlite3_stack_used" TCL command from the test harness. check-in: e24b7382 user: drh tags: trunk
17:44
Fix the sqlite3GetInt32() function so that it correctly returns 0 on a zero-length input string. check-in: 05eba9e3 user: drh tags: trunk
15:54
Always enable URI filenames when compiling with SQLITE_HAS_CODEC. Also allow plaintext keys using the key= query parameter. check-in: 31a51b4d user: drh tags: trunk
2017-05-02
18:00
Fix the fts3EvalAverageDocsize() routine so that it returns errors from sqlite3_reset() rather than always returning SQLITE_OK. check-in: 430f539c user: drh tags: trunk
17:54
Reuse the same materialization of a view when that view appears in a query more than once, such as in a self-join. check-in: 9e35c89d user: drh tags: trunk
16:55
Move terms of the HAVING clause that reference only columns in the GROUP BY clause over to the WHERE clause, resulting in a faster query plan. check-in: 47cbb471 user: drh tags: trunk
16:46
Additional comments on the sqlite3ExprIsConstantOrGroupBy() routine. No code changes. Closed-Leaf check-in: 8424492e user: drh tags: having-where-optimization
01:30
Fix typo in comment. No changes to code. check-in: 6674814a user: mistachkin tags: trunk
2017-05-01
19:53
Remove an unnecessary branch. check-in: a3317959 user: drh tags: having-where-optimization
18:24
Enhance "PRAGMA integrity_check" to detect duplicate rowids within a leaf page. check-in: adcad37b user: dan tags: trunk
18:12
Clear the BTCF_ValidNKey flag set if a cursor is moved by sqlite3BtreeInsert(). Fix for [f68dc596c4]. check-in: a6727eef user: dan tags: trunk
17:04
Futher bug fixes to the function that determines when a materialized view can be reused. Closed-Leaf check-in: c64fe3a1 user: drh tags: materialized-view-reuse
16:37
Minor bug fixes and performance enhancement. check-in: b2aae559 user: drh tags: materialized-view-reuse
15:15
Initial implementation of an optimization that attempts to reuse the same materialization of a view on a self-join of the view. check-in: 478c34b9 user: drh tags: materialized-view-reuse
14:09
Add extra tests for the optimization on this branch. check-in: 4921cd95 user: dan tags: having-where-optimization
2017-04-29
20:53
Automatically transfer terms from the HAVING clause to the WHERE clause of an aggregate query in cases where the result of evaluating the term depends only one one or more of the GROUP BY expressions (and on no other inputs). check-in: 5375a3ce user: dan tags: having-where-optimization
19:29
Add a single testcase() macro to the subquery processing logic. check-in: 4e1df76e user: drh tags: trunk
18:02
Improvements to opcode documentation in the bytecode engine. No changes to code. check-in: e54c9f8d user: drh tags: trunk
15:27
Evaluate WHERE clause terms that reference only the index before evaluating terms that require the table, and thereby avoid seeking the table row if index terms are false. This is called the "push-down" optimization in the MySQL world, we are told. Do not confuse with WHERE-clause push-down. check-in: d7bb79ed user: drh tags: trunk
14:56
Minor size and performance improvements to the push-down optimization. Closed-Leaf check-in: 91dfb61a user: drh tags: pushdown-optimization
2017-04-28
19:59
Within a loop that uses a non-covering index test, test non-indexed terms that can be tested without seeking the main table cursor before those that cannot. check-in: afe68f0a user: dan tags: pushdown-optimization
2017-04-26
17:21
Add new test file cachespill.test. check-in: 2d0b6431 user: dan tags: trunk
14:34
Replace <fts5.h> with "fts5.h" in test file fts5_test_tok.c. check-in: 63d9ca5c user: dan tags: trunk
04:32
Fix a subtle bug in Lemon discovered and reported on the mailing list by Kelvin Sherlock, who also suggested the correct fix. check-in: 304689f8 user: drh tags: trunk
2017-04-24
14:16
When building an ephemeral table of integers, do not assume that the table does not already contain N if the insert cursor points to N-1. Fix for ticket [61fe9745]. check-in: 1c1b0862 user: dan tags: trunk
2017-04-22
00:20
Fix an assertion fault found by OSSFuzz. check-in: e39769f4 user: drh tags: trunk
2017-04-21
17:03
Remove a NEVER macro for a condition that may be true as of [a47efb7c]. Problem reported by OSSFuzz. check-in: bdc50d8d user: dan tags: trunk
16:04
Fix an FTS5 bug that could cause a prefix-query without a prefix-index on a database that contains delete-markers to return extra, non-matching, rows. check-in: 840042cb user: dan tags: trunk
2017-04-19
13:25
Further improvements to coverage of fts3 module. check-in: 6b21d0fd user: dan tags: trunk
07:33
Further modifications and test cases to improve test coverage of fts3. check-in: ea8a0d2c user: dan tags: trunk
2017-04-18
13:50
Use sqlite3_table_column_metadata() instead of a SELECT statement to check for the existence of a %_stat table in fts3. This leads to smaller and easier to test code. check-in: dc2a4802 user: dan tags: trunk
11:20
Improved optimizations of views as the right operand of a LEFT JOIN. check-in: 41c27bc0 user: drh tags: trunk
05:49
Refactor the fts3ColumnMethod() function so that all branches can be covered. check-in: e47fdb49 user: dan tags: trunk
2017-04-17
23:23
Defer checking for null in the comparison operators, since that is an uncommon case. check-in: 56845256 user: drh tags: trunk
20:50
Do not allow a Mem object to be both NULL and some other type at the same time. check-in: e698db19 user: drh tags: trunk
18:42
Consolidate two branches of code in the "PRAGMA foreign_key_check" implementation. check-in: 69f51f83 user: dan tags: trunk
18:02
Fix a problem in "PRAGMA foreign_key_check" in handling a WITHOUT ROWID child table with an INTEGER PRIMARY KEY parent key. Also, if an FK violation is detected in a WITHOUT ROWID child table, do not try to read and return the rowid. The second column returned by "PRAGMA foreign_key_check" in this case (WITHOUT ROWID child table) is now always set to NULL. check-in: 690870bd user: dan tags: trunk
16:07
Further improvements to test coverage in fts3. check-in: 352413ee user: dan tags: trunk
13:38
Improve coverage of code in fts3. check-in: 1a08a836 user: dan tags: trunk
13:18
Fix the ".column" output mode in the command-line shell so that it correctly counts and formats multi-byte UTF characters. check-in: f508aff8 user: drh tags: trunk
2017-04-16
22:41
In the showwal command-line tool, for unix builds, if the auxiliary argument is of the form "Ntruncate" where "N" is a frame number, then truncate the WAL file after the N-th frame. check-in: 90015df3 user: drh tags: trunk
22:08
Add the anycollseq.c loadable extension in etc/misc check-in: d7b9813c user: drh tags: trunk
2017-04-15
11:53
In the skip-ahead-distinct optimization, fix a bug in the logic that determines when to invoke the optimization based on sqlite_stat1 statistics. check-in: 89f9e436 user: drh tags: trunk
2017-04-14
22:41
Fix to the decision logic for when to use the skip-ahead-distinct optimization. Closed-Leaf check-in: e50fd489 user: drh tags: skip-ahead-distinct
19:46
Remove end-of-line whitespace from lemon.c. check-in: d78355c8 user: drh tags: trunk
19:44
Fix some left-over K&R-C constructs in lemon.c. No changes to the core. check-in: a5379905 user: drh tags: trunk
19:03
Add the TK_IF_NULL_ROW opcode to deal with non-NULL result columns in the result set of a view or subquery on the RHS of a LEFT JOIN that gets flattened. Closed-Leaf check-in: 3a5860d8 user: drh tags: left-join-view
17:30
When doing a DISTINCT query using an index, try to use the index to skip ahead to the next distinct element, rather than doing a full scan of the index. (This is the "skip-ahead-distinct" optimization.) check-in: f489b5bb user: drh tags: trunk
17:18
An initial attempt to optimize VIEWs that occur as the right operand of a LEFT JOIN. This particular check-in does not work correctly because it does not deal with the case of columns in the VIEW that return non-NULL even when all columns in the table of the VIEW are NULL because of the LEFT JOIN. check-in: 1838a59c user: drh tags: left-join-view
14:50
Make USE_FULLWARN=1 the default for MSVC and fix harmless compiler warnings. check-in: 6bf67376 user: mistachkin tags: trunk
14:02
Enhance the sqlite3TreeView() display for Expr objects so that it shows the iRightJoinTable value for Expr nodes that have the EP_FromJoin property. check-in: 5159cb8f user: drh tags: trunk
12:39
Simplify the interface to the subst() routines that are part of the query flattener by collecting common parameters into the SubstContext object and passing around a pointer to that object. check-in: e651074b user: drh tags: trunk
12:27
Remove an incorrect ALWAYS(). check-in: f956f6ae user: drh tags: trunk
00:45
Fix a couple of unreachable branches. check-in: 1aa0ea8d user: drh tags: skip-ahead-distinct
2017-04-13
21:29
Fix the skip-ahead-distinct optimization so that it works with indexes that have repeated columns with different collating sequences. check-in: ce1e2b88 user: drh tags: skip-ahead-distinct
19:48
Simplification of the skip-ahead-distinct logic. There is still an issue with handling COLLATE. check-in: 57c5173b user: drh tags: skip-ahead-distinct
18:33
New test cases and minor fixes for the optimization on this branch. check-in: 70ac9ea1 user: dan tags: skip-ahead-distinct
15:51
Reinstate the SQLITE_API qualifier on the sqlite3_delete_database() method in test_delete.c. Accidentally removed by the previous commit. check-in: 59c70108 user: dan tags: trunk
15:36
Update the code in test_delete.c to use the "win32" VFS if SQLITE_OS_WIN is defined. check-in: fa9bb7b7 user: dan tags: trunk
13:01
Only use the skip-ahead-distinct optimization if the index has been analyzed and we know that a skip-head is likely to skip over at least 11 rows. The magic number 11 was determined by experimentation. check-in: 0cf16dec user: drh tags: skip-ahead-distinct
09:45
Allow a user column name to be used on the LHS of a MATCH operator in FTS5. check-in: 6f54ffd1 user: dan tags: trunk
01:19
Forward port the skip-ahead-distinct branch which was abandoned for some reason that I do not recall. This port should have been achived by a merge of trunk into the previous head of skip-ahead-distinct, but that did not work. So I had to manually "rebase" the changes. check-in: 132339a1 user: drh tags: skip-ahead-distinct
00:12
Fix a regression caused by the fix for ticket [6c9b5514077fed34551f98e64c09a1] - control characters allowed in JSON. check-in: 8e7b6118 user: drh tags: trunk
2017-04-12
17:50
Update fts5 to support "<colset> : ( <expr> )" for column filtering, as well as "<colset> : NEAR(...)" and "<colset> : <phrase>". check-in: c847543f user: dan tags: trunk
17:38
Improved \n and \r escapes in the ext/misc/dbdump.c utility function. The implementation of dbdump.c now matches the implementation in the CLI. check-in: f2643315 user: drh tags: trunk
2017-04-11
20:48
Avoid updating unaffected indexes on a table as part of an UPDATE that requires foreign key processing in some cases. check-in: 7aae5c0f user: dan tags: trunk
19:58
Avoid updating unaffected indexes on a table as part of an UPDATE that requires foreign key processing in some cases. Closed-Leaf check-in: 477bea9e user: dan tags: fkey-optimization
18:55
Limit the depth of recursion for valid JSON in the JSON1 extension in order to avoid using excess stack space in the recursive descent parser. Fix for ticket [981329adeef51011052667a9]. check-in: 1f68c184 user: drh tags: trunk
18:06
Smaller and faster implementation of exprMightBeIndexed(). check-in: 76cd611d user: drh tags: trunk
16:44
Very slight smaller and faster sqlite3SelectNew() check-in: 4143650c user: drh tags: trunk
12:20
Add an ALWAYS() around an unreachable condition in sqlite3VdbeMemGrow(). check-in: 0f3eb61f user: drh tags: trunk
11:52
Fix a segfault that could occur if an indexed expression was used in a comparison operation within the result-set of a SELECT statement. check-in: d6bb7c42 user: dan tags: trunk
01:30
When evaluating a query that uses an index on an expression, try to use the expression values read directly from the index rather than reevaluating the expression. check-in: a47efb7c user: drh tags: trunk
01:01
Improved comments. Fix a problem when an indexed expression is used in an ORDER BY clause. Closed-Leaf check-in: c59eaf2b user: drh tags: covering-index-on-expr
2017-04-10
23:42
Merge changes from trunk. check-in: 8978465f user: drh tags: covering-index-on-expr
20:51
Smaller and faster vdbeFreeOpArray() check-in: e052436d user: drh tags: trunk
20:27
Slightly smaller and faster sqlite3VdbeMemGrow(). check-in: efd1702a user: drh tags: trunk
12:31
Add a new JSON test case to verify that all control characters are escaped in the json_quote() function. check-in: 6ee12221 user: drh tags: trunk
12:25
Change the JSON extension so that it disallows control characters inside of strings. Fix for ticket [6c9b5514077fed34551f98e64c09a10dc2fc8e16]. check-in: 475d8f82 user: drh tags: trunk
2017-04-09
19:23
Do not expose the name of the internal Mem object in the public interface defined by sqlite3.h. check-in: 19dd753f user: drh tags: trunk
2017-04-08
18:18
Disallow leading zeros on numeric constants in JSON. Fix for ticket [b93be8729a895a528e2] check-in: 204e72f0 user: drh tags: trunk
14:11
Expand on the comment above OP_Destroy to explain why it throws an error if there are any active reader VMs. check-in: b9a8c2b9 user: dan tags: trunk
13:52
Have the rtree module close any open blob-handle within the xSavepoint method. This prevents such an open blob handle from interfering with DROP TABLE operations. check-in: fa4416ad user: dan tags: trunk
13:42
Fix the quoting mechanism for ".dump" so that it is not applied for the ".mode quote" output. check-in: 78c1e903 user: drh tags: trunk
09:12
Have fts5 close any open blob-handle when a new savepoint is opened. This ensures that fts5 does not prevent DROP TABLE statements (which always open a savepoint) from succeeding. check-in: a921ada8 user: dan tags: trunk
01:09
Make sure the RTree sqlite3_blob handle is reset prior to renaming the table. check-in: 1cdae2db user: drh tags: trunk
00:55
Fix the ".dump" command so that it works with ".headers on". Also fix the display of ".mode insert" with ".headers on". check-in: a6ce57ee user: drh tags: trunk
2017-04-07
20:20
Use replace() instead of char() to quote newline and return characters in strings in the output of .dump, to avoid excess expression complexity. check-in: 73073529 user: drh tags: trunk
19:52
Remove an unused token type. check-in: 13a42223 user: drh tags: covering-index-on-expr
19:41
Proof of concept for the ability to use the expression columns in an index on expressions in place of equivalent expressions in the result set or in the WHERE clause. This check-in compiles but is mostly untested. check-in: a52ef2ad user: drh tags: covering-index-on-expr
11:45
Use replace() instead of char() to quote newline and return characters in strings in the output of .dump, to avoid excess expression complexity. Closed-Leaf check-in: 4c2b5729 user: drh tags: shell-fix
2017-04-06
14:56
Fix the ".lint fkey" shell command for cases where the child key is also an INTEGER PRIMARY KEY. check-in: 48826b22 user: dan tags: trunk
12:06
Fix the ".lint fkey" shell tool command so that it works for foreign keys that refer implicitly to primary key columns with non-BINARY default collation sequences. check-in: 327eff25 user: dan tags: trunk
2017-04-05
13:44
Remove a confusing and pointless sentence from the documentation for the sqlite3_interrupt() interface. check-in: c5f1a2b6 user: drh tags: trunk
12:39
Split off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where we know that the argument to be freed is never NULL. check-in: ad90e8bb user: drh tags: trunk
11:57
Save a few bytes and a few CPU cycles in sqlite3ExprListDelete() routine. check-in: 9e6c9391 user: drh tags: trunk
11:49
Remove a conditional made unreachable by the previous ExprList enhancement. check-in: a1cf4476 user: drh tags: trunk
11:32
Combine the ExprList_item objects and the ExprList wrapper into a single memory allocation, for improved performance and reduced footprint. check-in: 2b6560ad user: drh tags: trunk
10:54
Attempt to remove bash-isms from configure.ac. Use -O0 with --enable-debug. check-in: 71ed35cc user: drh tags: trunk
2017-04-04
19:58
Fix a problem causing "PRAGMA integrity_check" to disable the xfer optimization for subsequent VACUUM operations on tables with one or more CHECK constraints. This could result in VACUUM producing slightly larger database files. check-in: e5bb7db5 user: dan tags: trunk
2017-04-03
14:07
Avoid an unnecessary call to sqlite3WhereGetMask() inside of whereShortCut(). check-in: 5c11f430 user: drh tags: trunk
13:59
Do not attempt to run sync2.test with SQLITE_DISABLE_DIRSYNC builds. check-in: 658f08ce user: dan tags: trunk
13:33
Force a schema load prior to "PRAGMA optimize". check-in: 86897c24 user: drh tags: trunk
13:17
Fix typos in the documentation for OP_Column. check-in: 777b43e6 user: drh tags: trunk
12:04
Slightly smaller and faster implementation for vdbeSorterCompareInt(). check-in: 84fa069c user: drh tags: trunk
2017-04-01
20:44
Remove an unnecessary setting of the Mem.enc field for the output of the OP_Record opcode, for a performance improvement and size reduction. check-in: e6e36b28 user: drh tags: trunk
20:14
Minor performance enhancements to the OP_Affinity opcode. check-in: c45cd3b9 user: drh tags: trunk
19:45
Remove an unnecessary clearing of the Vdbe.iCurrentTime value. check-in: fcd2acdd user: drh tags: trunk
11:59
Faster implementation for sqlite3VdbeIntValue() and sqlite3VdbeRealValue(). check-in: 8698df60 user: drh tags: trunk
11:40
Remove unused fields from the BtCursor object. check-in: 1c0d82e0 user: drh tags: trunk
00:20
Save a 78 bytes of code space and a million CPU cycles in speedtest1 by storing the cell index for the leaf page in the BtCursor object in its own field (BtCursor.ix), rather than as an entry in the BtCursor.aiIdx array. check-in: 2452f061 user: drh tags: trunk
2017-03-30
17:13
Declare the Lemon-generated parser object as itself. (Duh) check-in: c8000e94 user: drh tags: trunk
16:51
Increase the version number for the next development cycle. check-in: 9e550ccc user: drh tags: trunk
16:37
Ensure that the stack space used to hold the Lemon-generated parser object is always 8-byte aligned. check-in: 1279de0b user: drh tags: trunk
2017-03-29
23:22
When compiling with MSVC, disable extra SELECT/WHERE tracing for dynamically built shells. check-in: a6891942 user: mistachkin tags: trunk
18:03
Avoid unnecessary blob handle invalidation when changes are made to an unrelated table. check-in: 4a01880b user: drh tags: trunk
17:06
Slightly smaller and faster implementation of pcache1InitBulk(). check-in: 06c2b685 user: drh tags: trunk
16:55
Fix some tests in malloc5.test to account for the sqlite3_release_memory() change in the previous commit. check-in: d336858d user: dan tags: trunk
15:18
Fix the sqlite3_release_memory() interface so that it works even if SQLITE_DEFAULT_PCACHE_INITSZ is non-zero. check-in: 5d902b7f user: drh tags: trunk
2017-03-28
18:48
Version 3.18.0 check-in: 424a0d38 user: drh tags: release, branch-3.18, version-3.18.0
2017-03-25
19:16
Add the new sqlite3_set_last_insert_rowid() interface to the extension loader thunk. check-in: 8469fc0d user: drh tags: trunk
18:31
Do not run tests for ".dump --preserve-rowids" when testing SQLITE_OMIT_VIRTUALTABLE builds. check-in: 55df410b user: dan tags: trunk
18:15
Disable the new --preserve-rowids option on the CLI ".dump" command if compiled with SQLITE_OMIT_VIRTUALTABLE. check-in: bd5bbe4e user: drh tags: trunk
18:03
Make the default value for SQLITE_DEFAULT_SYNCHRONOUS a simple integer literal, so that it does not show up goofy in the output of "PRAGMA compile_options;". check-in: 833ab321 user: drh tags: trunk
12:08
Fix two harmless compiler warnings. check-in: 32be9c3f user: drh tags: trunk
2017-03-24
19:45
Fix a harmless compiler warning in the JSON1 extension. check-in: c2c3dd84 user: drh tags: trunk
18:38
Previous check-in was not correct. This is a better fix for the OP_Once problem of ticket [06796225f59c057cd120f1]. check-in: 8194dd28 user: drh tags: trunk
17:59
Fix the OP_Once opcode so that it works correctly for recursive triggers. Ticket [06796225f59c057cd120f1]. check-in: 25560145 user: drh tags: trunk
13:31
Add the RFC-7396 Appendix A test cases for json_patch(). check-in: c5441d2d user: drh tags: trunk
12:35
Fix an error in the new json_patch() routine discovered by Ralf Junker. check-in: 9d535041 user: drh tags: trunk
2017-03-23
23:44
Add the json_patch() SQL function to the JSON1 extension. check-in: 47608848 user: drh tags: trunk
20:33
Change the name of the json_merge_patch() function to just json_patch(). Closed-Leaf check-in: 04d41004 user: drh tags: json_mergepatch
19:51
Improvement to the amalgamation configure.ac file contributed by Bob Friesenhahn. check-in: bf28a55d user: drh tags: trunk
17:22
Do not run test file autoanalyze1.test if OMIT_VIRTUALTABLE is defined. check-in: e1d06a57 user: dan tags: trunk
17:03
Remove an invalid assert() statement failing when VACUUMing a database that contains an index on a column explicitly declared "COLLATE BINARY". check-in: 9f2e04d3 user: dan tags: trunk
12:56
Avoid redundant edits in the json_merge_patch() function. check-in: 4a8e6437 user: drh tags: json_mergepatch
00:46
Fix harmless compiler warnings in the new json_merge_patch() logic. check-in: 5d2cf5a2 user: drh tags: json_mergepatch
00:13
Various fixes to the json_merge_patch() function. check-in: f49fd255 user: drh tags: json_mergepatch
2017-03-22
21:45
Change the name of the new function to "json_merge_patch()". check-in: 53bf70f3 user: drh tags: json_mergepatch
21:24
Initial implementation of the json_mergepatch(A,B) SQL function. check-in: a2674440 user: drh tags: json_mergepatch
12:51
Fix harmless compiler warnings in the shell. check-in: a7868297 user: drh tags: trunk
2017-03-21
20:17
New simplified memory initialization for MacOS. check-in: 055b36f1 user: drh tags: trunk
18:56
Fix an incorrect assert in the ANALYZE logic for STAT4 on WITHOUT ROWID tables. check-in: ad741976 user: drh tags: trunk
17:19
Add short script ext/fts3/tool/fts3cov.sh. To help measure test-coverage of fts3 source code. check-in: ee9588e8 user: dan tags: trunk
10:45
Do not run sync2.test as part of the "inmemory_journal" permutation. check-in: 9f680bc7 user: dan tags: trunk
2017-03-20
22:58
Add the --native-malloc option to fuzzcheck. Fix ossfuzz.c and fuzzcheck.c so that they both deallocate the temp_store_directory before closing. check-in: 0dd18ec8 user: drh tags: trunk
20:42
Fix the fuzzcheck program so that it can create new databases again. check-in: 021e8874 user: drh tags: trunk
19:35
Avoid passing NULL as the second argument to memcpy() in fts3. check-in: 49b93d97 user: dan tags: trunk
19:26
Avoid a technically undefined right-shift of a signed value in rtree.c. check-in: a144875f user: dan tags: trunk
18:53
Fix some problems in fts3 found by address-sanitizer. check-in: 16a8e84f user: dan tags: trunk
16:34
Avoid the possibility of signed integer overflow with oversized precisions in %d conversions in the printf() implementation. check-in: ef3a7c87 user: drh tags: trunk
16:06
Do not run sync2.test as part of the "journaltest" permutation, as it uses "PRAGMA synchronous = off". check-in: 285005a9 user: dan tags: trunk
15:29
Ensure that a "--" prefix is added to sqlite3_trace_v2() output for nested SQL statements. check-in: 673a7b67 user: drh tags: trunk
15:11
Only run sync2.test on unix, as it depends on instrumentation in os_unix.c. check-in: ecb9321e user: dan tags: trunk
14:44
Fix the check.test script so that it works on Windows. check-in: 8822eb5d user: drh tags: trunk
13:03
Documentation fix: SQLITE_SOURCE_ID is a now a SHA3-256 hash. check-in: 2aa22509 user: drh tags: trunk
2017-03-18
13:59
Only do the specialized MacOS single-core zone_malloc initialization if compiled with the SQLITE_MIGHT_BE_SINGLE_CORE flag. This avoids a (harmless) warning about OSAtomicCompareAndSwapPtrBarrier() being deprecated. check-in: 4e6a03d9 user: drh tags: trunk
2017-03-17
23:08
Fix an error in the newly revised documentation for SQLITE_LIMIT_VDBE_OP. No changes to code. check-in: f4cf8635 user: drh tags: trunk
22:51
Set a reasonable limit on the number of opcodes in a prepared statement for ossfuzz.c. This should prevent timeouts in OSS-Fuzz when it generates totally unreasonable queries. check-in: f74899ed user: drh tags: trunk
22:50
Begin enforcing the SQLITE_LIMIT_VDBE_OP. The documentation warned that this day might come. check-in: ef591461 user: drh tags: trunk
14:59
Add the --show-errors and --show-max-delay command-line options to the ossshell test program. check-in: 626bdca9 user: drh tags: trunk
14:15
Fix the Makefile.in so that it builds the ossshell test program correctly. check-in: 36f5602e user: drh tags: trunk
13:59
Fix a buffer overread in debugging routine sqlite3VdbeMemPrettyPrint(). Problem discovered by OSS-Fuzz. check-in: f336fba7 user: dan tags: trunk
03:21
Fix a problem in the enhanced PRAGMA integrity_check where it verifies CHECK constraints: Do not be confused by the reuse of the Table.pCheck field by VIEWs with named columns. Problem discovered by OSS-Fuzz. check-in: 019dd3d5 user: drh tags: trunk
2017-03-16
18:55
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to rollback journal mode. check-in: 5c604479 user: dan tags: trunk
18:54
Fix a typo causing the build to fail if SQLITE_DEFAULT_SYNCHRONOUS==SQLITE_DEFAULT_WAL_SYNCHRONOUS. Closed-Leaf check-in: df39adea user: dan tags: default-synchronous-fix
18:14
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to rollback journal mode. check-in: 78030c0f user: dan tags: default-synchronous-fix
14:28
Simplified OOM detection in the instr() SQL function. check-in: 6d85eb57 user: drh tags: trunk
13:30
Fix an uninitialized variable reference in the text generator for "PRAGMA vdbe_trace=ON" output. Problem discovered by OSS-Fuzz. check-in: e3d48716 user: drh tags: trunk
13:14
Fix a problem in the "showdb" utility that prevents it from correctly decoding cells with no content beyond the record header. check-in: eb7680a1 user: drh tags: trunk
12:11
Fix a crash that could follow an OOM condition in the instr() SQL function. Problem discovered by OSS-Fuzz. check-in: 6e59e903 user: dan tags: trunk
2017-03-15
20:27
Updates to README files under the ext/ hierarchy. No changes to code. check-in: 029bc5d2 user: drh tags: trunk
19:11
Add the "Obtaining The Code" subsection in the top-level README.md file. No changes to code. check-in: b1b1aa8b user: drh tags: trunk
14:20
Mention the ".selftest" command in the ".help" output of the CLI. check-in: 37f766db user: drh tags: trunk
14:04
Make "PRAGMA temp.synchronous=N" a no-op to ensure that the TEMP schema always has synchronous=OFF. This fixes an issue discovered by OSS-Fuzz. check-in: bcf6bb08 user: drh tags: trunk
13:47
Improved header comment on the shathree.c extension. No changes to code. check-in: 84f2e3d5 user: drh tags: trunk
2017-03-14
15:27
Updates to the MSVC makefiles. check-in: 1e4b9e7c user: mistachkin tags: trunk
2017-03-13
22:10
Add the dbdump.c extension that implements functionality similar to the ".dump" command of the CLI, though in a separate library. check-in: 2b9980a2 user: drh tags: trunk
22:02
Add dbdump.exe to the MSVC makefile. Closed-Leaf check-in: 59241a50 user: drh tags: dbdump
21:49
Fixes to the dump logic. All appears to be working in preliminary tests. check-in: 007b11e3 user: drh tags: dbdump
21:26
First draft of the complete dbdump.c library. check-in: 84ea4fcc user: drh tags: dbdump
19:26
Infrastructure for an extension C-library to implement sqlite3_db_dump() and a corresponding "dbdump" command-line utility - both of which do the same work as the ".dump" command of the CLI. check-in: 74c5ace4 user: drh tags: dbdump