SQLite

Timeline
Login

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

50 descendants and 50 ancestors of c2de178fe7e2e4e0

2017-06-03
20:09
Initialize a variable to zero to prevent an (incorrect) compiler warning of it potentially being uninitialized. (check-in: 65182ce041 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: c4089ffbdb user: drh tags: trunk)
18:27
Remove unused header file from kvtest. (check-in: dd7e043f7c 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: f568f666c8 user: drh tags: trunk)
15:17
Add the --nocheckpoint and --multitrans options to kvtest. (check-in: 5828633c23 user: drh tags: trunk)
2017-06-02
23:44
Merge all recent trunk enhancements. (check-in: 1d23294d88 user: drh tags: lsm-vtab)
23:32
Add the --fsync flag to kvtest, and document the --nosync flag. (check-in: 7fdc78a672 user: drh tags: trunk)
19:31
Work toward enhancing kvtest to measure write performance. (check-in: fc73e7d2f1 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: ab33d299c7 user: drh tags: trunk)
13:16
Fix a typo in the header comment of the "series.c" virtual table extension. (check-in: d637feb4e3 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: 4c2458c190 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: 4a25c58833 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: c26cf978ee 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: b57d510465 user: drh tags: stmtstatus-memused)
16:09
Add the experimental "stmts" virtual table for introspection of prepared statements. (check-in: cb4c5c66ab user: drh tags: trunk)
13:45
Avoid allocating excess memory to the KeyInfo objects. (check-in: df78594351 user: drh tags: trunk)
13:27
Remove a completely unnecessary memset() from the INSERT code generator. (check-in: 7d58836b9d user: drh tags: trunk)
11:24
Very small performance increase in sqlite3VdbeSetNumCols(). (check-in: 8885b44610 user: drh tags: trunk)
03:20
Reorder fields in the PgHdr object for a performance increase. (check-in: 326e63d71e user: drh tags: trunk)
02:58
Avoid unnecessary memory zeroing during expression list allocation. (check-in: de28e6514a user: drh tags: trunk)
00:49
Size and performance optimizations to sqlite3ResolveExprNames(). (check-in: af8c0fed93 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: e972a38608 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: 69ae688982 user: dan tags: trunk)
2017-05-29
22:44
More efficient error handling and reset in the binding mechanism. (check-in: 9a3e3b34ba user: drh tags: trunk)
17:59
Omit unnecessary fstat() calls for determining the database file size, resulting in smaller and faster code. (check-in: dd61c73677 user: drh tags: trunk)
17:43
Fix an issue with OPT_FEATURE_FLAGS in configure.ac. (check-in: 43ce3bd3a4 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: 6c3476b513 user: drh tags: io-opt)
14:57
Avoid unnecessary calls to fstat() to determine the database file size. (check-in: c733a1dea3 user: drh tags: io-opt)
14:30
Fix a typo in a comment. No code changes. (check-in: cb29b83888 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: 6854a34ed7 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: 43c9ae371f user: drh tags: trunk)
03:48
Improve shell help text for the '.open' command. (check-in: 7cc940a97e user: mistachkin tags: trunk)
2017-05-27
22:42
Smaller and faster vdbeSorterCompareText(). (check-in: 542dc4c5eb user: drh tags: trunk)
2017-05-25
21:35
Small performance increase and size decrease in the btreeInitPage() routine. (check-in: 6f415833e0 user: drh tags: trunk)
17:27
Merge the LEFT JOIN query flattener fixes from 3.19.2. (check-in: 6513e4a121 user: drh tags: trunk)
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: 77fc23013c user: drh tags: trunk)
2017-05-24
15:32
Fix harmless compiler warnings in FTS5. (check-in: 57a60e959c user: mistachkin tags: trunk)
04:18
Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. (check-in: cfb0d9e020 user: drh tags: trunk)
2017-05-23
20:00
Remove the msvc.h header file from the autoconf tarball. (check-in: 84996aef68 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: 4440e42031 user: drh tags: trunk)
15:21
Disable the LEFT JOIN flattening optimization for aggregate queries, as it does not currently work. Further fix for ticket [cad1ab4cb7b0fc344]. (check-in: 44b21e35c9 user: drh tags: trunk)
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: 941d8142b7 user: drh tags: trunk)
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: 92c178507d 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: 987a2b5537 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: 0bb23c4806 user: dan tags: trunk)
18:00
Add the ".cd" command to the command-line shell. (check-in: 5fe28e15b1 user: drh tags: trunk)
17:39
Increase the version number to 3.20 for the next release cycle. (check-in: ab471f61ef user: drh tags: trunk)
14:04
Merge the last-minute 3.19.0 changes into trunk. (check-in: e6ba2a93a8 user: drh tags: trunk)
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: 3ea2bad27e 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: f261678c90 user: drh tags: trunk)
2017-05-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: c2de178fe7 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: 946b87a528 user: drh tags: trunk)
20:47
Fix a documentation typo. No changes to code. (check-in: 68942a4fee user: drh tags: trunk)
12:32
Fix some problems in fts5 code detected by -fsanitize=undefined. (check-in: 35f721045d user: dan tags: trunk)
2017-05-18
18:17
Fix a documentation typo. No changes to code. (Closed-Leaf check-in: cfa4aa2036 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: 7940bff32a user: dan tags: trunk)
2017-05-15
15:12
Fix the build so that it works again with SQLITE_OMIT_SUBQUERY. (check-in: bb0d928158 user: drh tags: trunk)
15:05
Improvements to the omittest.tcl script. (check-in: 0f05d7e93a user: drh tags: trunk)
2017-05-12
14:05
Make sure the 'sqlite3changegroup_*' functions are included in the SQLITE_APICALL handling. (check-in: a123cb9330 user: mistachkin tags: trunk)
2017-05-11
19:09
Add another test case for the new authorizer functionality. (check-in: 339df63f40 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: 3ba9e7ab79 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: 9a2de4f05f user: dan tags: trunk)
16:49
Cache the JSON parse used by json_extract(). (Closed-Leaf check-in: 44ca6c2c46 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: ff5306752e user: drh tags: auxdata-cache)
13:43
New requirements marks and documentation for the authorizer. (check-in: 3980ea0911 user: drh tags: trunk)
12:27
Improvements to the sqlite3_set_authorizer() documentation. (check-in: 47629b1911 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: 4139953ab5 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: 2be9850cef user: drh tags: trunk)
16:33
Improved documentation for the SQLITE_READ authorizer callback. No code changes. (check-in: 92c5ea7047 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: 92ab1f7257 user: drh tags: trunk)
13:36
Fix a couple of test scripts so that they work with -DSQLITE_DISABLE_FTS4_DEFERRED builds. (check-in: 30018d3106 user: dan tags: trunk)
12:58
Avoid unnecessary codec operations on in-memory subjournals. (check-in: 199b2a8499 user: drh tags: trunk)
12:49
Do not invoke codec macros for in-memory subjournals. (Closed-Leaf check-in: d2bb0066f7 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: 2c145ee6c9 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: 04e7e5650e user: drh tags: trunk)
17:12
Fix requirements marks and harmless compiler warnings. (check-in: 198ff4c01d 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: b9a58daca8 user: drh tags: trunk)
2017-05-03
19:36
Remove the unused "sqlite3_stack_used" TCL command from the test harness. (check-in: e24b73820c user: drh tags: trunk)
17:44
Fix the sqlite3GetInt32() function so that it correctly returns 0 on a zero-length input string. (check-in: 05eba9e3a5 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: 31a51b4d16 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: 430f539cbb 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: 9e35c89dbe 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: 47cbb471d0 user: drh tags: trunk)
16:46
Additional comments on the sqlite3ExprIsConstantOrGroupBy() routine. No code changes. (Closed-Leaf check-in: 8424492eac user: drh tags: having-where-optimization)
01:30
Fix typo in comment. No changes to code. (check-in: 6674814afb user: mistachkin tags: trunk)
2017-05-01
19:53
Remove an unnecessary branch. (check-in: a33179596f user: drh tags: having-where-optimization)
18:24
Enhance "PRAGMA integrity_check" to detect duplicate rowids within a leaf page. (check-in: adcad37b00 user: dan tags: trunk)
18:12
Clear the BTCF_ValidNKey flag set if a cursor is moved by sqlite3BtreeInsert(). Fix for [f68dc596c4]. (check-in: a6727eef6d 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: c64fe3a169 user: drh tags: materialized-view-reuse)
16:37
Minor bug fixes and performance enhancement. (check-in: b2aae55958 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: 478c34b9a8 user: drh tags: materialized-view-reuse)
14:09
Add extra tests for the optimization on this branch. (check-in: 4921cd9520 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: 5375a3ce56 user: dan tags: having-where-optimization)
19:29
Add a single testcase() macro to the subquery processing logic. (check-in: 4e1df76e3d user: drh tags: trunk)
18:02
Improvements to opcode documentation in the bytecode engine. No changes to code. (check-in: e54c9f8db5 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: d7bb79ed3a user: drh tags: trunk)
14:56
Minor size and performance improvements to the push-down optimization. (Closed-Leaf check-in: 91dfb61a1a 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: afe68f0a80 user: dan tags: pushdown-optimization)
2017-04-26
17:21
Add new test file cachespill.test. (check-in: 2d0b64316d user: dan tags: trunk)
14:34
Replace <fts5.h> with "fts5.h" in test file fts5_test_tok.c. (check-in: 63d9ca5c73 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: 304689f8ac user: drh tags: trunk)