SQLite

Timeline
Login

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

100 descendants and 100 ancestors of 5d0ceb8dcdef92cd72307e532a4a6c269b2c458fecb0bbede0bb941099eebc5b

2017-11-02
11:12
Avoid locking shm-lock WAL_READ_LOCK(0) during recovery. Doing this allows recovery to proceed while a readonly_shm connection in unlocked mode has an ongoing read transaction. (check-in: 5190d84a user: dan tags: readonly-wal-recovery)
2017-11-01
20:59
If a readonly_shm connection cannot map the *-shm file because no other process is holding the DMS lock, have it read from the database file only, ignoring any content in the wal file. (check-in: ce5d13c2 user: dan tags: readonly-wal-recovery)
19:58
Fix harmless compiler warnings in sqlite3_checker.exe (check-in: 491f867b user: drh tags: trunk)
19:50
Make sure the JSON1 extension is available to sqlite3_checker.exe (check-in: a946a8ed user: drh tags: trunk)
19:44
Add the checkindex.c extension and the sqlite3_checker utility program used for doing live validation of large databases. (check-in: 0c5d18a0 user: drh tags: trunk)
19:22
Adjust page numbers in the ext/repair/test/checkfreelist01.test module due to the fact that the pending-byte page is no longer shifted down to a low-numbered page but is in its rightful place. (Closed-Leaf check-in: c1641aff user: drh tags: checkindex)
18:31
Add the "sqlite3_imposter DB SCHEMA ROOT SQL" command to sqlite3_checker. Use it to fix the checkindex01.test module. There are still errors reported by the checkfreelist01.test module. (check-in: 0593a2ba user: drh tags: checkindex)
18:05
Move the test scripts for checkfreelist and checkindex over into the ext/repair/test directory. Run them now using the sqlite3_checker utility with the --test option. Some tests are currently failing due to an incomplete port. This is an incremental check-in. (check-in: 17f8d5e1 user: drh tags: checkindex)
13:09
Minor cleanup in checkindex.c. Add progress displays when checking a single index in the top-level TCL script for sqlite3_checker. (check-in: 3ca31cc3 user: drh tags: checkindex)
07:06
Merge latest trunk changes into this branch. (check-in: 985bfc99 user: dan tags: readonly-wal-recovery)
06:59
Fix a race condition in os_unix.c that might allow a client to use a *-shm file corrupted by a power failure if another client fails between locking the *-shm file and truncating it to zero bytes. (check-in: d655bfab user: dan tags: readonly-wal-recovery)
01:05
When sqlite3_checker finds a problem, show the row key as part of the error message, not the row index number. (check-in: 6ffe917d user: drh tags: checkindex)
01:01
Actually perform index checks when running sqlite3_checker (check-in: 54530020 user: drh tags: checkindex)
00:10
Begin putting functionality into the sqlite3_checker binary. (check-in: e82e883b user: drh tags: checkindex)
2017-10-31
18:15
Merge all recent enhancements from trunk. (check-in: 24adf90f user: drh tags: checkindex)
18:09
Add the checkfreelist extension to the sqlite3_checker binary. (check-in: 0c22f0d6 user: drh tags: checkindex)
15:55
Fix an error in the Makefile.msc for the sqlite3_checker.exe target. (check-in: 49d0c6f1 user: drh tags: checkindex)
15:49
Add build infrastructure for the sqlite3_checker command-line utility. (check-in: 429e3c3c user: drh tags: checkindex)
14:56
Update the built procedures for the sqlite3_analyzer utility to allow it to be linked with an external sqlite3.o library. Automatically detect a missing dbstat extension and report the compile-time error. (check-in: bb39744f user: drh tags: trunk)
12:20
Fix redundancies in the makefiles that resulted from moving shell.c over to shell.c.in. (check-in: bf09fa68 user: drh tags: trunk)
12:06
Fix a minor comment typo. No changes to code. (check-in: 5f79e6d9 user: drh tags: trunk)
12:01
Fix a couple of issues in incremental_index_check to do with CREATE INDEX statements that contain embedded SQL comments. (check-in: 2aef4181 user: dan tags: checkindex)
03:40
Remove unnecessary NEVER() and ALWAYS() conditionals. (check-in: 1c80c75d user: drh tags: trunk)
2017-10-30
23:25
Add the showshm utility program for printing out the shm header in a human-readable format. (check-in: f6304fd1 user: drh tags: trunk)
20:44
Clarify some comments describing the WAL index file. No changes to code. (check-in: 3be3aad9 user: drh tags: trunk)
19:38
Add support for indexes on expressions to incremental_index_check. (check-in: 8c1c701f user: dan tags: checkindex)
18:49
Improve the performance of the LIKE operator by using strcspn() to aid wildcard matching. (check-in: 37284d4e user: drh tags: trunk)
18:26
Speed up wildcard searches in LIKE using strchr() (Closed-Leaf check-in: 4d336d74 user: drh tags: like-compare-opt)
17:05
In checkindex.c, use C code instead of SQL/group_concat() to compose various SQL clauses. This is to make it easier to support indexes on expressions. (check-in: 940606b3 user: dan tags: checkindex)
08:04
Fix an issue in incremental_index_check with indexes that use non-default collation sequences. (check-in: 3ebb2351 user: dan tags: checkindex)
2017-10-28
20:54
Increase the version number for the next release - which is still months away but there have been significant query planner enhancements since the previous release. (check-in: 457eedfa user: drh tags: trunk)
20:51
Reactivate query flattening when the result set of the outer query has no function calls or subqueries. This is a partial reversal of check-in [c9104b59]. Co-routines are still preferred if the outer query has a complex result set, but for simple results sets, query flattening is used. Check-in [4464f40ccd7] is completely backed out due to this change. (check-in: d17ef7d1 user: drh tags: trunk)
20:31
Fix "after" parameter handling in the incremental_index_check code. (check-in: c40c3c62 user: dan tags: checkindex)
12:20
Add test cases from OSSFuzz to prevent a regression in co-routine processing. (check-in: 689743d8 user: drh tags: trunk)
2017-10-27
23:28
I was a little concerned about this check-in. Though I could not generate a failure myself, I thought it was risky. I checked it in for further testing. Then, overnight, OSSFuzz found a failure case for me. So the change is now moved out into a deadend branch. Was: Use OP_SCopy rather than OP_Copy to transfer results from a co-routine to its consumer. This undoes an earlier fix for ticket [98825a79ce] by check-in [ec6a06246e] because that problem no longer occurs due to WHERE clause push-down. (Closed-Leaf check-in: 0926df09 user: drh tags: mistake)
20:53
Add the start of the "incremental_index_check" virtual table in ext/repair/checkindex.c. For incremental verification of index contents. (check-in: d5b9dada user: dan tags: checkindex)
18:24
Fix a Pager ref-count leak in the sqlite_dbpage virtual table. (check-in: c063bb04 user: drh tags: trunk)
17:09
Handle the Ctrl-C event for the shell on Win32. (check-in: c8aaf371 user: mistachkin tags: trunk)
12:27
Additional test case demonstrating the ability to access structure elements using quoted names in the JSON1 extension. (check-in: 8d3cc928 user: drh tags: trunk)
2017-10-26
20:04
Enhance the min/max optimization so that it works with indexes on expressions. (check-in: 6caec908 user: drh tags: trunk)
18:43
Extra ".selecttrace" output following aggregate analysis. No changes to production builds. (check-in: 6fbf74ab user: drh tags: trunk)
17:34
Fix an error in the previous commit on this branch. (check-in: f71dfee0 user: dan tags: readonly-wal-recovery)
17:05
Instead of extra locks, use F_GETLK to ensure that readonly_shm clients cannot connect to a wal-mode database if there are no writers. (check-in: 5492f457 user: dan tags: readonly-wal-recovery)
15:21
Fix a bug causing "make amalgmation-autoconf" to create an invalid package if either the current or parent directory contains a file named install.sh or install-sh. (check-in: e1faa785 user: dan tags: trunk)
2017-10-25
23:28
Use extra locks to prevent a readonly_shm=1 process from connecting to a WAL-mode database if there are no writers. (check-in: 35d97908 user: drh tags: readonly-wal-recovery)
19:18
Fix the sqlite3_dbpage virtual table so that it can read and write from any attached database. (check-in: d4f893e1 user: drh tags: trunk)
18:17
Add tests cases and fix minor issues in the rtreecheck() function. (check-in: d6130cd2 user: dan tags: trunk)
18:01
Add SQL scalar function rtreecheck() to the rtree module. For running checks to ensure the shadow tables used by an rtree virtual table are internally consistent. (check-in: 7d264980 user: mistachkin tags: trunk)
18:00
Fix compilation issue (C99-ism) seen with MSVC. (Closed-Leaf check-in: 61870b42 user: mistachkin tags: rtree-integrity-check)
16:38
Add SQL scalar function rtreecheck() to the rtree module. For running checks to ensure the shadow tables used by an rtree virtual table are internally consistent. (check-in: dde0bb3e user: dan tags: rtree-integrity-check)
16:14
Do not reference the ioctl() system call in the unix backend unless it is actually needed by the Batch Atomic Write extension. This should allow the build to work on VxWorks. (check-in: adfa7ed2 user: drh tags: trunk)
01:34
Add the sqlite_btreeinfo eponymous-only table for introspecting the schema and estimating the sizes of various btrees. (check-in: 1e30f477 user: drh tags: trunk)
2017-10-24
21:17
Force the autoconf makefile for MSVC to always use the 'find.exe' included with Windows. (check-in: b76bffd3 user: mistachkin tags: trunk)
19:12
Merge all enhancements and fixes from the 3.21.0 release. (check-in: 13be3a44 user: drh tags: apple-osx)
19:05
Merge all of the fixes from the 3.21.0 release. (check-in: 5ab662b4 user: drh tags: trunk)
18:55
Version 3.21.0 (Leaf check-in: 1a584e49 user: drh tags: release, branch-3.21, version-3.21.0)
17:28
Fix a problem in the incr-blob code causing a new cursor to be opened for every sqlite3_blob_reopen() call. (check-in: 41ef34a1 user: dan tags: branch-3.21)
2017-10-23
21:24
On the amalgamation package, enable the sqlite_dbpage virtual table so that the .dbinfo command works in the CLI. (check-in: 54b90b4f user: drh tags: branch-3.21)
20:20
Merge trunk fixes to swarmvtabfault.test and the lsm extension into this branch. No changes to core SQLite code. (check-in: f632b870 user: dan tags: branch-3.21)
20:17
In the 'swarmvtabfault' test module, make sure to close the database handle prior to raising an error from the 'not found' callback script. (check-in: f317037b user: mistachkin tags: trunk)
17:36
Cleanup a test database file prior to using it. (check-in: e1bf5e1d user: mistachkin tags: trunk)
16:34
Updates to test procedures so that they all work with encryption. No changes to the core SQLite code. (check-in: 04813307 user: drh tags: branch-3.21)
16:03
Avoid passing a NULL value as the second argument to memcpy(). (check-in: 58e5bb49 user: dan tags: branch-3.21)
11:48
In lsm (not SQLite), avoid opening the *-shm file before the database file is locked. Otherwise, there is a race condition whereby a connection in another process process may unlink() it while it is still in use. (check-in: c8b8b9b5 user: dan tags: trunk)
07:53
Fix minor test script problems revealed by releasetest.tcl. (check-in: c333ee7e user: dan tags: branch-3.21)
07:52
Fix minor test script problems revealed by releasetest.tcl. (check-in: 15e87d9b user: dan tags: trunk)
2017-10-22
08:03
Fix test cases in dbpage.test so that they work with SQLITE_DEFAULT_AUTOVACUUM=1 builds. (check-in: 9474f061 user: dan tags: branch-3.21)
08:02
Fix test cases in dbpage.test so that they work with SQLITE_DEFAULT_AUTOVACUUM=1 builds. (check-in: 0fcf1e61 user: dan tags: trunk)
07:58
Avoid running tests that use sqlite_dbpage with SQLITE_OMIT_VIRTUAL_TABLE builds. (check-in: 6dde8d61 user: dan tags: branch-3.21)
07:57
Avoid running tests that use sqlite_dbpage with SQLITE_OMIT_VIRTUAL_TABLE builds. (check-in: 7bd20a20 user: dan tags: trunk)
2017-10-21
17:17
Merge all the enhancements and bug fixes from trunk, since none are destablizing. Call this the second beta. (check-in: fb3ee1b7 user: drh tags: branch-3.21)
14:17
Catch and avoid a 16-bit integer overflow on the number of columns in a common table expression. This fixes a problem found by OSS-Fuzz. The test case is in TH3. (check-in: 6ee8cb6a user: drh tags: trunk)
13:29
Remove unnecessary "#if SQLITE_MAX_COLUMN". SQLITE_MAX_COLUMN is always defined. (check-in: 6ec82acd user: drh tags: trunk)
12:59
Initial implementation of the appendvfs extension. Untested. (check-in: 063a03a3 user: drh tags: appendvfs)
2017-10-19
15:17
Take extra care to avoid an OOB read caused by a corrupt b-tree page. This fixes a problem detected by Natalie Silvanovich of Google Project Zero. (check-in: 04925dee user: dan tags: trunk)
2017-10-18
15:02
Avoid using snprintf as a member variable of a struct in sqlite3ext.h. This causes problems on OSX. Similar to fix [a1fd3aa8]. (check-in: cd0471ca user: dan tags: trunk)
14:29
Avoid using snprintf as a member variable of a struct in sqlite3ext.h. This causes problems on OSX. (Closed-Leaf check-in: b066d5a6 user: dan tags: sqlite3ext-fix)
2017-10-17
18:33
The source code files generated for the 'sqlite3-all.c' target should not have Windows line-endings. (check-in: 6a08c434 user: mistachkin tags: trunk)
13:44
Fix the ".check" command of the command-line shell to return 1 (error) rather than 2 (exit) on a test failure. (check-in: e2af0cc6 user: drh tags: trunk)
2017-10-16
11:50
Improved comments, including a typo fix, on the whereLoopCheaperProperSubset() function. (check-in: 700a3c69 user: drh tags: trunk)
2017-10-15
22:16
In the query planner, do not consider index X to be a proper subset of index Y if X is a covering index but Y is not. (check-in: ee31c043 user: drh tags: trunk)
2017-10-14
19:58
Updates to the Makefiles for MSVC. Cherrypick of [ac8786f3f9f35cb6]. (check-in: 92eb721f user: mistachkin tags: branch-3.21)
19:54
Updates to the Makefiles for MSVC. (check-in: ac8786f3 user: mistachkin tags: trunk)
2017-10-13
20:14
Improved ability to generate stand-alone program using TCL and SQLite by compiling with -DTCLSH_INIT_PROC=name to cause the TCL interpreter to be initialized using procedure name(). Both sqlite3_analyzer and testfixture are now built this way. (check-in: d65d1f29 user: drh tags: trunk)
18:58
Add the tcl/mkccode.tcl script used to construct a single C-language source fiel for programs that combine C-code, SQLite, and TCL. Use this script to construct the sqlite3_analyzer program. (check-in: 298a3fdd user: drh tags: trunk)
16:24
Fix main.mk to name the win32 executable "sqlite3_expert.exe", not "sqlite3_expert". (check-in: e38571d5 user: dan tags: schemalint)
16:19
Move a bunch of unrelated test code out of tclsqlite.c and into test_*.c files. There is still some test code in tclsqlite.c, but the amount is greatly reduced. (check-in: a9c4bc88 user: drh tags: trunk)
16:01
The db_use_legacy_prepare command no longer exists. Use the undocumented -use-legacy-prepare option to DB version instead. (Closed-Leaf check-in: ea2fa9ab user: drh tags: tclsqlite-cleanup)
15:56
When compiling with SQLITE_TEST, extra options are available on the "DB version" command for controlling the internal state of the SqliteDb object, for testing purposes. (check-in: bf86478d user: drh tags: tclsqlite-cleanup)
15:06
Move some test logic out of tclsqlite.c and into auxiliary test_*.c files. This is a work in progress. (check-in: 95b7687f user: drh tags: tclsqlite-cleanup)
14:20
Update main.mk to build the sqlite3_expert program with -DSQLITE_THREADSAFE=0 and -DSQLITE_OMIT_LOAD_EXTENSION. To minimize dependencies. (check-in: 4c68ad7d user: dan tags: schemalint)
2017-10-12
20:37
Add the sqlite_dbpage virtual table (enabled using SQLITE_ENABLE_DBPAGE_VTAB). Make that virtual table and dbstat available to the command-line shell. (check-in: eaeeb09d user: drh tags: trunk)
20:24
Fix the EXPLAIN processing so that it returns SQLITE_ERROR on an OOM, as it should. (check-in: 4ec63ef2 user: drh tags: schemalint)
15:28
Add the experimental "sqlite_expert" extension. Used to find index definitions that might help with specified SQL queries. (Later:) Parked on a dead-end branch due to an assertion fault in TH3. We will merge again after the bug is fixed. (Closed-Leaf check-in: d1ef9eab user: dan tags: withdrawn)
14:18
Fix a harmless compiler warning about an unused parameter. (check-in: de20133d user: drh tags: branch-3.21)
14:13
Update this branch to match latest trunk. (check-in: d325da6c user: dan tags: schemalint)
14:13
Fix the "snapshot-tarball" makefile target, which was broken by the shell.c change of check-in [36acc0a9]. (check-in: c643ace2 user: drh tags: branch-3.21)
14:03
Merge fixes from trunk. All changes are on makefiles and test scripts. There are no core code changes. (check-in: 1fb87a0c user: drh tags: branch-3.21)
13:47
The src/shell.c file is now generated from src/shell.c.in, so remove shell.c from version control and update the makefiles to build it automatically. (check-in: 36acc0a9 user: drh tags: trunk)
13:21
Merge fixes from the 3.21 branch. (check-in: 29292169 user: drh tags: trunk)
10:28
Make sure the tableColumnList() routine of the command-line shell does not cause a null-pointer dereference in an error condition. (check-in: 5d0ceb8d user: drh tags: branch-3.21)
01:19
Fix a typo in a numeric constant in an assert() - a bug that has been present in the code since check-in [79e22b95038] on 2010-03-30. (check-in: f0a2724f user: drh tags: branch-3.21)
2017-10-11
17:50
Make JSON1 defines consistent in the makefiles for MSVC. (check-in: 31eee0e4 user: mistachkin tags: branch-3.21)
17:25
Enable JSON by default in the Windows command-line shell sqlite3.exe. (check-in: 79c96121 user: drh tags: branch-3.21)
11:12
Create a branch for the 3.21.0 release. Development continues on trunk. (check-in: 0f160a8a user: drh tags: branch-3.21)
2017-10-10
13:37
DROP TABLE now works for WITHOUT ROWID tables and the SQLITE_OMIT_AUTOVACUUM compile-time option. Fix for ticket [e651b1341861d6] (check-in: b8c1b5a5 user: drh tags: trunk)
2017-10-08
02:22
Fix harmless compiler warnings in FTS5 seen with MSVC. (check-in: 5594a121 user: mistachkin tags: trunk)
2017-10-07
23:58
Fix harmless compiler warning seen with MSVC. (check-in: 39d920d1 user: mistachkin tags: trunk)
23:35
Revise variable declaration moved in the previous check-in so sqlite3VdbeReset() is consistent with sqlite3VdbeRewind(). (check-in: 63d1b425 user: mistachkin tags: trunk)
23:31
Fix C99-style variable declaration issue seen with older versions of MSVC. (check-in: 14b181e8 user: mistachkin tags: trunk)
2017-10-06
18:00
Add tests for the example fts3 "rank" function that appears in the documentation. (check-in: 702b137a user: dan tags: trunk)
2017-10-05
20:57
Fix compiler warnings that come up with SQLITE_OMIT_WAL. (check-in: 8ca0fa8d user: drh tags: trunk)
20:02
Fix a problem building with SQLITE_OMIT_WAL defined. (check-in: 373b0ace user: dan tags: trunk)
19:12
Fix the command-line shell so that the ".schema --indent" command does a better job of dealing with \r\n in the middle of a CREATE statement in the schema. (check-in: 4258fb57 user: drh tags: trunk)
11:29
Disable the delta checksum verification in RBU by default. Reenable it using -DRBU_ENABLE_DELTA_CKSUM, if desired. (check-in: d22c99b6 user: drh tags: trunk)
2017-10-04
18:26
Updates to requirements marks. (check-in: 40964a4e user: drh tags: trunk)
17:05
Update the speedtest1 program so that it prints the output of "PRAGMA compile_options" if the -stats option is specified. (check-in: 7c69f8f1 user: dan tags: trunk)
16:35
Fix typos in session extension header comments. No changes to code. (check-in: 182ec9d6 user: mistachkin tags: trunk)
14:13
New test cases for ticket [b899b6042f97f5] derived from a bug report on the mailing list from Wout Mertens. (check-in: ef94ea06 user: drh tags: trunk)
12:08
Amend recent changes to busy.test to avoid failing with SQLITE_ENABLE_STAT4 builds. (check-in: 9ff49441 user: dan tags: trunk)
12:06
Turn restriction 20 on the query flattener into an assert since the situation restricted can no longer occur because of the more aggressive use of co-routines. (check-in: 4464f40c user: drh tags: trunk)
10:39
Add tests to verify that the busy-handler is invoked correctly when processing "PRAGMA optimize" and ANALYZE commands. (check-in: fb83c3d8 user: dan tags: trunk)
05:59
Remove a redundant restriction from the query flattener. (check-in: 66629b2a user: drh tags: trunk)
02:30
Fix a minor typo in the query flattener header comment. No code changes. (check-in: d050dc60 user: drh tags: trunk)
2017-10-03
19:53
Simplify the computation of types on columns of a view. (check-in: 772b0db1 user: drh tags: trunk)
18:35
Do not enable SELECT tracing with -DSQLITE_DEBUG. Require the -DSQLITE_ENABLE_SELECTTRACE compile-time option to enable SELECT tracing. (check-in: f5c39583 user: drh tags: trunk)
17:29
Add some OK_IF_ALWAYS_TRUE() marks on optimization branches in select.c. (check-in: 1dd82808 user: drh tags: trunk)
17:17
Remove an unused variable from sqlite3Insert() and fix harmless compiler warnings associated with -DSQLITE_MUTATION_TEST. (check-in: 7be760e9 user: drh tags: trunk)
16:57
Fix the sqlite3_column_decltype() interface to return the correct datatype when the value comes through a CTE. (check-in: 966438bd user: drh tags: trunk)
14:24
The simplification to sqlite3SelectExpand() in last night's [3a4ffb21] check-in was not completely correct. This adjustment is needed for correct OOM handling in some configurations. (check-in: c5ad5e16 user: drh tags: trunk)
03:01
Do not compute column and row size estimates for the transient Table objects associated with the result set of a SELECT statement, since those estimates are never used for anything constructive. (check-in: e4342fd4 user: drh tags: trunk)
2017-10-02
23:50
Mark a single branch within sqlite3SelectExpand() as an optimization. (check-in: 3a4ffb21 user: drh tags: trunk)
23:30
Simplification to sqlite3SelectPrep() for improved testability. (check-in: 5bf2ccb9 user: drh tags: trunk)
21:29
Add the OK_IF_ALWAYS_TRUE() and OK_IF_ALWAYS_FALSE() macros for marking conditionals that improve performance but do not change the outcome. (check-in: 6035c9b2 user: drh tags: trunk)
13:20
Avoid using lookaside memory for persistent virtual table structures. (check-in: d815f255 user: drh tags: trunk)
02:52
The query planner now always prefers to implement a FROM-clause subquery using a co-routine rather than flattening the subquery into the outer query. (check-in: c9104b59 user: drh tags: trunk)
02:32
Improvements to a comment in lempar.c. No code changes. (check-in: 8000d230 user: drh tags: trunk)
2017-09-30
11:47
More details in the header comment of pushDownWhereTerms(). No changes to code. (Closed-Leaf check-in: 92848623 user: drh tags: prefer-coroutine-sort-subquery)
10:50
Make sure the SQLITE_Stat34 optimization switch is always 0x800, a value which is hard-coded in the TH3 test suite. (check-in: 6aed4ea3 user: drh tags: prefer-coroutine-sort-subquery)
01:25
Fix unreachable conditionals and revise a testcase that was made obsolete by the changes on this branch. (check-in: 71f0adf7 user: drh tags: prefer-coroutine-sort-subquery)
2017-09-29
22:13
Always render a subquery that is not part of a join as a co-routine. (check-in: 6b1651d7 user: drh tags: prefer-coroutine-sort-subquery)
16:08
Merge the query flattener comment improvements from trunk. (check-in: f62cd4d9 user: drh tags: prefer-coroutine-sort-subquery)
16:07
Clean up the comments on the query flattener to more clearly and accurately express the conditions under which the flattener is able to run. (check-in: 0840f9f8 user: drh tags: trunk)
14:31
Merge changes from trunk. (check-in: 06f432fb user: drh tags: prefer-coroutine-sort-subquery)
12:44
Make sure the 6th parameter to the authorizer callback for view subqueries has the correct view name. (check-in: 2a45bbc9 user: drh tags: trunk)
12:12
Better names for subqueries in EXPLAIN comments. (check-in: 04ef40a8 user: drh tags: trunk)
2017-09-28
20:06
Do not flatten subqueries that contain an ORDER BY or GROUP BY clause and can be implemented using a co-routine. (check-in: 042d655d user: drh tags: prefer-coroutine-sort-subquery)
17:29
Remove the (undocumented) query-planner control that prevents a "SELECT ALL" subquery in FROM clause from being implemented as a co-routine. This control was added by [a29e117d7ec], where it was called a "stop-gap". (check-in: ff2f5a31 user: drh tags: trunk)
16:56
Fix over-length source code lines in select.c. No logic changes. (check-in: fd3267ef user: drh tags: trunk)
13:47
Fix an issue introduced by check-in [4cd2a9672c59] (2017-03-03) that could allow a negative value in the 3rd parameter to memmove() when defragmentPage() is called on a btree page with a corrupted freeblock list. The corruption is now detected early and results in an SQLITE_CORRUPT return before the memmove() is reached. (check-in: 5b9ae693 user: drh tags: trunk)
01:58
Add new routines to simplify dealing with collating sequences in expressions: sqlite3ExprNNCollSeq() and sqlite3ExprCollSeqMatch(). (check-in: 490e488e user: drh tags: trunk)
01:09
Indexes on expressions with a COLLATE clause are able to satisfy an ORDER BY with the same COLLATE clause. (check-in: 04130018 user: drh tags: trunk)
00:01
In two places, change the magic number -1 to its proper symbol XN_ROWID. (check-in: 80277d2f user: drh tags: trunk)
2017-09-27
16:51
Disable tests for the LIKE optimization when ICU is enabled, since the LIKE optimization only works for the built-in LIKE operator and ICU overrides the built-in. (check-in: f5ef2e1b user: drh tags: trunk)
2017-09-25
09:37
Add an extra snapshot related test case. (check-in: 24a95e14 user: dan tags: trunk)
2017-09-22
16:23
Use the updated Win32 VFS semantics for winOpen from check-in [5d03c738e9] for WinRT, et al, as well. (check-in: 2c03d8b8 user: mistachkin tags: trunk)
12:52
Partial backout of check-in [e0af9a904076]. It turns out we do need some extra space at the end of the record blob as an overrun area to use when decoding a maliciously malformed record. (check-in: 403b88a8 user: drh tags: trunk)
00:24
Update the configure script so that it looks for tclsh8.7 ahead of tclsh8.6. (check-in: 0a12915b user: drh tags: trunk)
2017-09-21
20:43
In the Windows VFS, when trying to open a database file read/write, if it fails check to see if the file exists and is read-only and immediately fall back to a read-only open attempt, rather than running the AV retry loop. (check-in: 5d03c738 user: drh tags: trunk)
20:03
In the Windows VFS, do not emit an SQLITE_CANTOPEN error log message when falling back from SQLITE_OPEN_READWRITE to SQLITE_OPEN_READONLY. Wait until the open fails completely. (check-in: fa3f5bcc user: drh tags: trunk)
19:08
Fix harmless UB in the ICU extension. (check-in: 68e9a840 user: drh tags: trunk)
13:11
Fix a potential use of an uninitialized pointer in RTree following an OOM error. (check-in: fd4ec0cd user: drh tags: trunk)
10:24
Fix a bug in tool/mksourceid.c: The mksourceid.c program was incorrectly including the "# Remove this line" line of the Fossil-generated "manifest" file in the SHA3 hash. That means that all SQLITE_SOURCE_IDs for trunk versions going back to check-in [30966d56] (2017-08-22) are incorrect. (check-in: 65765222 user: drh tags: trunk)
01:04
Revert one performance improvement changes from check-in [3b3e32d4cd07] as it was causing a reference to an uninitialized value. (check-in: f8b1c64d user: drh tags: trunk)
00:49
Fix the rendering of the P4_INTARRAY argument to the OP_IntegrityCk opcode in the output of EXPLAIN. (check-in: adc12c83 user: drh tags: trunk)
2017-09-20
18:47
Size and performance optimization on sqlite3VdbeMemGrow(). (check-in: 4b3f7eac user: drh tags: trunk)
18:07
The BLOB returned by sqlite3VdbeMemFromBtree() does not need to be zero-terminated. (check-in: e0af9a90 user: drh tags: trunk)
17:49
Small size and performance optimization in the bytecode engine. (check-in: 3b3e32d4 user: drh tags: trunk)
10:47
Improved resolution of large integer values in "CAST(x AS NUMERIC)". (check-in: 7f2bd4ff user: drh tags: trunk)
09:09
Updates to the "lemon.html" document received from Andy Goth. (check-in: 5b2002f3 user: drh tags: trunk)
2017-09-18
18:17
Add the sqlite3_mmap_warm() function as an extension in the ext/misc/mmapwarm.c source file. (check-in: 1b2de414 user: drh tags: trunk)
18:08
Fix a typo in the MSVC makefile. (Closed-Leaf check-in: 3235835b user: drh tags: mmap-warm)
16:28
Add extension "mmapwarm.c". Provides function sqlite3_mmap_warm(), used to "warm up" the memory mapping used by SQLite in mmap mode to access db file content. (check-in: d4a30b91 user: dan tags: mmap-warm)
13:16
Minor simplification of error message generation during compound query code generation. (check-in: a9447193 user: drh tags: trunk)
09:40
The out-of-bounds read on recovery fix of check-in [378afa16381a222a] caused problems for some corner-case error conditions. This alternative fix appears to work better. (check-in: 74f399d8 user: drh tags: trunk)
00:18
Fix the CSV virtual table extension so that it works when the default character is unsigned. (check-in: 42f07775 user: drh tags: trunk)
2017-09-17
19:45
Do not make the assumption (as check-in [4da49a95c0f07] incorrectly did) that the ExprList returned by sqlite3ExprListDup() would never be passed into sqlite3ExprListAppend(). Include a new test case that shows this sometimes does happen. (check-in: 29227d00 user: drh tags: trunk)
2017-09-16
20:58
Simplify the sqlite3VdbeGet() routine. Smaller, faster, and easier to maintain. (check-in: 5dbb255a user: drh tags: trunk)
2017-09-15
17:40
Remove an unnecessary parameter from selectInnerLoop(). (check-in: dd95887f user: drh tags: trunk)
15:38
Improved the header-comment documentation on sqlite3ExprCodeExprList(). No changes to code. (check-in: 5dc3ecb5 user: drh tags: trunk)
15:17
Optimization to the ExprList object to make it slightly smaller and faster. (check-in: 4da49a95 user: drh tags: trunk)
14:36
Fix a harmless comment typo. No changes to code. (check-in: f7f0bf1d user: drh tags: trunk)
2017-09-14
21:12
Add another test case for the problem fixed by the previous commit. (check-in: 1a7e0b61 user: dan tags: trunk)
20:41
Avoid an out-of-bounds read that can be caused by a specially constructed journal file. (check-in: cf5bf42c user: dan tags: trunk)
02:36
Avoid an out-of-bounds read on a recovery attempt using a carefully crafted database and rollback journal with mismatched page sizes. The test case for this is in TH3. (check-in: 378afa16 user: drh tags: trunk)
2017-09-13
20:20
Test case update due to PRAGMA integrity_check enhancements in [8525c30c]. No changes to code. (check-in: 43c6023b user: drh tags: trunk)
12:55
Disable FTS3 matchinfo() tests that assume a littleEndian platform when running on bigEndian. (check-in: 87ccdf9c user: drh tags: trunk)
00:33
Improvements to PRAGMA integrity_check for better detection of malformed records. Integrity_check now avoids returning SQLITE_CORRUPT on a corrupt record. Also includes microoptimizations that I stumbled over while working on integrity_check. (check-in: 8525c30c user: drh tags: trunk)
00:13
PRAGMA integrity_check returns SQLITE_OK even if it encounters corruption while scanning indexes. (Closed-Leaf check-in: 81f62e99 user: drh tags: improved-integrity-check)
00:01
Fix test script comment. No changes to code. (check-in: a5a19492 user: mistachkin tags: trunk)
2017-09-12
23:58
Remove use of the rand_s() function (added by [139081bef9f63c3e]) as it appears to cause issues with some third-party DLLs. (check-in: 3a2793aa user: mistachkin tags: trunk)
15:05
Fix an error in [b22cdd67] that can cause a negative infinity to be (rarely) reported as a positive infinity. (check-in: 9780b23c user: drh tags: trunk)
13:27
Changes to (hopefully) get the build working with recent Intel compilers. (check-in: b22cdd67 user: drh tags: trunk)
00:24
Make sure all connections are closed in the pragma.test script. Test change only - no changes to code. (check-in: d7b7f038 user: drh tags: trunk)
2017-09-11
23:46
New test case for ticket [b899b6042f97f52d]. (check-in: 9d91ee5e user: drh tags: trunk)
20:54
Add support for new operators in virtual tables: !=, IS, IS NOT, IS NULL, and NOTNULL. (check-in: 3b7dbe9d user: drh tags: trunk)
19:47
Refactor names of constants and functions associated with the auxiliary operators for xBestIndex. (Closed-Leaf check-in: 0fb992af user: drh tags: vtab-extra-ops)
18:37
Minor adjustments to indentation and spacing for clarity. No changes to code. (check-in: d3153abd user: drh tags: vtab-extra-ops)
08:53
Add tests to check that affinities work with != operators on virtual table column values. No changes to code. (check-in: 8d24e080 user: dan tags: vtab-extra-ops)
2017-09-10
01:06
Simplifications to the PRAGMA integrity_check code generator. (check-in: 99b9140c user: drh tags: improved-integrity-check)
2017-09-09
22:46
Simplification and performance improvement to sqlite3_reset(). (check-in: b6425d01 user: drh tags: improved-integrity-check)