SQLite

Timeline
Login

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

100 descendants and 100 ancestors of 92ab1f7257d2866c

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
09:31
Extend even further the logging designed to find problems in the pointer-map structure. Call abort() to dump a core as soon as such a problem is seen. check-in: f131677d user: dan tags: begin-concurrent
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
17:06
Generate extra log messages in response to irregularites in the pointer-map used by "BEGIN CONCURRENT" transactions. check-in: f7e3e2bc user: dan tags: begin-concurrent
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
19:23
Instead of a root page number, log the object (table or index) name if a page level locking conflict is detected. check-in: 9ad846e5 user: dan tags: begin-concurrent
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:27
Enhance the log messages emitted when a page conflict is detected. check-in: 92618492 user: dan tags: begin-concurrent
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
18:05
Add debugging functions btreePageOriginFile() and btreePageOriginOffset(). Leaf check-in: 214d238a user: dan tags: btree-debug
2017-05-26
18:18
Adjust the bitvec related sqlite3_log messages added by [9527089b]. check-in: a7e0e7a4 user: dan tags: begin-concurrent
16:51
Add extra test cases for deferred page allocation. check-in: 9df01957 user: dan tags: begin-concurrent
16:15
Fix a problem with deferred page allocation in transactions that revert page allocations by savepoint rollbacks. check-in: a4a3bbe6 user: dan tags: begin-concurrent
2017-05-25
21:35
Small performance increase and size decrease in the btreeInitPage() routine. check-in: 6f415833 user: drh tags: trunk
21:02
Fix a problem with the deferred page allocation on this branch that could occur when the database file is just slightly smaller than the PENDING_BYTE page offset. check-in: 47a7dd92 user: dan tags: begin-concurrent
17:36
Merge all fixes from the 3.19.2 release. check-in: 12964240 user: drh tags: apple-osx
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
19:23
Add experimental new API sqlite3_wal_info(). check-in: 5b9d498f user: dan tags: begin-concurrent
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
19:24
Pull in all changes from the 3.19.0 release. check-in: bbd2d0e1 user: drh tags: apple-osx
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
19:57
Invoke sqlite3_log() in response to irregularities surrounding the Pager.pAllRead bit-vector. check-in: 9527089b user: dan tags: begin-concurrent
12:32
Fix some problems in fts5 code detected by -fsanitize=undefined. check-in: 35f72104 user: dan tags: trunk
2017-05-18
20:47
Fix a problem on this branch causing some page-level read-locks to be omitted. check-in: 0eed1521 user: dan tags: begin-concurrent
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
17:56
Merge changes from trunk. check-in: 6e0f64ab user: drh tags: schemalint
17:34
Merge the latest changes from trunk. check-in: 14ea8400 user: drh tags: begin-concurrent
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:49
Merge recent enhancements from trunk. check-in: b55c0f14 user: drh tags: apple-osx
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