/ Timeline
Login

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

100 most recent check-ins that include changes to files matching 'src/*'

2019-03-20
16:03
Merge latest trunk changes into this branch. Leaf check-in: 4cd20ca6 user: dan tags: reuse-schema
12:08
Fix harmless compiler warnings from MSVC. Leaf check-in: f0f02d46 user: drh tags: trunk
05:45
Fix various harmless compiler warnings seen with MSVC. Closed-Leaf check-in: 1c0fe5b5 user: mistachkin tags: noWarnings
2019-03-19
20:48
Merge recent enhancements from trunk. Leaf check-in: 000f4398 user: drh tags: apple-osx
20:42
Enhance the VACUUM INTO command so that it works on read-only databases. check-in: 55be6d0a user: drh tags: trunk
19:19
Fix a problem with EXCLUDE clauses on window frames with no ORDER BY. check-in: e0255063 user: dan tags: window-functions
16:49
Add missing VdbeCoverage() macros to new code in window.c. check-in: 4f9b93e6 user: dan tags: window-functions
15:36
When computing the amount of scratch memory needed during a rebalance operation, assume the worst case for the number of cells per page, rather than relying on the BtPage.nCell value, which might be incorrect for a corrupt database. check-in: a420ebd0 user: drh tags: trunk
11:56
Revert the OP_MustBeInt opcode implementation on this branch so that it again matches trunk. The extra functionality is no longer required. check-in: c02f77b1 user: dan tags: window-functions
11:17
Update this branch with latest trunk changes. check-in: 98cc2659 user: dan tags: window-functions
06:40
Ensure that all the new window-function keywords can still be used as SQL identifiers. check-in: a6d61dfd user: dan tags: window-functions
2019-03-18
21:19
Add further tests for new window function functionality. check-in: 1fbddf01 user: dan tags: window-functions
18:55
Always evaluate window functions using the alternative path usually only used by EXCLUDE frames if the SQLITE_QueryFlattener test flag is set. check-in: 2879a691 user: dan tags: window-functions
16:51
Fixes for RANGE windows and NULL values. check-in: 723c84be user: dan tags: window-functions
10:30
Fix a typo in a comment. No changes to code. check-in: c2f50aa4 user: drh tags: trunk
2019-03-16
20:29
Fix problems with RANGE windows and string, blob and NULL values. check-in: cebe09e1 user: dan tags: window-functions
10:15
In order to identify the first row of each partition, check if the rowid in the ephemeral table is 1 instead of using a dedicated flag register. check-in: f2d5f7a2 user: dan tags: window-functions
2019-03-15
20:46
Implement the EXCLUDE clause for window frames. check-in: 9b43c3ee user: dan tags: window-functions
19:08
Back out the change to support Fuchsia, since it turns out fuchsia does not like dot-file locks. check-in: 1d801a3b user: drh tags: trunk
16:17
Ensure that ALTER TABLE commands open statement transactions. Fix for [596d059a]. check-in: 0f2129f5 user: dan tags: trunk
2019-03-14
20:53
Parse EXCLUDE clauses in window frames. They do not yet work. check-in: d03c7533 user: dan tags: window-functions
16:36
Add things to this branch that will be required to support the EXCLUDE clause. check-in: 7d66cd20 user: dan tags: window-functions
00:01
Technical improvements to the documentation for sqlite3_bind_blob() and sqlite3_bind_text(). No changes to code. check-in: fb60150a user: drh tags: trunk
2019-03-13
23:51
Improvements to the sqlite3_db_filename() API documentation. No code changes. check-in: 711f5ec4 user: drh tags: trunk
17:31
Merge latest trunk changes into this branch. check-in: 0b904517 user: dan tags: window-functions
17:20
Avoid allocating excessive registers for the PARTITION BY expressions when processing window functions. check-in: 180be266 user: dan tags: window-functions
15:29
Remove rows from the ephemeral table used by window functions once they are no longer required. check-in: 6ad55319 user: dan tags: window-functions
11:40
When deserializing a database (sqlite3_deserialize()), do not attempt to parse the schema before the data is loaded. check-in: 4e1b005e user: dan tags: trunk
10:29
Detect zero-length free slots on btree pages and report that as corruption. check-in: c4f0568f user: drh tags: trunk
08:28
Minor optimization in sqlite3WindowCodeStep(). check-in: b1322ffb user: dan tags: window-functions
2019-03-12
18:28
Allow real values to be used in PRECEDING and FOLLOWING expressions for RANGE window frames. check-in: 25ff7091 user: dan tags: window-functions
15:21
Expand on header comment for sqlite3WindowCodeStep(). Further simplify the implementation of the same. check-in: 5129bcc9 user: dan tags: window-functions
09:49
Fix a crash that could occur if the RHS of an IN expression is a correlated sub-query that refers to the outer query from within a window frame definition only. check-in: 0524aaaf user: dan tags: trunk
2019-03-11
19:50
Remove "cache mode" from the window frame code generator. Handle the same cases by editing the window frame specification itself. check-in: 08126353 user: dan tags: window-functions
18:17
Simplify the windows frame code some. Add a comment explaining some of the VM code generated by sqlite3WindowCodeStep(). check-in: 6bd1a079 user: dan tags: window-functions
11:12
Fix problems with "RANGE ... ORDER BY <expr> DESC" window frames. check-in: e7bced73 user: dan tags: window-functions
2019-03-09
20:49
Add support for RANGE window frames. Some cases still do not work. check-in: ffc32b24 user: dan tags: window-functions
07:38
Merge latest trunk changes into this branch. check-in: 53ea550c user: dan tags: window-functions
2019-03-08
20:02
Finish consolidation of window frame code. Add untested support for GROUPS frames. check-in: 954bf369 user: dan tags: window-functions
16:06
Merge the latest enhancements and fixes from trunk. Leaf check-in: 543ecb30 user: drh tags: begin-concurrent-pnu-wal2
15:57
Merge the latest enhancements and fixes from trunk. Leaf check-in: bf20d4ff user: drh tags: wal2
15:30
Merge all the latest enhancements from trunk. Leaf check-in: 667cce3d user: drh tags: begin-concurrent-pnu
14:02
Patch makes balance_nonroot() slightly smaller and faster and more robust against corrupt databases. check-in: 174da3c3 user: drh tags: trunk
01:52
Detect an attempt to drop a btree that is not within the bounds of the database file and abort early with an SQLITE_CORRUPT error, to avoid problems later on in the process. check-in: 235a9698 user: drh tags: trunk
2019-03-07
20:47
Fix other "ROWS BETWEEN" cases on this branch. check-in: a5f68f66 user: dan tags: window-functions
19:26
Modify new window functions function so that cursors are stepped immediately after each operation, instead of immediately before. check-in: 093d2b25 user: dan tags: window-functions
2019-03-06
21:04
Simplify the window function code generator some more. check-in: 45cbd3b4 user: dan tags: window-functions
17:12
Improvements to the way built-in window functions are handled. check-in: e8eee566 user: dan tags: window-functions
14:53
Add the sqlite3_stmt_isexplain() interface. check-in: ee642d3e user: drh tags: trunk
14:08
Add an "|| CORRUPT_DB" term to an assert() that might be false if the database is corrupt. Also add a branch to have sqlite3PagerMovepage() return SQLITE_CORRUPT in that case. check-in: b0d5cf40 user: drh tags: trunk
2019-03-05
19:29
Extend windowCodeStep() to handle any ROWS PRECEDING/FOLLOWING frame specification. check-in: af0ea136 user: dan tags: window-functions
14:39
If the initial byte of a record is a large value, then always used the generalized record comparison routine sqlite3VdbeRecordCompare() rather than one of the specialized versions that are optimized for shorter records. check-in: c1ac0070 user: drh tags: trunk
2019-03-04
21:08
Merge trunk changes into this branch. check-in: 9b4d561f user: dan tags: window-functions
21:07
Support some "ROWS BETWEEN N PRECEDING AND M FOLLOWING" window functions without caching entire partitions. check-in: e7a91f12 user: dan tags: window-functions
07:25
Merge latest trunk changes into this branch. check-in: 97a9604d user: dan tags: reuse-schema
07:15
Fix a problem preventing compilation with SQLITE_OMIT_UTF16. check-in: 906d1fd8 user: dan tags: trunk
2019-03-02
15:25
Fix the SQLITE_DIRECT_OVERFLOW_READ compile-time option so that it works with SQLITE_HAS_CODEC. check-in: fd085e92 user: drh tags: trunk
2019-03-01
21:37
Merge recent changes from trunk. check-in: f270245a user: drh tags: apple-osx
21:33
The fts3_tokenizer() function returns NULL if the SQLITE_DBCONFIG_ENABLE_FTS_TOKENIZER setting is disabled, which is is by default. check-in: f5732f4c user: drh tags: trunk
21:12
Fix a minor comment typo. No code changes. check-in: 9a0a93c8 user: drh tags: trunk
18:27
Merge the latest enhancements from trunk. check-in: e64ded7b user: drh tags: apple-osx
18:07
In a query that uses a partial index, the expression that is the WHERE clause of the partial index must always be true. Use this fact to avoid evaluating identical terms in the WHERE clause of the query. check-in: 9b287962 user: drh tags: trunk
2019-02-28
20:10
Add the ".parameter" command to the CLI. check-in: 1f9fa585 user: drh tags: trunk
17:29
Add the new "bind_fallback" method to the "sqlite3" object in the TCL interface. check-in: c7f70b6d user: drh tags: trunk
13:21
Add an "|| CORRUPT_DB" term to an assert() statement in the btree defragmenter. check-in: 6bfd8655 user: drh tags: trunk
2019-02-27
23:05
Enable the LIKE optimization when the ESCAPE keyword is present and the PRAGMA case_sensitive_like pragma is ON. check-in: 6ae4b8c5 user: drh tags: trunk
16:38
Add the "-returntype" option to the "db function" Tcl method. check-in: 789a492b user: dan tags: trunk
2019-02-26
17:49
Allocate a few extra bytes for the pager temp page as an overrun buffer while processing corrupt database files. check-in: e7aca071 user: drh tags: trunk
16:17
Use unsigned integers to count the number of pages in a freelist during an integrity_check, to avoid any possibility of a signed integer overflow. check-in: 05b87e07 user: drh tags: trunk
16:11
Fix a harmless compiler warning that only comes up during debug builds. check-in: 848869ce user: drh tags: trunk
15:43
Add the ".shared-schema check|fix DB1 DB2..." command to the shell tool. For checking if a database is eligible to share an in-memory with the main database, and for fixing small problems that prevent it from being so. check-in: 7d8e8a95 user: dan tags: reuse-schema
2019-02-25
19:23
Fix a comment in build.c. check-in: d6a9bff6 user: dan tags: reuse-schema
18:43
Enhance the command-line shell to accept bound parameters, using the TEMP table named "$Parameters" to look up the values for bound parameters. check-in: 7c941ce5 user: drh tags: trunk
18:07
Merge latest trunk changes into this branch. check-in: 5c1cf308 user: dan tags: reuse-schema
17:54
Where possible, avoid loading all schemas into memory for PRAGMA statements. check-in: 64f97530 user: dan tags: reuse-schema
15:55
Internally, remove all references to a Window object that belongs to an expression in an ORDER BY clause if that expression is converted to an alias of a result-set expression. check-in: a21ffcd8 user: drh tags: branch-3.27
14:25
Fix a typo in the documentation for sqlite3_total_changes(). check-in: 4febdfb3 user: drh tags: branch-3.27
14:16
Fix a typo in the documentation for sqlite3_total_changes(). check-in: 8474c156 user: drh tags: trunk
2019-02-23
00:56
Import from trunk the new fix to ticket [df46dfb631f75694] in which all ephemeral tables used as the RHS of an IN operator be index btrees and never table btrees so that they can always be reused. check-in: 0e64ac12 user: drh tags: branch-3.27
00:21
Check-in [fa792714ae62fa98] is incorrect. Add a test case to refute it and also a fix to make it right. Then add an alternative fix to ticket [df46dfb631f75694] in which all ephemeral tables used as the RHS of an IN operator be index btrees and never table btrees so that they can always be reused. check-in: d3915230 user: drh tags: trunk
00:08
Remove a testcase() macro which is now unreachable due to the contraction of the use of IN_INDEX_ROWID. Closed-Leaf check-in: 90c5a17c user: drh tags: tkt-df46dfb631
2019-02-22
23:29
Make all ephemeral tables built to hold the RHS of an IN operator be index-btrees, never table-btrees, regardless of whether or not they are used as IN_INDEX_LOOP or IN_INDEX_MEMBERSHIP. That way, the same ephmerial table can be reused for both cases. check-in: c2d50df8 user: drh tags: tkt-df46dfb631
21:33
Check-in [fa792714ae62fa980] is not a valid fix for ticket [df46dfb631f75694], as the new test case in this check-in demonstrates. The fix here causes test cases for the [df46dfb631f75694] bug to fail again, so this check-in is on a branch. A new fix is needed for [df46dfb631f75694]. check-in: 0d456456 user: drh tags: tkt-df46dfb631
19:24
Internally, remove all references to a Window object that belongs to an expression in an ORDER BY clause if that expression is converted to an alias of a result-set expression. Fix for [4feb3159c6]. check-in: 579b66ea user: dan tags: trunk
17:44
Merge latest trunk changes into this branch. check-in: 001771af user: dan tags: reuse-schema
16:18
In sqlite3NestedParse() be sure to detect all SQLITE_NOMEM and SQLITE_TOOBIG errors and to distinguish between them. check-in: 73056b31 user: drh tags: trunk
15:42
Modify sqlite3_str_finish() and sqlite3VMPrintf() so that they always return NULL on any OOM or SQLITE_LIMIT_LENGTH error. check-in: e7144ffd user: drh tags: trunk
2019-02-21
18:11
Fix OOM handling in sqlite3NestedParse(). Leaf check-in: e6e9dd5c user: dan tags: nested-parse-oom
16:41
Detect oversized strings in the OP_String opcode even if the P4 argument is originally UTF8 and has to be converted to UTF16 to match the database file and that conversion causes the string to become shorter and cross below SQLITE_LIMIT_LENGTH threshold. This might fix an OSSFuzz problem that we have been so far unable to reproduce. check-in: c13d5639 user: drh tags: trunk
2019-02-20
19:20
Changes to the unix VFS that allegedly enable it to build of Fuchsia. We have no way of testing this. check-in: be21a641 user: drh tags: trunk
18:44
Further test cases and fixes for SQLITE_OPEN_SHARED_SCHEMA. check-in: ba0ab042 user: dan tags: reuse-schema
18:13
Avoid the use of function pointers in columnName(), as function pointers appear to be a source of consternation to LLVM. check-in: c48f6f39 user: drh tags: trunk
17:36
Add test and fixes for SQLITE_OPEN_SHARED_SCHEMA mode. check-in: 9a78d89c user: dan tags: reuse-schema
13:55
Progress handler improvements: (1) Invoke the callback after OP_Program opcodes (2) Invoke the callback multiple times in a row to catch up after a long run of no progress checks. check-in: 0c5db18d user: drh tags: trunk
13:23
Merge the latest performance enhancements and fixes from trunk. check-in: be71d1e2 user: drh tags: apple-osx
13:12
When an IN operator drives a query loop, mark it as "CODED" so that it will not be used afterwards for a (pointless) membership test. check-in: 55e38d53 user: drh tags: branch-3.27
12:52
When an IN operator drives a query loop, mark it as "CODED" so that it will not be used afterwards for a (pointless) membership test. This is a better fix for ticket [df46dfb631f75694] than the previous fix that is now on a branch as it preserves the full optimization of check-in [e130319317e76119]. check-in: fa792714 user: drh tags: trunk
03:38
Back off the optimization of check-in [e130319317e76119] slightly so that it only applies to IN operators that are used for membership tests. Proposed fix for ticket [df46dfb631f75694]. Closed-Leaf check-in: b5f90bfe user: drh tags: tkt-df46dfb631
2019-02-19
18:00
Improve error messages caused by corrupt database schemas in OPEN_SHARED_SCHEMA mode. check-in: 8ac75b8a user: dan tags: reuse-schema
16:42
Fix an assert() that might not be true if the database file is corrupt. check-in: f2d400db user: drh tags: trunk