SQLite
Timeline
Not logged in

118 check-ins using file tool/lemon.c version f4f10457

2017-05-26
18:18
[a7e0e7a4] Leaf: Adjust the bitvec related sqlite3_log messages added by [9527089b]. (user: dan, tags: begin-concurrent)
16:51
[9df01957] Add extra test cases for deferred page allocation. (user: dan, tags: begin-concurrent)
16:15
[a4a3bbe6] Fix a problem with deferred page allocation in transactions that revert page allocations by savepoint rollbacks. (user: dan, tags: begin-concurrent)
2017-05-25
21:35
[6f415833] Leaf: Small performance increase and size decrease in the btreeInitPage() routine. (user: drh, tags: trunk)
21:02
[47a7dd92] 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. (user: dan, tags: begin-concurrent)
17:36
[12964240] Leaf: Merge all fixes from the 3.19.2 release. (user: drh, tags: apple-osx)
17:27
[6513e4a1] Merge the LEFT JOIN query flattener fixes from 3.19.2. (user: drh, tags: trunk)
16:50
[edb4e819] Leaf: Version 3.19.2 (user: drh, tags: release, branch-3.19, version-3.19.2)
11:39
[1a074c8a] 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. (user: drh, tags: branch-3.19)
00:28
[b30a364a] The TK_IF_NULL_ROW expression node must be treated as a variable that references the table Expr.iTable. Proposed fix for ticket [7fde638e94287d2c]. (user: drh, tags: branch-3.19)
00:12
[c315727a] Increase the version number to 3.19.2 since ticket [7fde638e94287d2] is going to necessitate another patch release. (user: drh, tags: branch-3.19)
00:08
[77fc2301] The TK_IF_NULL_ROW expression node must be treated as a variable that references the table Expr.iTable. Proposed fix for ticket [7fde638e94287d2c]. (user: drh, tags: trunk)
2017-05-24
15:32
[57a60e95] Fix harmless compiler warnings in FTS5. (user: mistachkin, tags: trunk)
13:08
[f6d7b988] Version 3.19.1 (user: drh, tags: release, branch-3.19, version-3.19.1)
04:18
[cfb0d9e0] Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. (user: drh, tags: trunk)
2017-05-23
20:00
[84996aef] Remove the msvc.h header file from the autoconf tarball. (user: drh, tags: trunk)
19:35
[4440e420] Do not use strcpy() in the (obsolete) amatch extension. In releasetest.tcl, run Apple tests using -Os instead of -O1 (user: drh, tags: trunk)
19:23
[5b9d498f] Add experimental new API sqlite3_wal_info(). (user: dan, tags: begin-concurrent)
15:33
[05ada741] Disable the LEFT JOIN flattening optimization for aggregate queries, as it does not currently work. Further fix for ticket [cad1ab4cb7b0fc344]. (user: drh, tags: branch-3.19)
15:21
[44b21e35] Disable the LEFT JOIN flattening optimization for aggregate queries, as it does not currently work. Further fix for ticket [cad1ab4cb7b0fc344]. (user: drh, tags: trunk)
12:44
[28d2902d] 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]. (user: drh, tags: branch-3.19)
12:36
[941d8142] 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]. (user: drh, tags: trunk)
01:35
[16656b8f] Change the version number to 3.19.1. (user: drh, tags: branch-3.19)
01:30
[4510d55d] 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. (user: drh, tags: branch-3.19)
01:29
[919d36e6] 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]. (user: drh, tags: branch-3.19)
01:21
[92c17850] 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]. (user: drh, tags: trunk)
00:32
[987a2b55] 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. (user: drh, tags: trunk)
2017-05-22
19:24
[bbd2d0e1] Pull in all changes from the 3.19.0 release. (user: drh, tags: apple-osx)
18:09
[0bb23c48] 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. (user: dan, tags: trunk)
18:00
[5fe28e15] Add the ".cd" command to the command-line shell. (user: drh, tags: trunk)
17:39
[ab471f61] Increase the version number to 3.20 for the next release cycle. (user: drh, tags: trunk)
14:04
[e6ba2a93] Merge the last-minute 3.19.0 changes into trunk. (user: drh, tags: trunk)
13:58
[28a94eb2] Version 3.19.0 (user: drh, tags: release, branch-3.19, version-3.19.0)
13:06
[3dd6fe53] Include the "msvc.h" header file in the amalgamation tarball. (user: drh, tags: branch-3.19)
08:04
[3ea2bad2] 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. (user: dan, tags: trunk)
08:01
[a726d981] Leaf: Add code to this branch to emit a log message after each cumulative second that the WRITER lock has been held. (user: dan, tags: server-edition)
00:45
[f261678c] When planning a query using sorting, resolve ties in the solver by selecting loop plans with the smaller unsorted cost. (user: drh, tags: trunk)
2017-05-19
23:04
[50ad60de] Prevent a possible NULL pointer dereference in the OP_Found opcode that can follow an OOM error. Problem found by OSS-Fuzz. (user: drh, tags: branch-3.19)
22:51
[c2de178f] Prevent a possible NULL pointer dereference in the OP_Found opcode that can follow an OOM error. Problem found by OSS-Fuzz. (user: drh, tags: trunk)
20:55
[946b87a5] Improved comments on one routine in the query planner. Improved diagnostic output for ".wheretrace". No production code changes. (user: drh, tags: trunk)
20:47
[68942a4f] Fix a documentation typo. No changes to code. (user: drh, tags: trunk)
20:46
[f2b829ec] Branch for the 3.19 release. (user: drh, tags: branch-3.19)
19:57
[9527089b] Invoke sqlite3_log() in response to irregularities surrounding the Pager.pAllRead bit-vector. (user: dan, tags: begin-concurrent)
12:32
[35f72104] Fix some problems in fts5 code detected by -fsanitize=undefined. (user: dan, tags: trunk)
2017-05-18
20:47
[0eed1521] Fix a problem on this branch causing some page-level read-locks to be omitted. (user: dan, tags: begin-concurrent)
18:17
[cfa4aa20] Closed-Leaf: Fix a documentation typo. No changes to code. (user: drh, tags: doc-type)
2017-05-16
09:49
[7940bff3] Update the tool/warnings.sh script to automatically use the right options on OpenBSD. (user: dan, tags: trunk)
2017-05-15
19:32
[9b7f8024] Avoid writer starvation by adding a RESERVED state to page locks. (user: dan, tags: server-edition)
17:56
[6e0f64ab] Leaf: Merge changes from trunk. (user: drh, tags: schemalint)
17:34
[14ea8400] Merge the latest changes from trunk. (user: drh, tags: begin-concurrent)
15:12
[bb0d9281] Fix the build so that it works again with SQLITE_OMIT_SUBQUERY. (user: drh, tags: trunk)
15:05
[0f05d7e9] Improvements to the omittest.tcl script. (user: drh, tags: trunk)
2017-05-13
19:07
[a38858a2] Avoid running recovery while there is another read/write client. (user: dan, tags: server-edition)
2017-05-12
18:52
[cbf44ed9] Require exclusive access to the db to wrap the wal file. Have "PRAGMA wal_checkpoint = restart" block for this. (user: dan, tags: server-edition)
14:05
[a123cb93] Make sure the 'sqlite3changegroup_*' functions are included in the SQLITE_APICALL handling. (user: mistachkin, tags: trunk)
2017-05-11
19:09
[339df63f] Add another test case for the new authorizer functionality. (user: dan, tags: trunk)
18:49
[b55c0f14] Merge recent enhancements from trunk. (user: drh, tags: apple-osx)
18:42
[3ba9e7ab] Enhance the json_extract() function to reuse parses of the same JSON when the function appears multiple times in the same query. (user: drh, tags: trunk)
18:14
[9a2de4f0] 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. (user: dan, tags: trunk)
16:49
[44ca6c2c] Closed-Leaf: Cache the JSON parse used by json_extract(). (user: drh, tags: auxdata-cache)
15:20
[ff530675] 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. (user: drh, tags: auxdata-cache)
13:43
[3980ea09] New requirements marks and documentation for the authorizer. (user: drh, tags: trunk)
12:27
[47629b19] Improvements to the sqlite3_set_authorizer() documentation. (user: drh, tags: trunk)
12:05
[4139953a] 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. (user: drh, tags: trunk)
2017-05-10
19:42
[2be9850c] Rename fields of the internal AuxData object to make them unique and easier to search for. (user: drh, tags: trunk)
16:33
[92c5ea70] Improved documentation for the SQLITE_READ authorizer callback. No code changes. (user: drh, tags: trunk)
16:18
[2584df3d] Fix a problem causing a lock to be held past the end of a transaction. Use a blocking lock to take the read-lock on page 1 taken by all transactions. (user: dan, tags: server-edition)
16:12
[92ab1f72] 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. (user: drh, tags: trunk)
13:46
[4464ca1d] Use a blocking call to obtain the wal-mode WRITER lock in some cases. (user: dan, tags: server-edition)
13:36
[30018d31] Fix a couple of test scripts so that they work with -DSQLITE_DISABLE_FTS4_DEFERRED builds. (user: dan, tags: trunk)
12:58
[199b2a84] Avoid unnecessary codec operations on in-memory subjournals. (user: drh, tags: trunk)
12:49
[d2bb0066] Closed-Leaf: Do not invoke codec macros for in-memory subjournals. (user: drh, tags: codecless-inmemory-subjournal)
2017-05-09
16:32
[270b7d1e] Fix a problem with wrapping the log file in server mode. (user: dan, tags: server-edition)
2017-05-08
20:15
[b733afc1] Add some support for wal mode to the hack on this branch. (user: dan, tags: server-edition)
18:29
[2c145ee6] Do not invoke codec macros when reading or writing an in-memory sub-journal. (user: dan, tags: codecless-inmemory-subjournal)
2017-05-06
18:09
[04e7e565] Fix an obscure assertion fault that can follow an OOM. The problem was introduced by check-in [a1cf44763277b6c7]. (user: drh, tags: trunk)
17:12
[198ff4c0] Fix requirements marks and harmless compiler warnings. (user: drh, tags: trunk)
16:04
[ed6bad67] Update this branch with latest trunk changes. (user: dan, tags: server-edition)
2017-05-04
14:02
[269bf52e] Remove the tool/schemalint.tcl script. And related Makefile entries. It is superseded by sqlite3_expert. (user: dan, tags: schemalint)
11:13
[b9a58dac] Fix a collision of the "B0" identifier name between the termios.h header file and the SHA3 implementation in the shell. (user: drh, tags: trunk)
2017-05-03
19:36
[e24b7382] Remove the unused "sqlite3_stack_used" TCL command from the test harness. (user: drh, tags: trunk)
17:44
[05eba9e3] Fix the sqlite3GetInt32() function so that it correctly returns 0 on a zero-length input string. (user: drh, tags: trunk)
15:54
[31a51b4d] Always enable URI filenames when compiling with SQLITE_HAS_CODEC. Also allow plaintext keys using the key= query parameter. (user: drh, tags: trunk)
13:05
[593e5dd0] Fix a harmless compiler warning on Windows. (user: drh, tags: schemalint)
12:50
[d8254047] Get sqlite3_expert building on Windows. (user: drh, tags: schemalint)
12:15
[da15752d] In sqlite3expert.c, do not copy the schema for virtual tables. Updates to makefiles to make building easier. (user: drh, tags: schemalint)
2017-05-02
20:42
[af7d1596] In the sqlite3_expert command-line tool, allow two-dash options. Do not accept the database name if it begins with "-". (user: drh, tags: schemalint)
19:45
[a7dcf6a7] Merge the latest enhancements from trunk. (user: drh, tags: schemalint)
18:00
[430f539c] Fix the fts3EvalAverageDocsize() routine so that it returns errors from sqlite3_reset() rather than always returning SQLITE_OK. (user: drh, tags: trunk)
17:54
[9e35c89d] Reuse the same materialization of a view when that view appears in a query more than once, such as in a self-join. (user: drh, tags: trunk)
16:55
[47cbb471] 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. (user: drh, tags: trunk)
16:46
[8424492e] Closed-Leaf: Additional comments on the sqlite3ExprIsConstantOrGroupBy() routine. No code changes. (user: drh, tags: having-where-optimization)
01:30
[6674814a] Fix typo in comment. No changes to code. (user: mistachkin, tags: trunk)
2017-05-01
20:07
[83b1e163] Update this branch with latest trunk changes. (user: dan, tags: server-edition)
19:53
[a3317959] Remove an unnecessary branch. (user: drh, tags: having-where-optimization)
18:24
[adcad37b] Enhance "PRAGMA integrity_check" to detect duplicate rowids within a leaf page. (user: dan, tags: trunk)
18:12
[a6727eef] Clear the BTCF_ValidNKey flag set if a cursor is moved by sqlite3BtreeInsert(). Fix for [f68dc596c4]. (user: dan, tags: trunk)
17:04
[c64fe3a1] Closed-Leaf: Futher bug fixes to the function that determines when a materialized view can be reused. (user: drh, tags: materialized-view-reuse)
16:37
[b2aae559] Minor bug fixes and performance enhancement. (user: drh, tags: materialized-view-reuse)
15:15
[478c34b9] Initial implementation of an optimization that attempts to reuse the same materialization of a view on a self-join of the view. (user: drh, tags: materialized-view-reuse)
14:25
[11f4761c] Update this branch with latest trunk changes. (user: dan, tags: schemalint)
14:09
[4921cd95] Add extra tests for the optimization on this branch. (user: dan, tags: having-where-optimization)
2017-04-29
20:53
[5375a3ce] 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). (user: dan, tags: having-where-optimization)
19:29
[4e1df76e] Add a single testcase() macro to the subquery processing logic. (user: drh, tags: trunk)
18:02
[e54c9f8d] Improvements to opcode documentation in the bytecode engine. No changes to code. (user: drh, tags: trunk)
15:48
[f6b025bf] Avoid reading the file-size before page 1 is read-locked. (user: dan, tags: server-edition)
15:27
[d7bb79ed] 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. (user: drh, tags: trunk)
14:56
[91dfb61a] Closed-Leaf: Minor size and performance improvements to the push-down optimization. (user: drh, tags: pushdown-optimization)
2017-04-28
19:59
[afe68f0a] 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. (user: dan, tags: pushdown-optimization)
17:32
[a40b42c4] Fix various bugs revealed by running performance tests. (user: dan, tags: server-edition)
14:09
[a5a08548] Add a missing releasePage() call to the server-mode free-list management code. (user: dan, tags: server-edition)
10:20
[778e8a10] Use a different free-list format for server-mode databases in order to reduce contention. (user: dan, tags: server-edition)
2017-04-27
14:12
[3144ae40] Do not write master journal filenames into server-mode journal files. Use SQLITE_MUTEX_STATIC_APP1 to protect critical sections in server.c. (user: dan, tags: server-edition)
13:05
[d5b5326d] If possible, delete the journal file when a database connection is closed. (user: dan, tags: server-edition)
2017-04-26
20:45
[64ecf7c7] Experimental implementation of pessimistic page-level locking based on rollback mode. (user: dan, tags: server-edition)
17:21
[2d0b6431] Add new test file cachespill.test. (user: dan, tags: trunk)
14:34
[63d9ca5c] Replace <fts5.h> with "fts5.h" in test file fts5_test_tok.c. (user: dan, tags: trunk)
04:32
[304689f8] Fix a subtle bug in Lemon discovered and reported on the mailing list by Kelvin Sherlock, who also suggested the correct fix. (user: drh, tags: trunk)