Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
100 descendants and 100 ancestors of 19c2e4b2f164521e
2018-07-07
| ||
20:23 | Fix the JSON extension so that it can be compiled separately from the amalgamation. (check-in: 4b8cfe7bfe user: drh tags: trunk) | |
20:13 | Fix an LSM problem caused by using the same cursor for equality and range scans. (check-in: f05bead371 user: dan tags: trunk) | |
19:47 | Add ALWAYS() macros on results of sqlite3_aggregate_context() calls in xInverse() implements, since they can never fail. (check-in: fdef2a921d user: drh tags: trunk) | |
19:36 | Add an assert() to help verify that OP_AggInverse is never called on an accumulator that has not previously been processed by OP_AggStep. (check-in: 4213889103 user: drh tags: trunk) | |
17:38 | Add missing VdbeCoverage() macro to window.c. (check-in: 63f4d306ba user: dan tags: trunk) | |
17:30 | Fix a problem with the handling of NULL values in the min() window function. (check-in: b76f35b092 user: dan tags: trunk) | |
2018-07-06
| ||
17:19 | Try to improve the error messages for misformed frame specifications in window definitions. (check-in: 927b95a081 user: drh tags: trunk) | |
14:31 | Also disallow non-constant expressions in "<expr> PRECEDING" or "<expr> FOLLOWING" clauses. (check-in: a6dffecc6b user: dan tags: trunk) | |
14:15 | Ensure an error is returned if the user specifies an unsupported frame type. (check-in: 0f3f8fcde1 user: dan tags: trunk) | |
13:48 | Prevent "UNBOUNDED FOLLOWING" from being used as the starting boundary of a window-frame. And "UNBOUNDED PRECEDING" from being used as the ending boundary. (check-in: e51fdf66a2 user: dan tags: trunk) | |
13:25 | Remove some bad assert() statements from the implementations of window functions percent_rank() and cume_dist(). (check-in: 443f0c286f user: dan tags: trunk) | |
07:42 | Return an error if DISTINCT is used with a window-function (e.g. "count(DISTINCT <expr>) OVER (...)"). (check-in: d59bcc8eea user: dan tags: trunk) | |
2018-07-05
| ||
21:22 | Use separate opcodes, OP_AggValue and OP_AggInverse, for the new callbacks associated with Window Functions, for improved readability of EXPLAIN output. (check-in: fa65380509 user: drh tags: trunk) | |
20:33 | Update the recipe for resetting a database using SQLITE_DBCONFIG_RESET_DATABASE. (check-in: c43dd23fb0 user: dan tags: trunk) | |
20:05 | Get the json_group_array() and json_group_object() SQL functions working as window functions. (check-in: 916cdc83f5 user: drh tags: trunk) | |
18:34 | Return an error if a "RANGE" window-frame uses "<expr> PRECEDING" or "<expr> FOLLOWING". (check-in: 786c87ba41 user: dan tags: trunk) | |
18:19 | Fix a problem in the xInverse method of window-function group_concat(1). (check-in: 7339128310 user: dan tags: trunk) | |
17:35 | Fix the .dump command in the command-line shell so that it does not show extraneous SELECT statements when ".echo on" is enabled. (check-in: 11763cac33 user: drh tags: trunk) | |
17:16 | In wal mode, if a "BEGIN EXCLUSIVE" command (or any other command that upgrades from no transaction directly to a write transaction) hits an SQLITE_BUSY_SNAPSHOT error, change the error code to SQLITE_BUSY to indicate to the caller that the condition may be transient. (check-in: e6108047cb user: dan tags: trunk) | |
17:03 | Fix a typo inside an assert() statement introduced by the previous commit. (Closed-Leaf check-in: e335772847 user: dan tags: exp-busy-snapshot-fix) | |
15:46 | In wal mode, if a "BEGIN EXCLUSIVE" command (or any other command that upgrades from no transaction directly to a write transaction) hits an SQLITE_BUSY_SNAPSHOT error, change the error code to SQLITE_BUSY to indicate to the caller that the condition may be transient. (check-in: 221ff63e79 user: dan tags: exp-busy-snapshot-fix) | |
2018-07-04
| ||
14:28 | Experimental planner change to avoid a skip-scan if a regular index scan on the same index columns can be done instead. (Leaf check-in: 32924446db user: dan tags: exp-avoid-expensive-skipscan) | |
2018-07-03
| ||
20:17 | Test that a race condition can cause a "BEGIN EXCLUSIVE" to return SQLITE_BUSY_SNAPSHOT in wal mode. (check-in: 5a12db75d1 user: dan tags: trunk) | |
2018-07-02
| ||
17:45 | Fix a problem in the xInverse callback for the built-in sum() window function. (check-in: b656364738 user: dan tags: trunk) | |
17:14 | Fix a segfault caused by having identical window functions in the select-list and ORDER BY clause of a SELECT statement. (check-in: 693b4350d7 user: dan tags: trunk) | |
15:03 | Fix a crash caused by a LIKE pattern that consists of a single escape character. Problem found by OSSFuzz. (check-in: bb9bfc3a12 user: dan tags: trunk) | |
12:07 | Fix a segfault caused by invoking a regular aggregate as a window-function. And some problems with count(*) when used as a window-function. (check-in: 4f3c8a82fd user: dan tags: trunk) | |
2018-07-01
| ||
16:05 | Quick patch to the Lemon parser template to avoid an array overread reported by OSSFuzz. A proper fix involves enhancements to the table generators in Lemon to make the overread impossible. That fix will take longer to implement. The current check-in is a stop-gap. (check-in: 3f6730be4c user: drh tags: trunk) | |
2018-06-30
| ||
20:26 | Avoid a warning in fts5.c due to not using generated routine sqlite3Fts5ParserFallback(). (check-in: 65ff5144a5 user: dan tags: trunk) | |
20:15 | Merge implementation of SQL window functions from the exp-window-functions into trunk. (check-in: 17198a1206 user: dan tags: trunk) | |
20:00 | Fix a minor problem in the code for determining whether or not an SQL statement is SQLITE_TOOBIG. (Closed-Leaf check-in: 763e6c9e2b user: dan tags: exp-window-functions) | |
19:12 | Merge all changes from the weak-fallback branch except those related to the weak-fallback feature itself. (check-in: aad718fb1a user: dan tags: exp-window-functions) | |
18:54 | Have the tokenizer handle fallback for tokens "OVER" and "FILTER" in the same way as it does for "WINDOW". (Leaf check-in: 12d819e1c1 user: dan tags: weak-fallback) | |
2018-06-29
| ||
20:43 | Further performance related tweaks for sqlite3RunParser(). (check-in: 5eb4776598 user: dan tags: weak-fallback) | |
20:21 | Further tweaks to sqlite3RunParser(). (check-in: eef61ffab7 user: dan tags: weak-fallback) | |
19:54 | Improve on the previous checkin. Still a bit slow. (check-in: c1fb41aa7b user: dan tags: weak-fallback) | |
17:44 | Instead of using a lemon %fallback directive, have the tokenizer try to figure out whether an instance of "WINDOW" should be TK_WINDOW or TK_ID. (check-in: 022079cb0d user: dan tags: weak-fallback) | |
2018-06-28
| ||
20:05 | Modifications to parse.y to better support backwards compatibility for the "window" keyword. (check-in: 7c4b879bdb user: dan tags: weak-fallback) | |
03:38 | Introduce the concept of "weak fallback" in the parser. A weak fallback only occurs if a syntax error would result otherwise. (check-in: c41d7079fb user: drh tags: weak-fallback) | |
2018-06-27
| ||
20:24 | Add missing VdbeCoverage() and VdbeCoverageNeverTaken() macros to window.c. (check-in: 4383cb68a1 user: dan tags: exp-window-functions) | |
19:48 | Avoid redundant ORDER BY operations when rewriting SELECT statements that contain window functions. (check-in: 336de43a47 user: dan tags: exp-window-functions) | |
2018-06-26
| ||
20:19 | Merge latest trunk changes. (check-in: d9f814b443 user: dan tags: exp-window-functions) | |
2018-06-25
| ||
20:34 | Add documentation comment for sqlite3_create_window_function(). And further tests. (check-in: 3f2705b933 user: dan tags: exp-window-functions) | |
11:42 | Fix another problem that could cause a crash when a window function was used in a view. (check-in: e954145a3a user: dan tags: exp-window-functions) | |
2018-06-23
| ||
19:29 | Fix problems with using window-functions in correlated sub-queries. (check-in: 3e23cfc813 user: dan tags: exp-window-functions) | |
16:26 | Fix a problem with using LIMIT in window-function queries. (check-in: c1abd2dda4 user: dan tags: exp-window-functions) | |
07:59 | Fix a problem with using a window-function SELECT as a FROM clause sub-query in some circumstances. (check-in: 11d733396f user: dan tags: exp-window-functions) | |
2018-06-22
| ||
20:51 | Omit all window-function related code when building with SQLITE_OMIT_WINDOWFUNC. (check-in: 5f04b01646 user: dan tags: exp-window-functions) | |
17:57 | Merge latest trunk changes. (check-in: ebe65b2386 user: dan tags: exp-window-functions) | |
2018-06-21
| ||
19:20 | Fix a problem with handling single row partitions in the percent_rank() window function. (check-in: b84fbf16ea user: dan tags: exp-window-functions) | |
2018-06-20
| ||
09:23 | Add tests to improve coverage of code in window.c. Fix a problem with "SELECT row_number() OVER ()". (check-in: f41b6b7317 user: dan tags: exp-window-functions) | |
2018-06-19
| ||
19:15 | Merge latest trunk changes with this branch. (check-in: 6ad0e64b46 user: dan tags: exp-window-functions) | |
18:11 | Fix a problem caused by a sub-query containing a window function in the FROM clause of a query that itself uses a window function. (check-in: f4b1b6f85b user: dan tags: exp-window-functions) | |
17:13 | Fix a problem with using min() or max() as a window function. (check-in: 801074ce63 user: dan tags: exp-window-functions) | |
2018-06-18
| ||
20:34 | Fix problems with using window functions in CREATE VIEW statements. (check-in: 943bccd2a6 user: dan tags: exp-window-functions) | |
17:36 | Ensure that all four callbacks are provided when registering a window function (otherwise SQLITE_MISUSE is returned). (check-in: 5720dcd8b1 user: dan tags: exp-window-functions) | |
16:55 | Add new API function sqlite3_create_window_function(), for creating new aggregate window functions. (check-in: da03fb4318 user: dan tags: exp-window-functions) | |
2018-06-15
| ||
20:46 | Add extra OOM test. (check-in: ac251f7260 user: dan tags: exp-window-functions) | |
19:01 | Fix another problem in lead()/lag(). And some errors that could occur following OOM faults. (check-in: fadd4dc119 user: dan tags: exp-window-functions) | |
16:10 | Fix a bug in the lead() and lag() window functions causing them to fail when used in queries featuring multiple window functions. (check-in: 3839fb18f9 user: dan tags: exp-window-functions) | |
2018-06-14
| ||
20:52 | Fix a problem with handling of statements containing two or more different windows. (check-in: 567e09ef2a user: dan tags: exp-window-functions) | |
19:06 | Fix problem with window functions min() and max() when used with a PARTITION clause and a frame starting point other than "UNBOUNDED PRECEDING". (check-in: 43eb1e75a4 user: dan tags: exp-window-functions) | |
14:30 | Merge latest trunk changes into this branch. (check-in: 5cf5f1808a user: dan tags: exp-window-functions) | |
14:27 | Improve comments and code legibility in new file window.c. (check-in: bb915854d4 user: dan tags: exp-window-functions) | |
2018-06-13
| ||
20:29 | Fix problems with "RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING" window frames. (check-in: c34f31dbd7 user: dan tags: exp-window-functions) | |
2018-06-12
| ||
20:53 | Fix another issue to do with window-functions in aggregate queries. (check-in: 6413e38a17 user: dan tags: exp-window-functions) | |
18:40 | Fix some problems with using window-functions in aggregate queries. (check-in: fe7081e095 user: dan tags: exp-window-functions) | |
2018-06-11
| ||
20:50 | Clarify the relationship between a Window object and its associated Expr. (check-in: 0cd55e98a4 user: dan tags: exp-window-functions) | |
18:16 | Fix handling of window frames containing negative number of rows. e.g. "ROWS x PRECEDING AND y PRECEDING" where (x<y). (check-in: b6d9c7eda8 user: dan tags: exp-window-functions) | |
11:19 | Fix a typon in main.mk. (check-in: e74f86f271 user: dan tags: exp-window-functions) | |
2018-06-10
| ||
07:42 | Update Makefile.msc to include window.c in the build. (check-in: 16db73842a user: dan tags: exp-window-functions) | |
2018-06-09
| ||
18:09 | Merge recent trunk changes with this branch. (check-in: c71f23590c user: dan tags: exp-window-functions) | |
17:58 | Update the amalgamation build script to include window.c. (check-in: 21d2f4a62e user: dan tags: exp-window-functions) | |
17:43 | Add support for FILTER clause on aggregate window functions. (check-in: ceaf798ea0 user: dan tags: exp-window-functions) | |
2018-06-08
| ||
20:58 | Add support for the WINDOW clause. (check-in: 19c983b511 user: dan tags: exp-window-functions) | |
16:11 | Do not flatten sub-queries that contain window functions. (check-in: 236cb75bd1 user: dan tags: exp-window-functions) | |
11:45 | Fixes to allow group_concat() to be used as a window function. (check-in: 89bbc9ba8f user: dan tags: exp-window-functions) | |
2018-06-07
| ||
20:35 | Merge latest trunk changes with this branch. (check-in: 2510220342 user: dan tags: exp-window-functions) | |
20:08 | Add window functions lag() and lead(). (check-in: ef34207073 user: dan tags: exp-window-functions) | |
17:45 | Add support for window function first_value(). (check-in: 060b264028 user: dan tags: exp-window-functions) | |
15:54 | Fix problems with the nth_value() function. (check-in: 63002b9a09 user: dan tags: exp-window-functions) | |
2018-06-06
| ||
20:51 | Add implementation of nth_value() window function. (check-in: eb1fb420ac user: dan tags: exp-window-functions) | |
2018-06-05
| ||
16:16 | Add implementation of last_value() window function. (check-in: 2493ce1a40 user: dan tags: exp-window-functions) | |
2018-06-04
| ||
18:55 | Add implementation of window function ntile(). (check-in: 3f093f608c user: dan tags: exp-window-functions) | |
08:28 | Merge latest trunk changes into this branch. (check-in: 83d6416a86 user: dan tags: exp-window-functions) | |
08:22 | Add support for window function cume_dist(). Improve tests for percent_rank(). (check-in: 76543f7dd3 user: dan tags: exp-window-functions) | |
2018-06-02
| ||
21:04 | Add support for window functions row_number(), rank(), dense_rank() and percent_rank(). (check-in: 91c1cb7a21 user: dan tags: exp-window-functions) | |
2018-06-01
| ||
21:00 | Allow an entire partition to be cached in a temp table for all types of window frames. This is required by nth_value() and others. (check-in: b5b18f6613 user: dan tags: exp-window-functions) | |
2018-05-30
| ||
20:44 | Allow min() and max() to be used as window functions. (check-in: c16125a884 user: dan tags: exp-window-functions) | |
2018-05-28
| ||
18:30 | Further window frame tests and fixes. (check-in: e74c6e9185 user: dan tags: exp-window-functions) | |
2018-05-26
| ||
21:17 | More fixes for different window frame types. (check-in: 2c85668a0f user: dan tags: exp-window-functions) | |
2018-05-25
| ||
20:30 | Fix "RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING" window frame processing. (check-in: b4e9c68669 user: dan tags: exp-window-functions) | |
09:36 | Merge latest trunk changes into this branch. (check-in: 6232519899 user: dan tags: exp-window-functions) | |
09:29 | Fixes for "ROWS BETWEEN <expr> FOLLOWING AND <expr> FOLLOWING" and "ROWS BETWEEN <expr> FOLLOWING AND UNBOUNDED FOLLOWING" (check-in: 5ac44872fd user: dan tags: exp-window-functions) | |
2018-05-24
| ||
21:10 | Allow "<expr> PRECEDING" to be used to specify the end of a window frame. (check-in: 7b709a989c user: dan tags: exp-window-functions) | |
17:49 | Support other frame types that use "<expr> PRECEDING" or "<expr> FOLLOWING" as start or end conditions. (check-in: ec7b648c7f user: dan tags: exp-window-functions) | |
2018-05-23
| ||
20:55 | Add support for "ROWS BETWEEN <expr> PRECEDING AND <expr> FOLLOWING" window frames. (check-in: 3a203660f1 user: dan tags: exp-window-functions) | |
2018-05-22
| ||
20:36 | Merge latest trunk changes into this branch. (check-in: cdb68d2c64 user: dan tags: exp-window-functions) | |
20:35 | Add comments to window.c describing how other window frames will be implemented. (check-in: 16168146b2 user: dan tags: exp-window-functions) | |
2018-05-21
| ||
19:45 | Begin adding support for more esoteric window frames. (check-in: bc4b81d60d user: dan tags: exp-window-functions) | |
2018-05-19
| ||
14:15 | Fix minor problems on this branch. (check-in: 19c2e4b2f1 user: dan tags: exp-window-functions) | |
2018-05-17
| ||
19:24 | Evaluate multiple window functions in a single pass if they use the same window definition. Add xValue callbacks for other built-in aggregate functions. (check-in: c9f0f14094 user: dan tags: exp-window-functions) | |
14:26 | Handle multiple window-functions in a single query. (check-in: 35af0b750e user: dan tags: exp-window-functions) | |
2018-05-16
| ||
20:58 | Start of experimental implementation of SQL window functions. Does not yet work. (check-in: 3781e52085 user: dan tags: exp-window-functions) | |
15:35 | Enhance the sqlite3_str_new() interface so that it always returns a valid and non-NULL pointer even in an OOM condition. (check-in: ed5b09680f user: drh tags: trunk) | |
12:19 | Correct output for the fullkey column of json_each() when the total JSON input is a simple value, not an array or object. (check-in: b45b18850c user: drh tags: trunk) | |
2018-05-15
| ||
09:09 | Fix a test case problem in wherelimit.test. (check-in: 3012df8b2c user: dan tags: trunk) | |
2018-05-14
| ||
22:46 | Make more aggressive use of automatic indexes when processing materalized views and subqueries. (check-in: 172f5bd27e user: drh tags: trunk) | |
15:26 | Convert the schema creation logic in the rtree extension to use the new sqlite3_str interface. (check-in: fd8b8c4196 user: drh tags: trunk) | |
12:23 | Fix typo in the shell.c source file. (check-in: 389dc0a901 user: mistachkin tags: trunk) | |
00:41 | Export the deduceDatabaseType() function the shell.c source file. (check-in: d0f35739af user: drh tags: trunk) | |
00:23 | Add the --append option to the ".backup" command in the CLI. (check-in: 0dfdbdee52 user: drh tags: trunk) | |
2018-05-12
| ||
23:56 | In the CLI, allow comment lines that begin with '#', but only in a context where a dot-command is allowed. In other words, '#' at the beginning of a line in the middle of an SQL statement is just part of the SQL. (check-in: 4ee136d6d2 user: drh tags: trunk) | |
2018-05-11
| ||
19:11 | In the CLI, return non-zero if there are errors on the command-line. (check-in: 13e7300a37 user: drh tags: trunk) | |
15:10 | Fix a typo in the help message from the ".sha3sum" command in the CLI. (check-in: dba87a2018 user: drh tags: trunk) | |
15:10 | Make sure the open_db() routine in the CLI does not invoke access() with a NULL filename. (check-in: 20a8c61122 user: drh tags: trunk) | |
14:02 | Fix a typo in the help message from the ".sha3sum" command in the CLI. (check-in: e76f676c12 user: drh tags: geojson) | |
14:00 | Make sure the open_db() routine in the CLI does not invoke access() with a NULL filename. (check-in: 2b8fd3b497 user: drh tags: geojson) | |
2018-05-09
| ||
16:32 | Add a test case to check that the fts5 unicode64 tokenizer is dealing with codepoints greater than 65535 correctly. (check-in: 9f7a6ae878 user: dan tags: trunk) | |
15:17 | Add 14 new interfaces to the loadable extension mechanism. (check-in: 0e809cdcbd user: drh tags: trunk) | |
14:29 | Fix minor problems with the sqlite3_str interface. (check-in: 43ea8a6836 user: drh tags: trunk) | |
13:46 | Make the internal dynamic string interface available to extensions using the new sqlite3_str object and its associated methods. This is mostly just a renaming of internal objects and methods to use external names, through there are a few small wrapper functions. (check-in: 87f261f0cb user: drh tags: trunk) | |
10:11 | Fix a typo in a comment used for documentation. No code changes. (check-in: b866693e6a user: drh tags: trunk) | |
2018-05-08
| ||
23:17 | Correctly format the STAT1 and STAT4 content in the output from the ".fullschema" command in the CLI. Fix for ticket [e63a34a0045832dc850367552]. (check-in: 0c3f128fd7 user: drh tags: trunk) | |
13:03 | Fix a harmless compiler warning in fuzzcheck. Add new OSSFuzz test cases to the test case library. (check-in: d2619746cb user: drh tags: trunk) | |
12:49 | Fuzz test cases for UPSERT. (check-in: fd11fbd218 user: drh tags: trunk) | |
2018-05-07
| ||
18:41 | Activate the cell-overwrite optimization for index b-trees. (check-in: a68697d10e user: drh tags: trunk) | |
17:27 | Improved comments on the cell-overwrite optimization code. (check-in: a4fe966da2 user: drh tags: trunk) | |
11:48 | On an UPDATE, try to overwrite an existing btree cell with the modified content, if the old and new cell are the same size. Use memcmp() first to avoid dirtying pages that are unchanged. (check-in: 5887d8beb5 user: drh tags: trunk) | |
11:37 | Fix harmless compiler warnings associated with the new EXPLAIN QUERY PLAN logic. (check-in: 374d8e2644 user: drh tags: trunk) | |
11:29 | Fix harmless compiler warnings in the cell-overwrite logic. (Closed-Leaf check-in: 3e11dc3183 user: drh tags: cell-overwrite-prototype) | |
02:50 | Backout change [05fee1a21ea398f1e4d6f1cf3] because it does not take into account the LD_LIBRARY_PATH environment variable used by dl_open(). (check-in: b348d1193a user: drh tags: trunk) | |
2018-05-05
| ||
16:50 | In an ORDER BY LIMIT, make sure the ORDER BY expression evaluator does not try to reuse values from the result set if the result set has not yet be computed. This fixes a bug in the recent deferred-row loading optimization, check-in [c381f0ea57002a264fd958b28e]. OSSFuzz discovered the problem. (check-in: 5d61e75f32 user: drh tags: trunk) | |
01:23 | Fix a slightly incorrect corruption detection branch in the btree logic. (check-in: 9191ff670c user: drh tags: trunk) | |
2018-05-04
| ||
19:18 | Merge enhancements from trunk. (check-in: 9650f71b82 user: drh tags: cell-overwrite-prototype) | |
18:32 | Fix requirements marks. No code changes. (check-in: 7fdad122a2 user: drh tags: trunk) | |
04:49 | For the amalgamation-tarball, enable FTS5 and JSON1 by default and provide a new --enable-debug option that actives debugging facilities. (check-in: 03edecaf9d user: drh tags: trunk) | |
00:39 | Make a separate limb in the EXPLAIN QUERY PLAN output for the various lines associated with the OR-optimization. (check-in: 75ac7b4e4f user: drh tags: trunk) | |
2018-05-03
| ||
23:20 | In ORDER BY LIMIT queries, try to evaluate the ORDER BY terms first, and it it becomes clear that the row will not come in under the LIMIT, then skip evaluation of the other columns. (check-in: c381f0ea57 user: drh tags: trunk) | |
22:52 | Fix a branch that has become unreachable due to recent enhancements. (check-in: 81ab5e0d10 user: drh tags: trunk) | |
21:51 | Improved security for VACUUM. This check-in combines the fixes of [ab0d99d0b5ede] and [27754b74ddf646] in a way that is less likely to to be broken by future changes. (check-in: 260fc69653 user: drh tags: trunk) | |
19:56 | Overhaul of EXPLAIN QUERY PLAN. The output is now in the form of a tree. More details of the query plan are shown, and what is shown is truer to what actually happens. (check-in: ff01bbdabc user: drh tags: trunk) | |
19:47 | Optimizations to the new EQP framework. (Closed-Leaf check-in: 956fef361a user: drh tags: rework-EQP) | |
16:56 | Fix various error handling conditions on the cell overwrite optimization. Fix a test case so that it works with the new optimization. (check-in: f89b54f414 user: drh tags: cell-overwrite-prototype) | |
14:07 | The BtCursor.info fields are only valid if info.nSize!=0. (check-in: 54c537eead user: drh tags: cell-overwrite-prototype) | |
13:56 | Add more corruption checking to the cell overwrite logic. (check-in: 58d14afe1e user: drh tags: cell-overwrite-prototype) | |
12:57 | Bug fixes in the overwrite optimization. (check-in: 0cb6cd2a6a user: drh tags: cell-overwrite-prototype) | |
03:59 | The sqlite3BtreeInsert() routine tries to overwrite an existing cell with modified content if the new content is the same size. Pages are only dirtied if they change. This prototype works some, but still has issues. (check-in: 489451b378 user: drh tags: cell-overwrite-prototype) | |
01:37 | Enhance EXPLAIN QUERY PLAN to report the generation of constant rows using VALUES or just a SELECT without FROM. (check-in: c75eee69fa user: drh tags: rework-EQP) | |
2018-05-02
| ||
19:42 | More test case updates. Tests are all running now. (check-in: dab5e52948 user: drh tags: rework-EQP) | |
18:00 | Fix test cases so that they work with the new EXPLAIN QUERY PLAN output format. Only some of the cases have been fixed. This is an incremental check-in. (check-in: 5f0e803e33 user: drh tags: rework-EQP) | |
16:13 | Improved EQP output for recursive CTEs and multi-value VALUES clauses. (check-in: f2f525548c user: drh tags: rework-EQP) | |
15:00 | Prevent VACUUM from running any commands in sqlite_master.sql other than CREATE statements. That is all that should be there anyhow. This fixes a problem discovered by OSSFuzz. Test cases in TH3. (check-in: ab0d99d0b5 user: drh tags: trunk) | |
14:24 | Fix a dangling-else problem that was causing recursive CTEs to malfunction. Begin fixing test cases to work with the new EQP output. (check-in: 82ca44b82f user: drh tags: rework-EQP) | |
08:12 | Fix a problem in the xBestIndex method of the closure extension causing it to allocate non-contiguous argvIndex values in some cases (an "xBestIndex malfunction" error). (check-in: 0c67150749 user: dan tags: trunk) | |
03:01 | Add sqlite3_win32_set_directory8() and sqlite3_win32_set_directory16() functions. (check-in: 22089ea2bb user: mistachkin tags: trunk) | |
02:22 | Improvements to the EQP display for compound select statements. (check-in: 699a77e479 user: drh tags: rework-EQP) | |
00:33 | Begin reengineering the EXPLAIN QUERY PLAN function to provide more intuitive output. (check-in: 70b48a7972 user: drh tags: rework-EQP) | |
2018-05-01
| ||
18:39 | The SQLITE_ALLOW_SQLITE_MASTER_INDEX compile-time option allows a CREATE INDEX statement against the sqlite_master table. Once created, the index works, and is usable by legacy instances of SQLite. (check-in: 853f316359 user: drh tags: trunk) | |
2018-04-30
| ||
19:32 | Defer loading result column values into registers on an ORDER BY LIMIT until we know that the LIMIT does not exclude the current row. (Closed-Leaf check-in: ce4ef46058 user: drh tags: faster-order-by-limit) | |
2018-04-28
| ||
19:08 | Test cases added for SQLITE_DBCONFIG_RESET_DATABASE. (check-in: 08665a9e2e user: drh tags: trunk) | |
18:20 | Fix an RBU problem causing spurious SQLITE_CONSTRAINT errors when restarting an RBU update in which more than one source table writes to a single target database table. (check-in: 564ae8297d user: dan tags: trunk) | |
13:21 | Add the SQLITE_DBCONFIG_RESET_DATABASE control for resetting a corrupt database file without closing any database connections. Added the ".dbconfig" command to the CLI. (check-in: a200a49ede user: drh tags: trunk) | |
12:43 | Add the SQLITE_DBCONFIG_RESET_DATABASE control as a replacement for the reset_database pragma. Resetting the database should be hard enough to do that it cannot be done by accident. (Leaf check-in: ff836cb8b0 user: drh tags: reset-database) | |
11:22 | Merge updates from trunk. (check-in: 94877e495c user: drh tags: reset-database) | |
04:16 | Prevent deep recursions on nested COLLATE operators. (check-in: 6e098ee415 user: drh tags: trunk) | |
04:10 | Fix compiler warnings in FTS3. (check-in: de508e831a user: drh tags: trunk) | |
01:46 | Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: 7626b59340 user: mistachkin tags: trunk) | |
01:44 | Add comments about the intended use of the sqlite3_data_directory variable as it pertains to the sqlite3_win32_set_directory function. (Closed-Leaf check-in: d11c419756 user: mistachkin tags: win32dir) | |
01:27 | Add the "PRAGMA reset_database=ON|OFF" command. When on, it causes the database to appear to be empty, causing the next transaction to reset it to an empty database. (check-in: 02e1a13c1f user: drh tags: reset-database) | |
2018-04-27
| ||
22:42 | Document and expose sqlite3_win32_set_directory() function for use on Win32. (check-in: cbce7180ee user: mistachkin tags: win32dir) | |
18:05 | Update test script fts3expr4.test so that it always creates fts3 tokenizers in the "en_US" locality. (check-in: 576a8f69ae user: dan tags: trunk) | |
16:35 | Fix a test script error causing tests to fail in soak.test. (check-in: 462b52b121 user: dan tags: trunk) | |
15:17 | Enhance the comments in the templatevtab.c implementation. (check-in: 05f6278a02 user: drh tags: trunk) | |
2018-04-26
| ||
18:34 | The previous fix for ticket [d85fffd6ffe856092ed8da] in check-in [0a514e62ad1ebe5c12da8dae] did not completely address the probably in that it only worked for cases where the OP_SCopy that loaded the register was the last instruction in the sequence for the expression, which is not necessarily the case for expressions like CASE...END. This revision prevents the registered that will be recomputed from being cached in the first place. (check-in: 9fd0faf517 user: drh tags: trunk) | |
17:43 | When processing an "ORDER BY ... LIMIT" that does not use an index, check whether or not a record may appear in the final result set before adding it to the temp b-tree used for sorting. (check-in: 0fcfc36ceb user: dan tags: trunk) | |
16:13 | When processing an "ORDER BY ... LIMIT" that does not use an index, check whether or not a record may appear in the final result set before adding it to the sorter. (Closed-Leaf check-in: 71bf91c218 user: dan tags: sorter-limit-opt) | |
15:50 | Ensure that new.* values of an UPDATE do not get clobbered after the BEFORE triggers run when unmodified columns of the row being updated are reloaded. Fix for ticket [d85fffd6ffe856092ed8da] (check-in: 0a514e62ad user: drh tags: trunk) | |
15:04 | Clarification of the behavior of a BEFORE UPDATE trigger when the trigger changes the values of some of the columns used to compute new columns in the UPDATE. (check-in: 7bb23c2a3d user: drh tags: trunk) | |
12:27 | Improved VDBE comment on the OP_Param opcode. No substantial changes. (check-in: 368c14da86 user: drh tags: trunk) | |
08:56 | Update the "fuzz_malloc.test" script to print SQL statements in which OOM handling problems are found to stdout. (check-in: a956363cf6 user: dan tags: trunk) | |
2018-04-25
| ||
19:02 | Add new interfaces for accessing the list of SQL keywords: sqlite3_keyword_count(), sqlite3_keyword_name(), sqlite3_keyword_check(). (check-in: 7dd34e3776 user: drh tags: trunk) | |
17:10 | Add the new DO and NOTHING keywords to the keyword lists maintained by various extensions and auxiliary programs. (check-in: 77a98a0781 user: drh tags: trunk) | |
13:27 | Add the new SQLITE_SHELL_INIT_PROC compile-time entry point to the CLI. This is needed to work around the tighter sqlite3_config() constraints now in the CLI. (check-in: 3bcdbccf53 user: drh tags: trunk) | |
12:01 | Avoid many unnecessary calls to sqlite3ReadSchema() and sqlite3Init() when the schema is known to be valid already. (check-in: 58cf812fd8 user: drh tags: trunk) | |
10:30 | Add an assert() to ensure that schema mutexes are held prior to accessing the DB_SchemaLoaded flag inside of sqlite3Init(). (check-in: d8b46290bb user: drh tags: trunk) | |
2018-04-24
| ||
18:59 | Remove a recently added NEVER() macro from a branch that can be taken in obscure circumstances. (check-in: 2aa210030a user: dan tags: trunk) | |
18:53 | Fix a problem with processing "LEFT JOIN tbl ON tbl.a = ? AND (tbl.b=? OR tbl.c=?)" in cases where there are indexes on both tbl(a, b) and tbl(a, c). (check-in: ce35e39c5c user: dan tags: trunk) | |
17:34 | Do not attempt to use terms from the WHERE clause to drive indexes on the right table of a LEFT JOIN. Fix for ticket [4ba5abf65c5b0f9a96a7a40cd18b] (check-in: aeb694e3f7 user: drh tags: trunk) | |
16:51 | Update the expert extension test cases to account for the fact that EXPLAIN QUERY PLAN now shows the start of each trigger in its output. (check-in: 8acb42f489 user: drh tags: trunk) | |
16:41 | All the OR optimization to proceed even if the OR is also converted into an IN operator. (check-in: e252c6540d user: drh tags: trunk) | |
14:18 | Add a hyperlink to the ticket on the code comment for the fix to ticket [7fa8049685b50b5aeb0c2]. (check-in: 45247c7f29 user: drh tags: trunk) | |
14:05 | Do not attempt to read values from indexes-on-expressions if the index is on the RHS of a LEFT JOIN. This won't work if the index cursor points at a null-row. Fix for [7fa80496]. (check-in: b8ef967ab1 user: dan tags: trunk) | |
13:07 | Enhance the CLI to render EXPLAIN QUERY PLAN using an ASCII-art graph. This works with ".eqp" modes and when the query begins with exactly "EXPLAIN QUERY PLAN". To see the original output format, add extra space characters in between words of the initial "EXPLAIN QUERY PLAN". (check-in: f53716ee2a user: drh tags: trunk) | |
10:57 | Fix a memory leak following failure to open an external CSV file in the csv.c extension. (check-in: 526ee07d19 user: drh tags: trunk) | |
01:10 | In EXPLAIN QUERY PLAN output, do not show an EXECUTE LIST SUBQUERY line for IN operators where the RHS is a list and not a subquery, since in that case there is no SUBQUERY to execute. (check-in: 8bc0207abd user: drh tags: trunk) | |
00:08 | Fix to check-in [ca34c2dd20ee071e] - avoid a NULL pointer dereference following an OOM. (check-in: c7e6e848fa user: drh tags: trunk) | |
2018-04-23
| ||
20:38 | Fix a problem in sqlite3ExprCompare() associated with UPSERT. (check-in: 67d0b2c152 user: drh tags: trunk) | |
20:04 | Fix a formatting issue in the TreeView output for bare expression lists. (check-in: a635681781 user: drh tags: trunk) | |
18:38 | Add the ".imposter off" variant of the ".imposter" dot-command in the CLI. (check-in: d3dad06ff1 user: drh tags: trunk) | |
17:43 | The ".selecttrace 0x2000" command causes just the top-level parse tree to be displayed, after all transformations, and showing the EQP iSelectId at each level. (check-in: ca34c2dd20 user: drh tags: trunk) | |