/ Timeline
Login

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

200 most recent check-ins using file test/window3.test version e9959a99

2020-01-23
15:00
Fix typos in the sqlite3ext.h header file that prevent some newer APIs from being accessed from loadable extensions. Leaf check-in: 14331989 user: drh tags: trunk
00:08
Fix variable declaration issue seen with MSVC. check-in: 8a6fe306 user: mistachkin tags: trunk
2020-01-22
23:08
Fix a NEVER() macro that can be true if compiled with SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION. Ticket [b985f0bd1636d9bc] check-in: 9f0f5d59 user: drh tags: trunk
21:18
Merge version 3.31.0 Leaf check-in: 9c3f4638 user: drh tags: begin-concurrent-pnu-wal2
21:12
Merge version 3.31.0 Leaf check-in: 3bb267de user: drh tags: wal2
21:06
Merge version 3.31.0 Leaf check-in: e65e6c01 user: drh tags: begin-concurrent-pnu
20:56
Merge version 3.31.0 Leaf check-in: bbbc2881 user: drh tags: begin-concurrent
20:36
Merge version 3.31.0 Leaf check-in: 0eae87ad user: drh tags: apple-osx
20:02
Merge in version 3.31.0 Leaf check-in: f418afa1 user: drh tags: reuse-schema
18:38
Version 3.31.0 check-in: f6affdd4 user: drh tags: trunk, release, version-3.31.0
2020-01-21
21:01
Begin adding instrumentation to record and report on the set of key-ranges a concurrent transaction reads from the database. Leaf check-in: c39e3c14 user: dan tags: begin-concurrent-report
16:31
Update test file exclusive.test so that it works with the "journaltest" permutation. check-in: 4daf94d8 user: dan tags: trunk
16:23
Fix a problem with using views in SQLITE_OMIT_VIRTUAL_TABLE builds. Also some test case fixes required for the same builds. check-in: 934ee8bd user: dan tags: trunk
15:01
Fix a case in fts3auto.test that fails for SQLITE_DISABLE_FTS4_DEFERRED builds. check-in: d241055e user: dan tags: trunk
14:42
Fix an assert() that could fail in SQLITE_MUTATION_TEST builds following an error in a query that uses CTEs. check-in: c7e29458 user: dan tags: trunk
13:40
Fix a problem in the userauth extension causing it to occasionally set "PRAGMA count_changes" (and some others) to true. check-in: 3a62f642 user: dan tags: trunk
12:29
Fix the series.c and spellfix.c extensions to use SQLITE_VTAB_INNOCUOUS correctly. Fix the documentation on sqlite3_vtab_config() to take into account SQLITE_VTAB_INNOCUOUS and SQLITE_VTAB_DIRECTONLY. check-in: 9265cb7f user: drh tags: trunk
01:45
Improvements to the autoconf TEA Makefile for MSVC. check-in: cffcf12f user: mistachkin tags: trunk
2020-01-20
15:32
Merge recent fixes from trunk. check-in: 9c920bba user: drh tags: reuse-schema
14:42
In the fuzzcheck test program, reduce the default expression depth limit from 1000 to 500 to avoid stack-overflow problems when running stress tests using clang ASAN. check-in: 63d886f4 user: drh tags: trunk
2020-01-19
20:37
Enhancement to the CLI to allow the ".parameter init" command to work even if defensive mode is turned on. check-in: 4d462550 user: drh tags: trunk
2020-01-18
23:52
Documentation improvements. check-in: 535afe15 user: drh tags: trunk
22:20
In the TCL interface, add the ability to change the SQLITE_DBCONFIG_TRUSTED_SCHEMA setting using the "db config" method. check-in: 1accfa8c user: drh tags: trunk
21:34
Allow non-deterministic function in CHECK constraints. It turns out that PostgreSQL, MySQL, and SQLServer all allow this. We should be the the exception. Ticket [830277d9db6c3ba1] check-in: 8c8ce526 user: drh tags: trunk
19:58
Fix a couple of test case issues on this branch. check-in: 9830a44b user: dan tags: reuse-schema
19:46
Do not use memcpy() of zero bytes when initializing a pager. This avoids a warning. check-in: cca43778 user: drh tags: trunk
19:07
Disable a redundant test case that uses a very large stack, and hence is unable to run with -fsanitize=undefined,address. check-in: 3c63f68e user: drh tags: trunk
19:02
Fix harmless compiler warning seen with MSVC. check-in: cd0437ba user: mistachkin tags: trunk
18:59
Have this branch call sqlite3LockAndPrepare() instead of sqlite3Prepare() when parsing SQL for new schema objects in order to ensure that schemas are released as soon as possible. check-in: 7a4ec579 user: dan tags: reuse-schema
14:50
Add extra front margin to the fake empty filename returned by sqlite3PagerFilename() for an in-memory or TEMP database. check-in: fee94567 user: drh tags: trunk
13:53
Fix the VDBE so that it correctly handles the sequence of operations OP_OpenEphemeral, OP_OpenDup, OP_OpenEphemeral, and OP_OpenDup in that order on the same cursor. check-in: a1be6ee0 user: drh tags: trunk
2020-01-17
23:27
Fix a typo in a comment. No code changes. check-in: 4363f69c user: drh tags: trunk
21:12
The compress() function should not be deterministic since the same input can have multiple possible compressed outputs. The uncompress() function, on the other hand, is deterministic. check-in: 84f31490 user: drh tags: trunk
19:14
Fix #ifdefs so it compiles cleanly with all SQLITE_OMIT compile-time options. Update compile-time option testing. check-in: 7584e4b6 user: drh tags: trunk
16:47
Improved rounding in the 'unixepoch' feature of the date and time functions. check-in: c9abf1bd user: drh tags: trunk
15:45
Update test script instrfault.test to account for the fact that bound blob values cast to text values are now intepreted using the text encoding of the database, instead of always as utf-8. check-in: 4d6cb288 user: dan tags: trunk
15:33
More restrictions on changes to shadow tables when in defensive mode. Leaf check-in: b302b260 user: drh tags: branch-3.28
15:24
Validate the type, name, and tbl_name fields of the sqlite_master table when loading the schema, unless writable_schema is engaged. check-in: 3d13fbf2 user: drh tags: branch-3.28
14:56
Do not allow shadow tables to be dropped in defensive mode. check-in: ad1f760f user: drh tags: branch-3.28
14:30
Import the 3.31.0-beta FTS3/4 code directly into the 3.28 branch, thus providing 3.28 with all the latest 3.31 fixes. FTS3 has not been enhanced to use any core functionality that was not already available in 3.23, so no modifications were made to FTS3 sources for this import. check-in: be4269c6 user: drh tags: branch-3.28
11:18
Fix a case in "fuzz.test" that could fail, as non-deterministic functions may no longer appear in CHECK constraints. check-in: a370871e user: dan tags: trunk
2020-01-16
17:53
New testcase() macros in select.c, for coverage of the change from two check-ins ago. check-in: 52206488 user: drh tags: trunk
16:32
Add the SQLITE_FCNTL_CKPT_DONE file-control for the use of custom VFSs. check-in: 3cc39e50 user: dan tags: trunk
16:12
Do not allow the constant-propagation optimization to apple to ON/USING clause terms as it does not help and it might cause downstream problems. check-in: 1bc783da user: drh tags: trunk
13:02
Very small performance improvement by ensuring that the argument to sqlite3VdbeFreeCursor() is non-NULL. Hold for the next sprint. Leaf check-in: f8801ffd user: drh tags: close-cursor-faster
12:25
Fix an SQL syntax error in the comment on the omit-left-join optimization. No changes to code. check-in: 86b5e5a2 user: drh tags: trunk
11:51
Clean up the definitions of the TERM_ constants in the code generator. Formatting only - no logic changes. check-in: af06f80a user: drh tags: trunk
2020-01-15
17:18
Fix the assert_schema_state_ok() routine so that it correctly ignores ATTACH-ed database that failed to open due to an error. check-in: 1194a42a user: drh tags: reuse-schema
16:20
Do not allow the "PRAGMA encoding" statement to change the database encoding if TEMP content exists, or content in any other attached database. Formerly, encoding changes were allowed if just the main database file was empty. Ticket [a08879a4a476eea9]. check-in: 03b003c9 user: drh tags: trunk
14:26
Merge all recent enhancements and fixes from trunk. check-in: f7839178 user: drh tags: reuse-schema
14:21
Merge in the latest trunk changes via the begin-concurrent-pnu branch. check-in: 350627f3 user: drh tags: begin-concurrent-pnu-wal2
14:11
Merge recent enhancements and fixes from trunk. check-in: 35eae71a user: drh tags: wal2
13:48
Merge all recent enhancements and fixes from trunk. check-in: 110a081f user: drh tags: begin-concurrent-pnu
13:34
Merge fixes and enhancements from trunk into begin-concurrent. check-in: 95ba2f50 user: drh tags: begin-concurrent
12:49
Merge all recent enhancements and fixes from trunk into the apple-osx branch. check-in: dadedf41 user: drh tags: apple-osx
2020-01-14
16:50
Fix the urifuncs.c extension (used for testing and debugging only) so that the sqlite3_filename_database() SQL function and its siblings correctly handle an invalid schema name passed in as the argument. check-in: 3d7434a9 user: drh tags: trunk
16:39
Remove an ALWAYS on a branch for improved database corruption detection in btree.c:freeSpace(). Test case found by dbsqlfuzz. check-in: 54bf0481 user: drh tags: trunk
16:33
Add the new noop_nd() debugging function to the noop.c extension. check-in: 72911fb1 user: drh tags: trunk
13:24
For the showdb utility program, more accurate detection of when the database is in autovacuum mode for the "pgidx" subcommand. check-in: 9ce2192b user: drh tags: trunk
13:13
Fix a minor typo on a comment in the CLI implementation. check-in: db4fb350 user: drh tags: trunk
00:52
Improvements to sqlite3_open_v2() documentation. check-in: 4c4fd62a user: drh tags: trunk
2020-01-13
15:25
More documentation updates. No code changes. check-in: a684d4ef user: drh tags: trunk
13:33
Documentation updates. No changes to code. check-in: cc0e0aa3 user: drh tags: trunk
2020-01-12
22:38
Better than removing the incorrect assert() is to change it into a testcase() together with a comment indicating where an appropriate test case can be found, and the ticket that provoked the change. Ticket [614b25314c766238] check-in: 3e3c60d8 user: drh tags: trunk
22:25
Change the zipfile virtual table so that the xBestIndex method gives a reasonable cost estimate even if no filename is specified. The missing filename error continues to be raised in the xFilter method. Meanwhile, the more reasonable cost estimate avoids unnecessary wierdness in the query planner. check-in: 0e468aa6 user: drh tags: trunk
22:20
Remove an incorrect assert(). Fix for ticket [614b25314c766238] check-in: 6a999c5a user: drh tags: trunk
2020-01-11
21:08
New apis: sqlite3_filename_database(), sqlite3_filename_journal(), and sqlite3_filename_wal(). Also sqlite3_uri_key(). And the other sqlite3_uri functions now work using the journal or wal filename in addition to the database file. And the sqlite3_db_filename() result is guaranteed to work as an argument to the sqlite3_uri functions. check-in: fd7bcc53 user: drh tags: trunk
20:27
Minor changes for consistency between sqlite3_filename_wal() and sqlite3_filename_journal(). Closed-Leaf check-in: 9a70ff43 user: drh tags: enhanced-uri
16:08
Redesign for better legacy compatibility. Add the sqlite3_uri_key() interface. check-in: bcb43d11 user: drh tags: enhanced-uri
2020-01-10
18:05
Rearchitect the way in which filenames are stored in the Pager object so that the sqlite3_uri_parameter() interface will work from journal and WAL filenames too. This check-in implements the central idea, and compile and runs somewhat, but crashes on an extended test. check-in: 2ae77bd2 user: drh tags: enhanced-uri
01:05
Fix to the register validity tracking logic in debug builds. No impact on release builds. check-in: 0a500da6 user: drh tags: trunk
00:20
Begin making changes to turn off trusted schema in command-line tools that open SQLite databases. There are a lot of these, and a lot of places to change, which makes me wonder if trusted schema should be off by default. Leaf check-in: 3d23a275 user: drh tags: default-untrusted-schema
00:00
Documentation updates on newer APIs. No changes to code. check-in: 8845a8c2 user: drh tags: trunk
2020-01-09
23:07
Fix the fossildelta.c extension so that it will compile on mingw. check-in: 20237d5d user: drh tags: trunk
20:44
Merge in the untrusted-schema enhancements. See doc/trusted-schema.md for details. check-in: 5720924c user: drh tags: trunk
20:33
Only register the fts3_tokenizer() function using a single text encoding. check-in: 966964af user: drh tags: trunk
20:33
Fix a harmless compiler warning. check-in: edbf911f user: drh tags: trunk
20:11
Fix an assert() in window.c that could fail with some obscure SELECT statements that use window functions. Ticket [678ecf429f8d1a5f] check-in: 83dc5567 user: dan tags: trunk
16:28
Fix a problem in the encoding display in the updated PRAGMA function_list. Closed-Leaf check-in: 318ff772 user: drh tags: new-security-options
16:00
Fix minor typos in the trusted-schema.md document. check-in: 87aea3ab user: drh tags: new-security-options
15:18
Minor formatting changes in the trusted-schema.md document. check-in: 55553b5e user: drh tags: new-security-options
14:51
Design notes for the new-security-options branch. check-in: af7c1ed4 user: drh tags: new-security-options
13:08
Simplified error message for the unsafe use of a virtual table. check-in: d662129a user: drh tags: new-security-options
01:20
Fix a problem that restricted edgy functions in TEMP tables. New test cases added. check-in: 8878c407 user: drh tags: new-security-options
2020-01-08
22:22
Block edgy functions used in DEFAULT constraints. check-in: da434dc1 user: drh tags: new-security-options
20:37
Performance improvements and test cases added. Allow "PRAGMA trusted_schema=ON" check-in: 30882ca8 user: drh tags: new-security-options
17:28
Check for whether or not it is safe to use non-innocuous functions as the function is being coded, not when its name is resolved. check-in: 1da802d5 user: drh tags: new-security-options
15:44
Provide the -innocuous option to the "db func" method in the TCL interface. check-in: 0138652b user: drh tags: new-security-options
15:43
Fix the rot13.c extension to be deterministic. Add the noop.c extension. check-in: a679122c user: drh tags: new-security-options
14:39
In the TreeView debugging output, show a "DDL" mark on SrcList and Expr nodes that derive from a non-TEMP schema. check-in: fe7472fd user: drh tags: new-security-options
13:08
Merge recent changes from trunk. check-in: 5962921f user: drh tags: new-security-options
12:17
When doing a test-to-double conversion on a BLOB with an odd number of bytes and assuming a UTF16 encoding, ignore the last byte. Ticket [9eda2697f5cc1aba]. check-in: 1c76f1d8 user: drh tags: trunk
11:36
Fix a minor formatting error in the display of BLOB values during VDBE tracing. check-in: 29544288 user: drh tags: trunk
10:57
Improvements to the documentation of sqlite3_create_collation(). check-in: fa866aec user: drh tags: trunk
04:36
Simplification of the logic in the constant-propagation optimization. check-in: 1c3e5c20 user: drh tags: trunk
01:43
Fix the constant propagation optimization so that it does not try to propagate constant expressions that have affinity. Ticket [82ac75ba0093e5dc] check-in: 6db1c349 user: drh tags: trunk
00:39
Fix a misworded comment. No code changes. check-in: ee0bc7ed user: drh tags: trunk
2020-01-07
19:45
Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set the risk rank for many virtual tables. check-in: 4c21373c user: drh tags: new-security-options
18:10
Enforce SQLITE_VTABRISK restrictions. check-in: 3d87ff31 user: drh tags: new-security-options
18:10
Fix a performance regression caused by the previous check-in. check-in: d7d98d3d user: drh tags: trunk
16:09
Invert the UNTRUSTED_SCHEMA setting to be TRUSTED_SCHEMA. check-in: f5fcf1fb user: drh tags: new-security-options
15:44
Merge recent fixes from trunk. check-in: 5dfa33a0 user: drh tags: new-security-options
14:51
Provide the ability to tag an application-defined function as "testonly". Leaf check-in: e6f5c0e0 user: drh tags: testonly-functions
13:32
Add an "|| CORRUPT_DB" term to an assert() statement inside of btree. check-in: 03c1d75d user: drh tags: trunk
09:06
Fix an instance of an undefined behaviour (a left-shift of a 64-bit unsigned integer by a value greater than 64) that could occur in fts3. check-in: e1f12978 user: dan tags: trunk
2020-01-06
20:48
In the typeof() optimization in OP_Column, expand the size of the bogus buffer provided for data so that it is big enough to cover the increased number of bytes displayed during register tracing from check-in [54553bf16fabd72d]. This is the correct fix for ticket [bbd55a97e66ff50d], though the earlier one does not hurt and is useful to retain. check-in: e1154c39 user: drh tags: trunk
19:30
Merge enhancements from trunk. check-in: 9c50f6c2 user: drh tags: new-security-options
19:23
Rewrite the (debugging use only) sqlite3VdbeMemPrettyPrint() function to use the safer StrAccum interface rather than writing directly into a static string buffer. Perhaps this will address ticket [bbd55a97e66ff50d], which we are unable to reproduce. check-in: 69f6a7e4 user: drh tags: trunk
18:59
Backout change [4d0b9109f7a5312d4e1] because the conditional it added is no longer reachable due to check-in [1409758f72c0206c]. check-in: b3f26967 user: drh tags: trunk
18:44
Move variable declaration to start-of-block for MSVC. check-in: 55c136ef user: mistachkin tags: trunk
17:33
Do not attempt to use the skip-scan optimization if prior terms of the index are already used for non-equality constraints. Ticket [304017f5f04a0035] check-in: d7126a9c user: drh tags: trunk
17:06
Ensure the SF_Aggregate flag on a SELECT statement is set if a DISTINCT is transformed to a GROUP BY. Ticket [9c944882]. check-in: 1409758f user: dan tags: trunk
15:25
Refactor names of flags for improved legibility. check-in: 411e8ec2 user: drh tags: new-security-options
2020-01-05
21:53
Remove a NEVER in btree due to a new test case from dbsqlfuzz. check-in: 46f8ef70 user: drh tags: trunk
2020-01-04
20:58
Refactor the names of the new controls for restricting what actions the schema can take behind the application's back. check-in: 65d7d39a user: drh tags: new-security-options
19:58
Enhance PRAGMA function_list to show internal functions if the direct use of internal functions is enabled via the SQLITE_TESTCTRL_INTERNAL_FUNCTIONS test control. check-in: 7a8d7ca7 user: drh tags: new-security-options
19:19
Merge all fixes and enhancements from trunk. check-in: b878c30f user: drh tags: new-security-options
19:14
Fix DBSTAT so that it returns no rows, rather than an error when the WHERE clause is "schema=NULL". check-in: 5b246b47 user: drh tags: trunk
19:12
Fix harmless compiler warnings. check-in: 8452fe03 user: drh tags: trunk
18:38
Omit the omit flat from eq constraints on column "name" of dbstat virtual tables. Fix for [74a4c386]. check-in: cfff5cb2 user: dan tags: trunk
18:33
Record when the OP_IfNotOpen branch is and is not taken. check-in: 182a898b user: drh tags: trunk
17:55
Remove another NEVER added by check-in [7b62555e285f32d3]. Dbsqlfuzz found another test case. check-in: 481f4956 user: drh tags: trunk
17:42
New test cases in test/in4.test require rtree, so disable those tests on builds that lack the rtree extension. check-in: b5900914 user: drh tags: trunk
16:55
Fix a problem where the loop for the RHS of a LEFT JOIN uses values from an IN() clause as the second or subsequent field of an index. check-in: 95ef6896 user: dan tags: trunk
15:37
Merge the latest fixes from trunk. check-in: 26ef709a user: drh tags: new-security-options
15:21
Fix a false-positive in the register validity tracking logic by moving the temporary register release call before the jump that uses that temporary register. check-in: 9da48a5c user: drh tags: trunk
14:57
Improve a testcase in test/fuzzdata8.db to make it more resilient. check-in: 139aefe6 user: drh tags: trunk
14:50
Back out another NEVER added by check-in [7b62555e285f32d3] - the test case was already in test/fuzzdata3.db, but it only occurs if compiled without SQLITE_ENABLE_PREUPDATE_HOOK. check-in: 61f873b1 user: drh tags: trunk
14:00
Omit the omit flag from eq constraints on column "aggregate" of dbstat virtual tables. Fix for [727074e2]. check-in: 74ef6f2b user: dan tags: trunk
12:34
Restore a NEVER and an assert in btree that was removed by check-in [7b62555e285f32d3]. Dbsqlfuzz found test cases. check-in: 04a05c83 user: drh tags: trunk
01:43
Enhance PRAGMA function_list so that it shows all instances of each FuncDef, the number of arguments, the encoding, the type, and the flags. Use this capability to locate and fix incorrect function flags in the standard build. check-in: 9ca906d2 user: drh tags: new-security-options
2020-01-03
21:57
Invert the SQLITE_FUNC_SAFE bit to be SQLITE_FUNC_UNSAFE. The external bit is still SQLITE_INNOCUOUS. It gets inverted as the appdef function is registered. check-in: 1c266cb3 user: drh tags: new-security-options
20:57
When UNSAFE_IN_VIEW is disabled, only allow functions in views that are tagged with SQLITE_INNOCUOUS. check-in: 9ee79b25 user: drh tags: new-security-options
20:16
In fts3, avoid making a very large memory allocation if the merge-hint record is corrupt. check-in: 9add58fe user: dan tags: trunk
17:40
Add NEVER macros to error-detection branches that were made unreachable (as far as I can tell) by check-in [ceacc28b03580334]. check-in: 7b62555e user: drh tags: trunk
16:38
Improvement to check-in [7405e98225761180] so that missing or null filenames given to the zipfile extension throw an immediate error. check-in: 523e09bd user: drh tags: trunk
15:51
Improve a specific case of early database corruption dectecion in the b-tree layer. check-in: ceacc28b user: dan tags: trunk
15:22
Merge fixes from trunk. check-in: 002406df user: drh tags: new-security-options
14:34
Remove an over-zealous ALWAYS() macro and add a test case that shows that the conditional can sometimes be false. check-in: 536e9a9d user: drh tags: trunk
14:27
Fix a possible NULL pointer dereference caused by using a "VALUES(...)" as a component of a compound SELECT with non-integer ORDER BY clause terms. check-in: 9d791116 user: dan tags: trunk
14:16
Fix the OP_Copy-coalesce optimization so that if the previous row happens to end with OP_Copy but is not a candidate for the optimization due to jumps, then the optimization is correctly bypassed. check-in: b36126c1 user: drh tags: trunk
13:55
Ensure that when a Select object is reset a new, empty, SrcList is allocated. check-in: 4889cbf8 user: dan tags: trunk
02:20
When generating the name of a view (or common table expression) because the SQL does not specify a name, avoid the names "true" and "false" which might be confused for the boolean literals of the same name, leading to an inconsistent abstract syntax tree. check-in: ff9492d3 user: drh tags: trunk
00:28
Fix a problem in sqlite3TreeViewBareExprList() in which the routine was not interpreting the new ExprList format correctly. check-in: cd56872a user: drh tags: trunk
2020-01-02
23:50
Merge enhancements from trunk. check-in: 091403a6 user: drh tags: new-security-options
22:28
Add the two-size lookaside memory allocator. Also, reduce the per-entry size of the ExprList object. check-in: 51665bf0 user: drh tags: trunk
22:23
NEVER() and ALWAYS() macros tagging unreachable branches. Closed-Leaf check-in: 34b87774 user: drh tags: two-size-lookaside
21:41
Merge the latest enhancements from trunk. check-in: bd57e6d9 user: drh tags: two-size-lookaside
21:30
Do not allow the zipfile virtual table to start a transaction if no filename has been specified. check-in: 7405e982 user: drh tags: trunk
19:50
Fix some test logic in the OP_Delete opcode so that it works after a cursor-trip. check-in: 28900e5c user: drh tags: trunk
18:37
Ifdef-out code that is only possible with the sessions extension. check-in: 4fcf07f7 user: drh tags: trunk
17:46
Have the OP_ReleaseReg opcode also invalidate the registers if P5 is non-zero. check-in: 937be221 user: drh tags: trunk
16:24
Handle blobs that are the return values of functions being cast to text in utf16 databases in the same way as blobs read directly from the database. Fix for [771fe617]. check-in: e782096a user: dan tags: trunk
15:02
Fix the OP_Move opcode so that it correctly manages dependency tracking. This change impacts debugging builds only. check-in: 5377add4 user: drh tags: trunk
14:42
Enhancements to aid testing and debugging: In PRAGMA vdbe_trace=on output, show pScopyFrom dependencies on register values. Add the sqlite3VdbeRegisterDump() procedure, callable from a debugger, that shows the values of all registers. Pass the VDBE pointer into test_trace_breakpoint() so that sqlite3VdbeRegisterDump() is callable from the breakpoint. check-in: 9886cb4b user: drh tags: trunk
13:26
Add the test_trace_breakpoint() subroutine that is invoked after each instruction is printed while running PRAGMA vdbe_trace=on. Only works for SQLITE_DEBUG builds. Also add parameters "pc" and "pOp" to test_addop_breakpoint() to make it easier to set conditionals. check-in: 49a6368c user: drh tags: trunk
02:50
Use OP_Copy instead of OP_SCopy to move the results of a scalar subquery. check-in: 435c272d user: drh tags: trunk
00:45
The sqlite3WhereEnd() call now unwinds all Expr modifications made by the sqlite3WhereBegin(). check-in: 7bfd42f1 user: drh tags: trunk
2020-01-01
23:02
Provide the -DSQLITE_ENABLE_INTERNAL_FUNCTIONS=1 compile-time option. Fix the ".testctrl internal_function" command in the CLI so that it does not signal an error on a valid input. check-in: 8ee2ce92 user: drh tags: trunk
21:14
When generating code for a subquery, make a copy of the Select object and generate the code out of the copy, in case the code generator makes modifications to expression and the Select object needs to be reused. check-in: 4edddcc0 user: drh tags: trunk
20:17
Ensure that when code for a scalar SELECT featuring window functions is generated more than once by the planner, separate ephemeral tables are opened for each instance. check-in: ce141732 user: dan tags: trunk
16:43
Fix the sqlite3ExprImpliesNonNullRow() routine so that it correctly handles a numeric comparison of two AND subexpressions. check-in: 07e504d5 user: drh tags: trunk
15:43
New test-only SQL functions: implies_nonnull_row(), expr_compare(), and expr_implies_expr(). The SQLITE_TESTCTRL_INTERNAL_FUNCTIONS test-control is modified to toggle internal function access on and off for a single database connection. check-in: 473892a8 user: drh tags: trunk
13:55
Factor out code generation for in-line SQL functions into a separate routine inside of expr.c. check-in: 586a65a2 user: drh tags: trunk
01:26
Issue OP_ReleaseReg opcodes against the array of registers used to compute index records after the index record has been computed. check-in: e3330861 user: drh tags: trunk
2019-12-31
23:17
Remove an incorrect assert() statement. Ticket [46fcd700b855e6d1] check-in: eca7ec9c user: drh tags: trunk
22:52
Experimental branch with new sqlite3_db_config() options that could possible enhance security for applications reading potentially compromised database files. check-in: 96a2db26 user: drh tags: new-security-options
18:39
Also set the SQLITE_DIRECTONLY flag on the load_extension() function. check-in: 3bd095a5 user: drh tags: trunk
18:12
Set the SQLITE_DIRECTONLY flag on the fts3_tokenizer() function of FTS3, thus preventing that function from being called from within a trigger or view. check-in: f3171dc2 user: drh tags: trunk
15:12
Refactor names. Use "small" instead of "mini" to describe the smaller of the two lookaside memory allocation sizes. check-in: 88d24498 user: drh tags: two-size-lookaside
14:49
Merge recent enhancements from trunk. check-in: 39d55579 user: drh tags: two-size-lookaside
12:18
The OP_ResultRow opcode releases the SCopy dependences on all its registers, as the values in those registers will not be reused. check-in: 1dc83c5d user: drh tags: trunk
2019-12-30
23:50
Back out the NEVER() from check-in [40d10e7aad5b8992] because it is reachable after all. Ticket [892575cdba4e1e36] check-in: f481636f user: drh tags: trunk
23:41
Add an ALWAYS() to a conditional which is apparently always true. check-in: ea44c607 user: drh tags: trunk
20:42
Put a NEVER() on a defensive branch. check-in: 40d10e7a user: drh tags: trunk
20:42
Fix a typo in a comment. No changes to code. check-in: d4813a8d user: drh tags: trunk
14:32
Do not use HIDDEN columns for NATURAL joins. Fix for [7c0e06b16]. check-in: ab09ef42 user: dan tags: trunk
06:55
In ALTER TABLE, rename columns and tables in expressions that are optimized out by the "AND 0" optimization. Doing this also fixes an otherwise harmless assert() failure. check-in: a9e0354c user: dan tags: trunk
2019-12-29
22:08
Do not allow triggers that run as part of REPLACE conflict resolution during an UPDATE to modify the the table being updated. Otherwise, those triggers might delete content out from under the update operation, leading to all kinds of problems. Ticket [314cc133e5ada126] check-in: db4b7e1d user: drh tags: trunk
00:52
Add the OP_FinishSeek opcode which completes an OP_DeferredSeek if the seek has not already completed. Also add the sqlite3WhereUsesDeferredSeek() interface to the query planner. The UPDATE implementation adds an OP_FinishSeek before running the final OP_Insert if one is needed. Ticket [ec8abb025e78f40c] and also an assertion fault reported by Yongheng. check-in: 21ef6e99 user: drh tags: trunk
2019-12-28
18:25
Do not attempt to flatten compound sub-queries in a FROM clause into the parent if any component of the sub-query uses a window function. check-in: eeb76f62 user: dan tags: trunk
18:08
Change an assert() in where.c to a testcase() macro, since the condition may be false. This was a problem with the assert() only, there is no bug in release builds that omit assert(). check-in: 82be135d user: dan tags: trunk
16:20
Disable early coding of transitive constraints at the end of each loop in the WHERE clause processing if the loop being coded is for a LEFT JOIN, even if the loop is part of an OR-clause optimization for virtual tables. Test cases in TH3. check-in: 9421b442 user: drh tags: trunk
15:24
Fix an instance where the planner might choose to use the OR-optimization when it adds no benefit. The same quirk causes an assert() to fail. This is not a bug in released versions - without the assert() the library still gets the right answer, it just does so less efficiently than it should. check-in: f4bed1d7 user: dan tags: trunk
14:33
Further improvements to .wheretrace during loop code generation. check-in: c4d5b75c user: drh tags: trunk
14:07
New enhancements to .wheretrace. The 0x20000 flag shows the WHERE clause before and after coding each loop. The 0x800 flag shows status at the start and at the end of each loop. An extra "C" tag is shown on coded terms. check-in: 59cc46e5 user: drh tags: trunk
13:39
Expose some of the Where data structure debug printing routines to the entire WHERE-clause processing module. check-in: 85e76887 user: drh tags: trunk
13:17
Add the --enable-all option to the main configure script as a short-hand to enable FTS4, FTS5, Geopoly/Rtree, JSON, and Sessions. In the amalgamation-autoconf, the --enable-rtree option (which is enabled by default) also now activates Geopoly. check-in: 52ea0672 user: drh tags: trunk
13:01
Simplifications to the initialization of the sqlite3_index_info structure that is used to communicate with virtual table modules. Avoid adding unused constraints to the sqlite3_index_info structure. Extra constraints are harmless, but might be confusing to people trying to understand the code. check-in: 5e6357fc user: drh tags: trunk
12:33
If the ".wheretrace 0x10000" bit is set, print WhereTerm.prereqAll and .prereqRight fields in the WhereTerm trace output. check-in: a4f330b1 user: drh tags: trunk
11:55
Two new test cases added to test/fuzzdata8.db. check-in: 1be2c18f user: drh tags: trunk
09:08
Second attempt to fix a problem with unwinding the WITH stack of the Parse object following an error. check-in: 315d1f1a user: dan tags: trunk
08:33
Merge latest trunk changes with this branch. Closed-Leaf check-in: d693be37 user: dan tags: better-error-handling-1
08:26
Fix an assert() failure in altertable3-22.4. check-in: c566a91d user: dan tags: better-error-handling-1
03:55
Fix a faulty assert() associated with query search limiting query plans. check-in: 0d743585 user: drh tags: trunk
02:40
Convert an assert() back into a conditional. The conditional was converted into an assert() by check-in [6ae4ad6ebee4db88] (2009-05-28) because we were unable to find a test case for it. Yongheng's fuzzer just now found that test case. check-in: 4d0b9109 user: drh tags: trunk
01:52
When an INSERT is receiving content from a SELECT, run an OP_ReleaseReg opcode at the top of each iteration of the loop in order to prevent spurious OP_SCopy misuse complaints. Ticket [de4b04149b9fdeae] check-in: 6afadd3b user: drh tags: trunk
00:36
Recompute the values for all generated columns after NOT NULL ON CONFLICT REPLACE constraints fire. Tickets [37823501c68a09f9] and [5fbc159eeb092130]. check-in: 4cc12c18 user: drh tags: trunk
2019-12-27
20:54
Do not attempt to unwind the WITH stack in the Parse object following an error. This fixes a separate case to [de6e6d68], but also causes an assertion fault at select.c:4666 for test case altertab3-22.4. check-in: d29edef9 user: dan tags: better-error-handling-1
20:06
Remove a NEVER() that is no longer true. Fix for [36ffedcb9]. check-in: 597896ed user: dan tags: trunk