Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
282 check-ins using file src/wal.c version c8ec20a1
2021-11-06
| ||
11:58 | Add the rbu_exclusive_checkpoint query parameter to RBU. (Leaf check-in: c15806a4 user: drh tags: reuse-schema-3.36) | |
2021-10-26
| ||
10:16 | Fix an RBU problem with restarting an update after the *-oal file is already larger than 4GiB. (check-in: 0e79584a user: drh tags: reuse-schema-3.36) | |
10:02 | Fix an RBU problem with restarting an update after the *-oal file is already larger than 4GiB. (Leaf check-in: e4662603 user: drh tags: branch-3.36) | |
2021-07-29
| ||
14:27 | Merge the latest enhancements from trunk. (Leaf check-in: 8498d772 user: drh tags: win-blocking-locks) | |
00:33 | Remove ALWAYS() macros that can be true if the internal test function implies_nonnull_row() is used in the result set of a query and contains comparison operator against a computed column. dbsqlfuzz 4c34db5bff6247f33ee49e341a1f3018e72be0a0. (check-in: 4d1dbfa3 user: drh tags: trunk) | |
2021-07-28
| ||
18:13 | Add test case to ensure that sessions works with DELETE statements that use the truncate optimization (i.e. a DELETE without a WHERE clause). (check-in: a2fc5311 user: dan tags: trunk) | |
02:04 | Fix a harmless uninitialized variable read that occurs after an error associated with a subquery that uses DISTINCT. Found by a fuzzer. (check-in: e9719f97 user: drh tags: trunk) | |
01:22 | Reduce the scope of a variable in order to fix a harmless compiler warning that occurs under -DSQLITE_OMIT_AUTOMATIC_INDEX. (check-in: 36d5dbbe user: drh tags: trunk) | |
2021-07-26
| ||
19:49 | Remove sqldiff --visible-controls option, make it always happen. Add test cases for controls made visible (check-in: ff74c0cc user: larrybr tags: trunk) | |
18:28 | Give sqldiff --visible-controls option to deal with non-graphic text content robustly across platforms (check-in: 68d2373f user: larrybr tags: trunk) | |
01:35 | Manual merge of new .connection shell command (check-in: 0d41f7f9 user: larrybr tags: cli_extension) | |
2021-07-23
| ||
19:26 | Merge the ".connection" CLI enhancement from trunk. (check-in: d317d44f user: drh tags: win-blocking-locks) | |
18:43 | Enhance the CLI with the ".connection" command that can switch between up to five different database connections. Used for manual testing of multiple database connections in the same process. (check-in: 54eaf076 user: drh tags: trunk) | |
14:53 | Merge recent enhancements on trunk into the win-blocking-locks branch. (check-in: 9ecad2f8 user: drh tags: win-blocking-locks) | |
2021-07-22
| ||
21:11 | Set the checkSchema flag if a CREATE TABLE parse fails because the table already exists, to ensure that the table was not previously deleted by some other connection. (check-in: 91bcb962 user: drh tags: trunk) | |
18:22 | Fix ALTER TABLE DROP COLUMN so that it generates valid bytecode even when operating on a corrupt database and using PRAGMA writable_schema=ON. dbsqlfuzz 5f09e7bcc78b4954d06bf9f2400d7715f48d1fef (check-in: b65f4f76 user: drh tags: trunk) | |
16:07 | One of the optimizations of check-in [de9c86c9e4cdb34f] does not work for terms originating in the ON/USING clause, as demonstrated by forum post 6cf3bb457c3f4685. This check-in disables that optimization for ON/USING terms. Also improve the TreeView display for the resulting "true"/"false" nodes to show that they originate from the ON/USING clause. Add a testcase() to the other optimization to show that it can still be used for ON/USING terms. (check-in: 1f679604 user: drh tags: trunk) | |
10:44 | Fix a problem in the new os_unix.c code. Refine the threadtest3 test case some. (Leaf check-in: 2039d447 user: dan tags: unix-timed-wait-exp) | |
2021-07-21
| ||
15:42 | Improved robustness of cursor renumbering in the UNION ALL flattener when operating on vector assignments of an UPDATE FROM. dbsqlfuzz 417d2b053b9b3c9edaf22dd515564f06999e029c (check-in: 60695359 user: drh tags: trunk) | |
2021-07-20
| ||
21:02 | Add in-process blocking locks to os_win.c using a similar technique. (check-in: b67c157f user: dan tags: unix-timed-wait-exp) | |
17:23 | Merge changes from the win-blocking-locks branch into this one. (check-in: 85fd18d7 user: dan tags: unix-timed-wait-exp) | |
16:07 | Run a "PRAGMA quick_check", if necessary, on the modified table after an ALTER TABLE ADD COLUMN to verify that added NOT NULL or CHECK constraints are satisfied by existing rows. Abort the ADD COLUMN if not. Forum post c04814903d6ec4f7. (check-in: e3794997 user: drh tags: trunk) | |
14:57 | Avoid a malfunction that could occur if the same correlated column reference appears in both the GROUP BY and the HAVING clause of a sub-select. dbsqlfuzz a779227f721a834df95f4f42d0c31550a1f8b8a2. (check-in: 1e35cc6d user: dan tags: trunk) | |
08:23 | Fix issues in the new ADD COLUMN constraint checking. Add preliminary test cases. (Closed-Leaf check-in: 48434ad3 user: drh tags: add-column-constraint-check) | |
07:35 | Demonstration code to show how NOT NULL and CHECK constraints can be verified after an ALTER TABLE ADD COLUMN. (check-in: 039f5403 user: drh tags: add-column-constraint-check) | |
02:02 | It does not work to deserialized into TEMP, so do not allow it. The sqlite3_deserialize() routine now returns SQLITE_ERROR if you try. (check-in: 18068cc6 user: drh tags: trunk) | |
00:18 | Fix compilation of 'threadtest3' for some older versions of MSVC. (check-in: b5ede6a6 user: mistachkin tags: trunk) | |
2021-07-19
| ||
20:52 | More precision in comparing integers and floating point values while processing the integer primary key for OP_SeekGE and similar. Forum post 2bdb86a068. (check-in: f9c6426d user: drh tags: trunk) | |
20:34 | Revise the testthread3.walthread6 test case to better demonstrate the advantages of blocking locks. (check-in: 952b4cae user: dan tags: unix-timed-wait-exp) | |
17:06 | Merge trunk with this branch. (check-in: 853c621b user: dan tags: unix-timed-wait-exp) | |
16:49 | Updates so that "threadtest3[.exe]" can be built for windows with MSVC. (check-in: 4ce585fb user: dan tags: trunk) | |
14:00 | In defensive mode, allow statements that write to shadow tables to be prepared from with virtual-table xSync() calls. (check-in: c8601d83 user: dan tags: trunk) | |
03:38 | Fix minor spacing issues in the MSVC makefile. (check-in: d78c272b user: mistachkin tags: trunk) | |
03:37 | Minor enhancements to new OSTRACE messages. (check-in: 3249a6a3 user: mistachkin tags: win-blocking-locks) | |
2021-07-16
| ||
22:43 | Try to omit the ORDER BY clause in subqueries if doing so does not change the result in any way. See Forum post 2d76f2bcf65d256a for details and history. (check-in: 85ddaf1b user: drh tags: trunk) | |
20:16 | Minor comment improvements. (Closed-Leaf check-in: 6854b591 user: drh tags: omit-subquery-order-by) | |
18:30 | Experiment with having SQLITE_ENABLE_SETLK_TIMEOUT builds on unix use a condition variable to wait for wal locks held by other threads. (check-in: 4a9f5ce7 user: dan tags: unix-timed-wait-exp) | |
17:11 | De-typo sqlite3_expanded_sql() doc (check-in: 56b0f541 user: larrybr tags: trunk) | |
17:04 | Modify the generate_series() table-valued functions so that its first argument (the START value) is required. Throw an error if that argument is not supplied. In this was the series.c loadable extension can be used as a demonstration of how to code an xBestIndex function to require certain parameters. Compile with -DZERO_ARGUMENT_GENERATE_SERIES to obtain the legacy behavior. (check-in: 459d85a2 user: drh tags: trunk) | |
15:30 | Fix the "main.mk" makefile so that "series.c" is a dependency of "shell.c". (check-in: ff959917 user: drh tags: trunk) | |
01:19 | Get the "omit ORDER BY in FROM-clause subqueries" optimization working for the core test cases. (check-in: e31c5888 user: drh tags: omit-subquery-order-by) | |
2021-07-15
| ||
23:34 | By default, do not emit #line directives in the amalgamation. (check-in: bacfa936 user: mistachkin tags: trunk) | |
23:12 | Initial work on blocking locks for the Win32 VFS. Various other small enhancements. (check-in: 584c2425 user: mistachkin tags: win-blocking-locks) | |
19:29 | Attempt to omit ORDER BY clauses from FROM-clause subqueries if those ORDER BY clauses do not affect the output. See forum thread 2d76f2bcf65d256a for discussion. This can help the query flattener in some cases, resulting in faster query plans. The current implemention does not always work. (check-in: ef97c3e7 user: drh tags: omit-subquery-order-by) | |
16:39 | Change references to the schema table in sqlite3_analyzer to the new SQLITE_SCHEMA name. (check-in: 3beb77d6 user: drh tags: trunk) | |
2021-07-14
| ||
21:18 | Fix a use-after-free error in ioerr.test caused by an error in test code. (check-in: 1594056a user: dan tags: trunk) | |
19:35 | Enhance the Windows VFS to recognize SQLITE_FCNTL_LOCK_TIMEOUT and make the value set there available to the winLockFile() function. (check-in: 954b5d61 user: drh tags: win-blocking-locks) | |
2021-07-13
| ||
22:49 | Enhance comments pertaining to the interface linkage / calling convention macros. (check-in: c378e992 user: mistachkin tags: trunk) | |
21:59 | Further revisions to #line handling for amalgamation builds. (check-in: 9a843212 user: mistachkin tags: trunk) | |
20:55 | Get correct #line tags into amalgamation for other builds too. (check-in: 999eb800 user: larrybr tags: trunk) | |
11:59 | Get #line tags into amalgamation, subject to configure. (check-in: 5d81b598 user: larrybr tags: trunk) | |
11:55 | Merge from trunk, rename tool option for its effect (Leaf check-in: 9327f73c user: larrybr tags: line_tags) | |
11:30 | Do not attempt to run Tcl sessions tests unless both SQLITE_ENABLE_PREUPDATE_HOOK and SQLITE_ENABLE_SESSIONS are defined. (check-in: 385db794 user: dan tags: trunk) | |
01:45 | Amalgamation has #line directives by default. Minor mksqlite3c.tcl changes (check-in: ba3eff71 user: larrybr tags: line_tags) | |
2021-07-11
| ||
12:58 | Much self-doc improvement for shell.c generation. Misleading error message fixed. (check-in: 7738ce1b user: larrybr tags: cli_extension) | |
2021-07-10
| ||
14:48 | .tables fixup for legacy behavior. (check-in: 827ea61d user: larrybr tags: cli_extension) | |
03:42 | Migration to dispatched meta-commands done (check-in: ac4267da user: larrybr tags: cli_extension) | |
2021-07-09
| ||
23:12 | Clarify comment on sqlite3.h's interface decaration macros. (check-in: 7cb09aef user: larrybr tags: trunk) | |
16:00 | Remove disused linkage macros. (Leaf check-in: f14d3571 user: drh tags: disused-link-macros) | |
14:59 | Fix an assert() that might fail if sqlite3_create_function_v2() is invoked with NULL xStep and xFinal callbacks and a non-NULL xDestroy. (check-in: ab1550a6 user: dan tags: trunk) | |
13:52 | Enhance the sqlite3_create_function() interfaces to assume a value of SQLITE_UTF8 is presented with a nonsense value for the preferred encoding. This is undocumented behavior added for robustness. (check-in: c1bb5cff user: drh tags: trunk) | |
13:29 | Merge latest trunk changes into this branch. (check-in: 0e968f9d user: dan tags: reuse-schema) | |
11:52 | Add the usual "#ifdef __cplusplus" magic to header file ext/misc/carray.h. Also update carray.h/carray.c to use SQLITE_API in the usual way. (check-in: 0f97c2a4 user: dan tags: trunk) | |
00:12 | Allow CLI shell build to #include same user-specified header as library build. (check-in: eb8af9a4 user: larrybr tags: trunk) | |
2021-07-08
| ||
23:35 | Rename optional SQLITE_CUSTOM_INC define to SQLITE_CUSTOM_INCLUDE. (check-in: 060aec37 user: mistachkin tags: trunk) | |
22:12 | Allow library build to #include a user-specified header. (check-in: 71e6490b user: larrybr tags: trunk) | |
18:29 | Preserve and return to the user any error message returned by a failed xConnect() call on an eponymous virtual table that prevents a query from being compiled. (check-in: bbbbeb59 user: dan tags: trunk) | |
12:12 | Fix an issue with the SQLite Expert extension when a column has no collating sequence. Forum post 78165fa250. (check-in: b1e0c22e user: drh tags: trunk) | |
2021-07-07
| ||
19:44 | Fix a harmless compiler warning in the "fuzzcheck" test program. (check-in: 8c432642 user: drh tags: trunk) | |
19:40 | Fix a harmless compiler warning - duplicate local variable named "pRHS". (check-in: 5bc05faf user: drh tags: trunk) | |
18:43 | General cleanup of mkshellc.tcl, + help and options, decruft (check-in: 8bdd5fbf user: larrybr tags: cli_extension) | |
16:48 | Follow-up to [68db1ff9c44fa9c3]: The number of registers needed by PRAGMA foreign_key_check was increased too late for an assert() deep down inside of sqlite3ExprCode(). So move the size increase a little earlier. Forum post 79c9e4797d. (check-in: 7072404a user: drh tags: trunk) | |
15:52 | Fix a recently introduced segfault that might occur if a sub-select were used as a term on the RHS of an IN(...) operator for which the LHS is a row-value. (check-in: f586c06a user: dan tags: trunk) | |
13:53 | Improve the error message in cases where there is a row-value on the LHS of an IN() operator, the RHS is a list (not a sub-select) and at least one element of the list is not a row-value with the correct number of elements. (check-in: 6b22f4e7 user: dan tags: trunk) | |
11:51 | Instead of disallowing writes to fts5 tables if there are fts5vocab cursors open on them (commit [c49a6ed7]), abort any fts5vocab queries if the on-disk structure of the fts5 table changes. (check-in: 9dbdc900 user: dan tags: trunk) | |
2021-07-06
| ||
20:44 | Handle "<vector> IN (<vector>, <vector> ...)" in the same way as "<vector> IN (VALUES(<vector>, <vector>, ...)". (check-in: 981d230e user: dan tags: trunk) | |
15:47 | Create new branch named "branch-3.36" (check-in: 5eea151d user: larrybr tags: branch-3.36) | |
02:07 | More commands dispathed. Dispatch translation parameterized. (check-in: 372e3241 user: larrybr tags: cli_extension) | |
2021-07-05
| ||
19:01 | Do not allow writes to an fts5 table if there are any open fts5vocab cursors. (check-in: c49a6ed7 user: dan tags: trunk) | |
18:37 | Add the ATOMIC_INTRINSICS compile-time output output. Move sqlite3Int.h in front of ctime.c so that default values that are not overridden are shown in PRAGMA compile-time option output. (check-in: e3069526 user: drh tags: trunk) | |
17:15 | Revert [5204c2c4a7b73a64], restoring the old pre-processor logic for determining the availability of the __atomic_store_n()/__atomic_load_n() primitives. (check-in: e690abb9 user: dan tags: trunk) | |
11:27 | Allow sub-queries in the FROM clause of an UPDATE...FROM statement to access the object being updated without using an alias, as is required in the parent query. (check-in: 740cb430 user: dan tags: trunk) | |
02:40 | Improved rebustness in sqlite3ExprListDup() when it contains a vector assignment from an UPDATE where the initial term is omitted. This can happen during a UNION ALL query flattening while processing a virtual table update in which the first term of the vector is repeated. Forum post 16ca0e9f32. (check-in: 2547cfe3 user: drh tags: trunk) | |
01:11 | Ensure that TK_SELECT_COLUMN Expr nodes always have their iTable field set to to the number of columns in the vector. This is not strictly necessary. It just simplifies the state description and make the code easier to reason about. (check-in: 026f08d4 user: drh tags: trunk) | |
00:07 | Fix an incorrect comment on testcase misc1-27.0. No changes to code. (check-in: 49829ae3 user: drh tags: trunk) | |
2021-07-04
| ||
22:38 | Streamline most common command definition (check-in: dd76b41a user: larrybr tags: cli_extension) | |
22:33 | Enhance the treeview debugging mechanism so that it correctly deals with TK_ROW expression nodes. (check-in: e87fdb65 user: drh tags: trunk) | |
2021-07-03
| ||
19:20 | Create infrastructure for dynamic shell extension. (check-in: 5e7e0d4e user: larrybr tags: cli_extension) | |
18:57 | Fix a (harmless) typo in a comment. No code changes. (check-in: d2b9b8da user: drh tags: trunk) | |
02:55 | In the PRAGMA foreign_key_check, ensure that sufficient registers are allocated for the virtual machine, even if one or more foreign keys reuses the same column multiple times and has more columns than the table it is part of. Forum post a6b0c05277. (check-in: 68db1ff9 user: drh tags: trunk) | |
2021-07-02
| ||
12:25 | Put ALWAYS() on a branch that is always true due to [d4097364c511709b]. Fix a testcase precondition associated with the same check-in. (check-in: 55e2fbeb user: drh tags: trunk) | |
12:08 | Fix a harmless assertion fault discovered by OSSFuzz. The assertion fault is harmless because the assert() checks a condition that that is harmless if false and the assert() is disabled in production builds. (check-in: 79443aab user: drh tags: trunk) | |
2021-07-01
| ||
18:19 | Allow unqualified "rowid" references to be used in join queries, provided that only one of the source objects has a rowid. Forum post ab5b077c32636e49 (check-in: d4097364 user: dan tags: trunk) | |
16:57 | Import the updated nmakehlp.c file used by the TCL Extension Architecture (TEA) builds in the amalgamation tarballs. Forum post 5a5001f20a. (check-in: 595bf95b user: drh tags: trunk) | |
2021-06-30
| ||
14:04 | Fix a memory leak in fts5 that could occur when processing a query containing multiple classes of error. (check-in: 7c279670 user: dan tags: trunk) | |
12:11 | Fix an assert() in fts5 that might fail when dealing with corrupt records. (check-in: 9e760e25 user: dan tags: trunk) | |
11:53 | Do not enforce the SQLITE_LIMIT_FUNCTION_ARG limit for internally generated SQL. This prevents problems with statements like ALTER TABLE if the function argument limit is set too low. Forum post 17735aa21f3ddab2. (check-in: 763fdec5 user: drh tags: trunk) | |
2021-06-28
| ||
15:25 | When generating data for a RETURNING clause, avoid assuming cursor number 0 is available for use. (check-in: 4b2c59ac user: dan tags: trunk) | |
2021-06-25
| ||
14:48 | The OP_ReopenIdx opcode should clear the cursor if the cursor is being reused. This prevents leaving the cursor in an initialized state which could cause problems for a subsequent OP_SeekScan opcode. Fix for ticket [6dcbfd11cf666e21] and the OP_SeekScan optimization of check-in [4a43430fd23f8835]. (check-in: d4bf5243 user: drh tags: trunk) | |
11:21 | Remove a redundant "ANALYZE" line from the ".fullschema" output. (check-in: 7b47f420 user: drh tags: trunk) | |
11:14 | Fix a bug in the ".fullschema" dot-command of the CLI brought to light by check-in [a2ddb89b206c1387] - raising an error on at attempt to access the rowid of a subquery or view. (check-in: 36875827 user: drh tags: trunk) | |
00:25 | Document sqlite3_wal_hook() return. (check-in: 8acaf796 user: larrybr tags: trunk) | |
2021-06-24
| ||
18:23 | Allow the SQLITE_OPEN_EXCLUSIVE flag in sqlite3_open(). Return the SQLITE_CANTOPEN_EXISTS extended code to indicate that the open failed because the database already exists. (check-in: d091150f user: drh tags: trunk) | |
2021-06-23
| ||
17:41 | Make conditional nature of sqlite3_normalized_sql() better known. (check-in: 0e0ece71 user: larrybr tags: trunk) | |
16:07 | Fully incorporate *_changes64() API improvement. (check-in: 6699a2f6 user: larrybr tags: trunk) | |
11:39 | Show CROSS JOINs in the TreeView debuggingn output. (check-in: 72e09b6c user: drh tags: trunk) | |
11:12 | Fix a problem handling ORDER BY terms of the form "ORDER BY likely(<integer>)" within window frames. (check-in: 710f75b9 user: dan tags: trunk) | |
2021-06-22
| ||
23:30 | This is another alternative fix to the covering index on WHERE_MULTI_OR in a LEFT JOIN problem that is fixed on trunk nearby. In this alternative, covering indexes are simply disabled for WHERE_MULTI_OR on a LEFT JOIN. This might have run-time impact on some obscure queries. This patch is saved for historical reference only. (Closed-Leaf check-in: 66856410 user: drh tags: multi-or-covidx-fix3) | |
23:27 | This is an alternative fix to the covering index on WHERE_MULTI_OR in a LEFT JOIN problem that is fixed nearby. This one works by having the OP_NullRow opcode create the index if it does not already exist. That is slightly more complex. This patch is saved for historical reference only. (Closed-Leaf check-in: 956bafb6 user: drh tags: multi-or-covidx-fix2) | |
23:24 | When an index is used by all branches of the WHERE_MULTI_OR optimization and becomes a covering index, make sure the index has been created prior to NULLing it in the OP_NullRow opcode of a LEFT JOIN. See forum post 0575376e07. The covering-index for WHERE_MULTI_OR optimization was added by [62678be3df35cdcb]. Test cases are in the orindex01.test module of TH3. (check-in: 787c76a8 user: drh tags: trunk) | |
18:32 | Add the sqlite3_changes64() and sqlite3_total_changes64() API functions. (check-in: 48fdec22 user: dan tags: trunk) | |
18:06 | Fix a problem causing sqlite3_changes() to return an incorrect value following a "DELETE FROM tbl" command on an intkey table (because internal b+tree cells were being included in the count). (check-in: f662ff47 user: dan tags: trunk) | |
14:59 | Ensure that the cell array used in balance_nonroot() is always large enough, even if the pages being balanced are corrupt. (check-in: 53f64e83 user: dan tags: trunk) | |
2021-06-20
| ||
22:52 | Load recent dbsqlfuzz cases into test/fuzzdata8.db. (check-in: a766bba0 user: drh tags: trunk) | |
22:49 | Remove a NEVER() that is reachable by a corrupt database. dbsqlfuzz 8456a0f88e39a49fb675d8f77394979ebb2a03c1. Test case in TH3. (check-in: 1c41e86f user: drh tags: trunk) | |
22:17 | Do not allow an SQLITE_CORRUPT error to mask a prior SQLITE_IOERR in balance_nonroot(). dbsqlfuzz 5e1c86e7f18023f2b9abe3429977d7ea726f50d8 (check-in: 50e81876 user: drh tags: trunk) | |
2021-06-19
| ||
20:20 | Remove unnecessary (redundant) variable initialization from sqlite3BtreeInsert() for a small size reduction and performance increase. (check-in: 70d18364 user: drh tags: trunk) | |
18:35 | The previous check-in is a significant change to btree, so go ahead and increment the version number for the next development cycle. (check-in: 2eb66970 user: drh tags: trunk) | |
18:32 | Split the sqlite3BtreeMovetoUnpacked() routine into two separate routines sqlite3BtreeTableMoveto() and sqlite3BtreeIndexMoveto(), since we usually know the type of btree in advance. This results in less branching and better performance. (check-in: 3b0d34e5 user: drh tags: trunk) | |
2021-06-18
| ||
19:01 | Merge version 3.36.0 (check-in: 79221520 user: drh tags: reuse-schema) | |
18:36 | Version 3.36.0 (check-in: 5c9a6c06 user: drh tags: trunk, release, version-3.36.0) | |
2021-06-17
| ||
17:26 | Merge recent trunk enhancements into reuse-schema branch. (check-in: 92d8f967 user: drh tags: reuse-schema) | |
2021-06-16
| ||
19:23 | Add an ALWAYS on a branch in STAT4-only logic that is now always true due to check-in [c21bc5a2353e660f]. (check-in: 7bd55eee user: drh tags: trunk) | |
18:58 | Omit a handful of tests from pager1.test when testing SQLITE_ENABLE_ZIPVFS builds. (check-in: c3036c28 user: dan tags: trunk) | |
16:56 | Do not run test file sessionbig.test on 32-bit platforms. It uses too much memory. (check-in: 75e53215 user: dan tags: trunk) | |
15:56 | Adjust the mkshellc.tcl script so that the generated code always uses unix-style line endings. (check-in: 9f69af4d user: drh tags: trunk) | |
13:26 | Avoid ominous warning in showdb.c (check-in: f8d7ac01 user: larrybr tags: trunk) | |
12:26 | Adjustments to requirement markings in comments. No changes to code. (check-in: be00e45b user: drh tags: trunk) | |
11:32 | Enhanced defense against integer overflow in ALTER TABLE. (check-in: fb7f094e user: drh tags: trunk) | |
2021-06-15
| ||
20:10 | Fix some #ifdefs so that builds work for all supported compile-time options. (check-in: ca7d78f7 user: drh tags: trunk) | |
20:07 | Fix an incorrect ifdef in the previous check-in. (Closed-Leaf check-in: 4b2bb467 user: drh tags: ifdef-update) | |
18:46 | Fix some minor #ifdef issues so that all of the supported compile-time options continue to build. (check-in: d8cf4070 user: drh tags: ifdef-update) | |
15:36 | Update the "nmakehlp.c" utility program sources associated with the TCL Extension Architecture, obtained from https://core.tcl-lang.org/sampleextension/file. Perhaps this new version will sit better with salmonx's static analyzer (ref1), (ref2). (check-in: 603b851d user: drh tags: trunk) | |
15:15 | Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly necessary. There are no vulnerabilities here. However, adding these checks avoids unnecessary static analyzer complaints. Forum post ce1193be15. (check-in: 272a15b9 user: drh tags: trunk) | |
14:34 | Prevent an infinite loop in the trim() SQL function if the second argument is a carefully malformed UTF8 string. (check-in: 829343c2 user: drh tags: trunk) | |
2021-06-14
| ||
20:49 | Fix typos in testcase() macros from check-in [c09d90eec2a49b94]. (check-in: d4d9869c user: drh tags: trunk) | |
20:41 | In the authorizer, use SQLITE_DROP_INDEX, not SQLITE_DROP_TEMP_INDEX when dropping an index in an attached database. (check-in: e5a5acd6 user: drh tags: trunk) | |
20:08 | Fix an ALTER TABLE problem with handling infinite loops of CTEs in the database schema. (check-in: c09d90ee user: dan tags: trunk) | |
14:52 | Fix a test script problem in corruptN.test. (check-in: 3ddfe9ae user: dan tags: trunk) | |
14:35 | Update this branch with latest changes from trunk. (check-in: f21a53fb user: dan tags: reuse-schema) | |
14:00 | An index on the expression "likely(X)" should store the true value of X, even if X is a real number with no fractional part. The optimization of storing some REAL indexed values as INT (see [10d851353c2abead]) should be omitted for index columns that are expressions. Forum post 3b940c437a. (check-in: 791473bc user: drh tags: trunk) | |
11:20 | Avoid allocating oversized column names in the sqllimit1.test module. (check-in: 7068f1f6 user: drh tags: trunk) | |
2021-06-13
| ||
19:14 | The opcode that preceeds OP_SeekScan is usually OP_IdxGT but can sometimes be OP_IdxGE. Adjust asserts accordingly. Follow-up to [9a2ab6092d644fc3]. dbsqlfuzz e41762333a4d6e90a49e628f488d0873b2dba4c5 (check-in: d6803ed8 user: drh tags: trunk) | |
17:55 | Improved defense against OOM errors in sqliteInitOne(). dbsqlfuzz 429db39cd5777c46479641e8637c48c62890042d (check-in: b6c57e0e user: drh tags: trunk) | |
08:23 | Correct link in .ar help. (check-in: de9d0f95 user: larrybr tags: trunk) | |
2021-06-12
| ||
18:12 | The sqlite3WithPush() routine might destroy its second argument if there was a prior OOM. Do not use the second argument of sqlite3WithPush() if this happens. (check-in: baa3f962 user: drh tags: trunk) | |
17:45 | An alternative approach to the use-after-free problem. (Closed-Leaf check-in: 6796b7a2 user: drh tags: alternative-oom-fix) | |
16:17 | Fix a use-after-free that could follow an OOM in ALTER TABLE. (Edit:) Still contains problems. (Closed-Leaf check-in: 193b14a5 user: dan tags: original-uaf-fix) | |
2021-06-11
| ||
13:18 | Reapply two recent ALTER TABLE error checks that turned out to be necessary after all. dbsqlfuzz fc5a9deefda00dda914748985155a6d4c44174e5. (check-in: 230fedd9 user: drh tags: trunk) | |
12:41 | Avoid bugs in some implementations of dlopen() by avoiding calls to dlopen() with a filename argument that exceeds FILENAME_MAX bytes. Forum post 08a0d6d9bf. (check-in: 01f3877c user: drh tags: trunk) | |
12:14 | Fix a crash in new ALTER TABLE code that could follow an OOM. (check-in: 6f1f2a0a user: dan tags: trunk) | |
12:02 | Remove an unreachable branch added by the previous commit. (check-in: 852ee0e9 user: dan tags: trunk) | |
11:14 | Fix problems with ALTER TABLE and schemas that contain views with some recursive CTEs, or CTEs that reference other CTEs. Forum post 9d965f2956. (check-in: 8b1f9a51 user: dan tags: trunk) | |
2021-06-10
| ||
19:37 | Fix an assert() added by the previous commit that could fail with some database schemas. (Closed-Leaf check-in: 5079b5d5 user: dan tags: alter-table-cte-fix-1) | |
19:08 | Fix problems with ALTER TABLE and schemas that contain views with complex CTEs. (check-in: 32e3ecfc user: dan tags: alter-table-cte-fix-1) | |
14:36 | Improved robustness following OOM in the constant propagation optimization. dbsqlfuzz 001a20255c0df7495c21df62a20ea5b51e22c390. (check-in: 8658a64d user: drh tags: trunk) | |
2021-06-09
| ||
14:45 | Set the database connection error code for an oversize argument to sqlite3_bind_blob64() or sqlite3_bind_text64(). Forum post a636276f0d451667 and 33821c8db543c. (check-in: 56ff58c0 user: drh tags: trunk) | |
13:39 | Add defensive code to better handle corrupt records in fts5. (check-in: a99c29b5 user: dan tags: trunk) | |
2021-06-08
| ||
23:46 | Remove two assert()s in FTS5 that checks for database corruption right before actual code does the same check. dbsqlfuzz 9680db8f5338cb9b6060eb3a02d984555d4472e3. (check-in: f3f82967 user: drh tags: trunk) | |
17:56 | Try to avoid a double-free in the showdb utility program when running pgidx on a corrupt database. See forum post a60ea5a4d4 for context (check-in: e3188a86 user: drh tags: trunk) | |
12:22 | Add an assert() to prevent the value of the SQLITE_VTABRISK macros from being changed in a way that would break logic. (check-in: 33babdb5 user: drh tags: trunk) | |
12:15 | Avoid a buffer overread in fts3 that could occur when handling corrupt data structures. (check-in: 45f459d2 user: dan tags: trunk) | |
2021-06-07
| ||
17:36 | Fix a buffer overread that could occur in fts5 when handling corrupt records. (check-in: 078962a2 user: dan tags: trunk) | |
15:28 | Fix a buffer overrun in fts3 that could occur when handling corrupt records and '^' queries. (check-in: 9d0b6b0f user: dan tags: trunk) | |
14:21 | Add recent dbsqlfuzz test cases to test/fuzzdata8.db. (check-in: 16202200 user: drh tags: trunk) | |
13:50 | Avoid use of uninitialized memory while running defragmentPage() on a corrupt database file. dbsqlfuzz 4c45cecc0b255aaf2ea85453ccd17e814fd0b6b2 (check-in: 35e40d75 user: drh tags: trunk) | |
11:50 | Fix an assert() in the OP_ParseSchema opcode that might fail on a corrupt database file when running with PRAGMA writable_schema=ON. dbsqlfuzz e7d743ca65f2767e415095f0c5a49166a0f55eea. (check-in: 10801f65 user: drh tags: trunk) | |
00:54 | Remove unnecessary end-of-line whitespace from the regexp.c extension. (check-in: 17e26a1f user: drh tags: trunk) | |
00:41 | Omit the unnecessary highlighting of the security implications of SQLTIE_DIRECTONLY in the sqlite3_create_function() documentation. No changes to code. (check-in: 2aa9368b user: drh tags: trunk) | |
2021-06-04
| ||
23:26 | A better fix for the problem addressed by [4eb80b0cc61526c1]. This fix also avoids reading uninitialized variables. (check-in: 1c71de43 user: drh tags: trunk) | |
21:46 | Make MSVC build examples work when taken literally, and say when they do. (check-in: b53ca8ed user: larrybr tags: trunk) | |
17:47 | Improvements to the OP_SeekScan optimization. Added the SQLITE_TESTCTRL_TUNE test-control. (check-in: 9a2ab609 user: drh tags: trunk) | |
16:17 | Add the (missing) dependency of regexp.c to the shell.c rule in the makefiles. This dependency should have been added by [5d4535bfb603d7c8] but was missed. (check-in: c93be7e6 user: drh tags: trunk) | |
16:11 | Fix harmless compiler warnings. (check-in: 83aca2d8 user: drh tags: trunk) | |
15:56 | Fix more cases in the regexp extension where the 0x00 terminator at the end of the input string is being pattern matched. [forum/forumpost/9104f0d9e7|Forum post 9104f0d9e7]. (check-in: 569e00d4 user: drh tags: trunk) | |
13:40 | Revamp SQLITE_TESTCTRL_TUNE to provide visibility of current turning parameter values. (Closed-Leaf check-in: 677e645e user: drh tags: seekscan-improvements) | |
13:16 | Add support for SQLITE_TESTCTRL_TUNE and the ".testctrl tune ID VALUE" command in the CLI. (check-in: f1199d58 user: drh tags: seekscan-improvements) | |
12:29 | Merge recent trunk enchancements into the seekscan-improvements branch. (check-in: d9e85fe8 user: drh tags: seekscan-improvements) | |
2021-06-03
| ||
18:56 | Fix a case where combining row-value UPDATE FROM syntax with window functions over aggregates can cause an error. dbsqlfuzz ae4516bff08d736f203f09934e2f4d31e0b3e7ce (check-in: 4a587c34 user: dan tags: trunk) | |
18:51 | Fix the truncate optimization so that PRAGMA count_changes and changes() return correct values even for a WITHOUT ROWID table. Forum post 07dedbf9a1. (check-in: 820ae3b1 user: drh tags: trunk) | |
13:51 | Add the regexp() and regexpi() extension functions to the CLI. (check-in: 5d4535bf user: drh tags: trunk) | |
13:44 | Fix a bug in the regexp extension in which the "." wildcard would match the 0x00 terminator at the end of the comparison string. (check-in: fa23108b user: drh tags: trunk) | |
12:31 | Fix the case-insensitive version of the regexp() function so that it does not use the prefix optimization incorrectly. Forum post 983b43ef8e. (check-in: 1a8e43cc user: drh tags: trunk) | |
2021-06-02
| ||
19:28 | Add an optimization control bit to disable the OP_SeekScan optimization. (check-in: f674c41e user: drh tags: seekscan-improvements) | |
18:50 | Fix an ALWAYS which can be false. (check-in: a87f8ecd user: drh tags: seekscan-improvements) | |
17:32 | Tighten assert() restrictions on the OP_SeekScan opcode. (check-in: dbc33d3a user: drh tags: seekscan-improvements) | |
17:14 | Never use WHERE_IN_SEEKSCAN for the 2nd or subsequent IN operator. (check-in: d0b98619 user: drh tags: seekscan-improvements) | |
12:44 | This is an attempt to address the OP_SeekScan performance issue identified by forum post b4fcb8a598. (check-in: d58efb3f user: drh tags: seekscan-improvements) | |
2021-06-01
| ||
21:07 | Fix issue in 'mkopcodeh.tcl' tool that prevented its termination in rare circumstances. (check-in: a8d92113 user: mistachkin tags: trunk) | |
15:37 | Fix a problem with running ALTER TABLE against schemas that contain compound SELECT statements with ORDER BY clauses containing one or more references to the second or subsequent component SELECT statements. This fixes the problem reported by forum post 31ceaa8461. (check-in: 587a3044 user: dan tags: trunk) | |
2021-05-29
| ||
23:07 | Do not confuse the ">" operator with IS NOT NULL when checking to see if a partial index is usable. Forum post d813704d7c. (check-in: 8cc23931 user: drh tags: trunk) | |
21:50 | Fix a subtle error in an assert(). dbsqlfuzz eefbd0215c0c1b4bcc32b8141b48b35f7b431300 (check-in: a5ec81eb user: drh tags: trunk) | |
2021-05-28
| ||
14:28 | If a subquery is used to drive an index, this change avoids making an extra copy of the result of that subquery. But, such situations are probably sufficiently unusual that the added complexity of this enhancement is not worth the performance gain. So I'm going to park this check-in on a branch. If we later find a use case to justify it, we can merge it to trunk then. This is the "further change" that was promised by the prior check-in comment. (Leaf check-in: 4488cb88 user: drh tags: copy-optimization) | |
12:48 | Make a deep copy of the result of a subquery in case the subquery is reused. Fix for the problem reported by forum post 28216b36ac and introduced by check-in [f30fb19ff763a7cb]. Further changes to try to optimize the new OP_Copy opcode back into either OP_SCopy or OP_Move will be attempted separately. A test case will be in TH3. (check-in: c9f0b9cb user: drh tags: trunk) | |
12:15 | Fix a potential memory leak in json_group_object() following an error. dbsqlfuzz cd32630de3ff039d97089592b63cb3616f8ec9dd (check-in: 21676731 user: drh tags: trunk) | |
2021-05-27
| ||
16:31 | Add the merge-test.tcl script to ease verification of LTS branches. (check-in: f958ffbc user: drh tags: trunk) | |
15:24 | The SQLITE_ENABLE_SHARED_SCHEMA compile-time option is on by default in the configure-generated makefile, permitting a complete test of this branch using "./configure && make test". (check-in: e867d226 user: drh tags: reuse-schema) | |
14:09 | Improved comment on the prpagateConstants() routine. No changes to executable code. (check-in: d61a875d user: drh tags: trunk) | |
10:23 | Remove a NEVER that is reachable following OOM in writable_schema=ON mode with a corrupt schema. (check-in: 4eb80b0c user: drh tags: trunk) | |
2021-05-26
| ||
23:10 | Improvements to the constant-propagation optimization in order to better deal with unusual affinities. See forum post 6a06202608 for more detail. (check-in: 9be208a6 user: drh tags: trunk) | |
19:52 | Minor optimization to opcode comparison logic in the fixes to the constant-propagation optimization on this branch. (Closed-Leaf check-in: f17dec40 user: drh tags: constant-propagation-fix) | |
19:37 | Add new test file whereM.test. Containing tests for the change on this branch. (check-in: c4c76b82 user: dan tags: constant-propagation-fix) | |
18:51 | Avoid assuming that an expression like "x=10" in a WHERE clause implies that CASE(x AS TEXT)=='10'. (check-in: 389ec669 user: dan tags: constant-propagation-fix) | |
18:46 | Take care that the code is not generated for the same Select object more than once, as transformations that apply during the first pass might cause problems for the second pass. dbsqlfuzz 836b625cd8a41809ef80fc7ebaa6554357bcb463. (check-in: f30fb19f user: drh tags: trunk) | |
14:32 | Update an assert() in wherecode.c that might fail following an unrelated SQL error. (check-in: 3e2c36a8 user: dan tags: trunk) | |
2021-05-25
| ||
16:10 | Do not run sessionbig.test as part of the session_strm permutation. It is too slow. (check-in: 708ce7ad user: dan tags: trunk) | |
15:21 | Update an allocation routine in the sessions module to allow it to allocate the maximum size permitted by sqlite3_realloc64(). (check-in: 0b45e821 user: dan tags: trunk) | |
11:39 | Enhance the shell tool ".dump PATTERN" command so that it dumps the contents of shadow tables when a virtual table is identified by the PATTERN. (check-in: b0bc5ab9 user: dan tags: trunk) | |
2021-05-24
| ||
14:35 | Fix a problem in the in-memory journal code that could occasionally lead to a segfault when a sub-transaction that modified zero pages was committed. (check-in: 17960165 user: dan tags: trunk) | |
12:28 | Minor comment improvements in fuzzcheck.c. (check-in: 7aca8d52 user: drh tags: trunk) | |
12:13 | New dbsqlfuzz cases added to test/fuzzdata8.db. (check-in: 5bb5c9ec user: drh tags: trunk) | |
11:35 | Fix the TreeView module so that it works with the TK_ERROR exprssion. Also fix an assert() that was failing due to the recent TK_ERROR addition. (check-in: dd56fbe0 user: drh tags: trunk) | |
00:17 | Additional defenses (above and beyond [b986600520696b0c]) to prevent an invalid subquery from causing problems downstream. If an error is found while analyzing a subquery expression, change the expression to TK_ERROR so inhibit further processing on that expression. dbsqlfuzz cf624b8c0484c66e0f552bf6475e3e3f2c22b24e. (check-in: 0be6b6c9 user: drh tags: trunk) | |
2021-05-23
| ||
17:47 | Do not push a WITH clause onto the processing stack if prior errors have occurred. dbsqlfuzz 6b7a144674e215f06ddfeb9042c873d9ee956ac0. (check-in: c2066dde user: drh tags: trunk) | |
2021-05-22
| ||
15:05 | Merge latest trunk changes into this branch. (check-in: dbc65a69 user: dan tags: reuse-schema) | |
11:23 | Do not invoke sqlite3ExprAffinity() after a syntax error that might have left the tree in an inconsistent state. See also [e8a1515b44380cc5] and forum post 7e484e225c. (check-in: b9866005 user: drh tags: trunk) | |
11:00 | The fix in the previous check-in was only correct if the OOM occurs on the initial allocation. This changes should make it correct for a resize as well. (check-in: 57087ab2 user: drh tags: trunk) | |
01:30 | If an FTS5 Cursor fails to enlarge the space for the aInst array, set the size of the aInst array to zero. dbsqlfuzz 294254b8105cca409f27a711f1eb2e9e63cbcac5. (check-in: 4ae5e5b5 user: drh tags: trunk) | |
2021-05-21
| ||
21:49 | If there are errors in a nested CTE, be sure to abandon processing. Do not continue since the parse tree may have been left in a goofy state which could cause use-after-free and segfaults. See forum post aa4a7a3980 for an example. (check-in: 94225d69 user: drh tags: trunk) | |
16:41 | Fix a problem with SQLITE_MAX_MEMORY in malloc.c. (check-in: c18dbe2f user: dan tags: trunk) | |
13:32 | Add a new sqlite3_config() option for setting the maximum precision of a printf() substitition. The default value is 100,000. It was formerly more than 2 billion. The default can be changed using the SQLITE_PRINTF_PRECISION_LIMIT compile-time option. (Leaf check-in: fd8b68a4 user: drh tags: compile-time-precision-limit) | |
2021-05-20
| ||
23:25 | Fix a faulty assert() statement in sqlite3ExprListDup(). This is a continuation of the fix at [59812e7ef705226c]. (check-in: 240f7494 user: drh tags: trunk) | |
18:11 | Enhance one test case to use various alternative definitions of DUAL. (check-in: 179dcb6b user: drh tags: trunk) | |
17:15 | Ensure that objects within view definitions are not incorrectly resolved to CTEs that are part of the statement using the view. (check-in: f7dcc4b5 user: dan tags: trunk) | |
11:42 | Ensure the required b-tree mutexes are held for "CREATE TABLE IF NOT EXISTS" and "DROP TABLE IF EXISTS" statements on attached databases. (check-in: 67bde016 user: dan tags: trunk) | |
00:44 | Replace [0f0959c6f95046e8] with a new and better solution that also fixes the CTE name resolution problem described in forum post 8590e3f6dc. Test cases for both problems added. (check-in: 5614279d user: drh tags: trunk) | |
00:10 | Fixes and improvements to PRAGMA compile_options. (check-in: 34579549 user: drh tags: trunk) | |
2021-05-19
| ||
23:29 | final merge from trunk (Leaf check-in: 06629569 user: larrybr tags: compile_options) | |
21:55 | When constructing the synthensized SELECT statement that is used to choose the rows in an UPDATE FROM, make sure the first table is really the table being updated, and not some common-table expression that happens to have the same name. forum post a274248080. More changes associated with CTE name resolution are pending. (check-in: 0f0959c6 user: drh tags: trunk) | |
20:01 | Incorporate ..._DESERIALIZE revision. (check-in: b70587cc user: larrybr tags: compile_options) | |
19:55 | merge from trunk (check-in: 19ffe3cf user: larrybr tags: compile_options) | |
19:28 | Add a comment with useful information about SHM locking. No changes to deliverable code. (check-in: 4e81ea3b user: drh tags: trunk) | |
19:27 | Fix a formatting error on the comment. (Closed-Leaf check-in: 6f2fb60e user: drh tags: better-comment) | |
16:55 | Add a table of shared-memory lock offsets in a comment in the os_unix.c code. Include some assert()s to help verify the numbers. (check-in: b480aacb user: drh tags: better-comment) | |
14:49 | Allow aggregate sub-selects within ORDER BY and PARTITION BY clauses of window frame definitions. (check-in: 3daab949 user: dan tags: trunk) | |
12:17 | Improved column name and column type determination for the RETURNING clause. (check-in: 699c3399 user: drh tags: trunk) | |
02:33 | Cure some TCL test failures and narrow an object scope. (check-in: 1155696c user: larrybr tags: trunk) | |
2021-05-18
| ||
19:10 | In the MULTI-INDEX OR query plan, code for sub-expressions can sometimes be generated twice. But for some subqueries, generating code off of the same tree twice causes problems. So now MULTI-INDEX OR makes a copy of the sub-expressions it uses to avoid code-generating them more than once. dbsqlfuzz 9ebd2140e7206ff724e665f172faea28af801635. (check-in: 4a55f725 user: drh tags: trunk) | |
12:36 | Improved comments on the generated opcodes.h file. (check-in: f2a17f1f user: drh tags: trunk) | |
00:52 | Add a CORRUPT_DB term to an assert() added earlier today. (check-in: 304739d2 user: drh tags: trunk) | |
2021-05-17
| ||
17:14 | Fix harmless compiler warnings. (check-in: ace12a39 user: drh tags: trunk) | |
16:54 | Enhance the integer-comparison optimization on the OP_Eq and similar opcodes so that it avoids a lot of useless work. (check-in: 4221f41a user: drh tags: trunk) | |
16:20 | Fix problems with refering to CTEs from within sub-selects in PARTITION BY or ORDER BY clauses of window frame definitions. Also a problem with renaming a column when the schema contains a trigger containing a correlated sub-select within a window frames PARTITION BY or ORDER BY clause. (check-in: 4c6cd54a user: dan tags: trunk) | |
13:11 | When deleting an SQL function that does not exist, return without doing anything at all rather than creating a tombstone function. In this way, function deletes that happen inside virtual-table destructors that are run when a database connection is closing do not create new tombstones in the function table after the function table has already been purged. forum post 726219164b. (check-in: 391c7313 user: drh tags: trunk) | |
11:19 | Performance improvement in sqlite3TableLock(). (check-in: 0d77e371 user: drh tags: trunk) | |
2021-05-15
| ||
19:36 | Performance optimization in the memory allocation of allocateCursor. (check-in: 9d16323d user: drh tags: trunk) | |
13:08 | Performance optimization to the clearCell() routine inside of btree. (check-in: c4e02619 user: drh tags: trunk) | |
2021-05-14
| ||
20:01 | Small performance improvement for sqlite3BtreeInsert(). (check-in: 4ae64484 user: drh tags: trunk) | |
15:37 | Avoid adding superfluous virtual WHERE clause terms that might arise due to the constant propagation optimization. (check-in: cf63abbe user: drh tags: trunk) | |
14:26 | Attempt the constant propagation optimization on any WHERE clause that has a top-level AND operator, even if the query is not a join. This is an attempt to partially address the concern raised in forum post 830d37b928. (check-in: e994c9f2 user: drh tags: trunk) | |
13:32 | Fix an over-length source code comment in whereexpr.c. No logic changes. (check-in: af5eb902 user: drh tags: trunk) | |
2021-05-13
| ||
18:24 | Modify the sqlite3_stmt_readonly() interface so that it returns false for CREATE TABLE IF NOT EXISTS statements even if the table already exists and the statement is really a read-only no-op. Likewise for DROP TABLE, CREATE INDEX, and DROP INDEX. Update the documentation for sqlite3_stmt_readonly() to reflect this new behavior. (check-in: cf8eb465 user: drh tags: trunk) | |
13:43 | The content columns of the index-btree that implements a WITHOUT ROWID table are not ordered and so the query planner should not assume they are ordered. Fix for the issue identified by forum post 6c8960f545. (check-in: c21bc5a2 user: drh tags: trunk) | |
2021-05-12
| ||
22:15 | Further simplification of the reverse-order scan logic of the previous check-in. (check-in: b2b0e23b user: drh tags: trunk) | |
22:02 | Fix the query plan for an indexed lookup on a WITHOUT ROWID table with a DESC primary key when the primary key is constrained by an inequality. See forum post 8988341615. Test cases in TH3. (check-in: f65c929b user: drh tags: trunk) | |
15:39 | Fix a race condition that can lead to deadlock in the memdb VFS if one thread is trying to open an existing database at the same moment that another thread that is the only prior user of that database is trying to close it. (check-in: b635375d user: drh tags: trunk) | |
14:17 | Add the new threadtest5 test program for stressing multiple database connections in the same process hammering on a single database. Primarily designed to test memdb, but works on any database. (check-in: 8db1c069 user: drh tags: trunk) | |
11:55 | Enhance the memdb VFS so that it is able to share databases among multiple database connections in the same process, as long as the database filename begins with "/". This provides a way for threads to share an in-memory database without the use of shared-cache mode. (check-in: 533fffc4 user: drh tags: trunk) | |
02:52 | Respond correctly to OOM during mutex allocation. (Closed-Leaf check-in: 98dae595 user: drh tags: memdb-enhancement) | |
02:09 | Mark an unreachable branch as NEVER(). (check-in: 6c20d9d4 user: drh tags: memdb-enhancement) | |
2021-05-11
| ||
11:40 | Fix a NEVER() that can sometimes be true. (check-in: 8f9f1cbc user: drh tags: memdb-enhancement) | |
10:47 | Fix a NEVER() that can sometimes be true. dbsqlfuzz 9a86fb3830977e216fde061bfbe1c1e5c2e9bfc4 (check-in: f39666e6 user: drh tags: trunk) | |
2021-05-10
| ||
23:48 | Enhance the memdb VFS to provide the ability to share a single database among multiple database connections. (check-in: 0617c66a user: drh tags: memdb-enhancement) | |
13:28 | Add new output columns to the "PRAGMA database_list" statement. (Leaf check-in: 905085a7 user: drh tags: database-list-enhancement) | |
2021-05-08
| ||
17:18 | Enable the sqlite3_serialize() and sqlite3_deserialize() interfaces by default. Omit the SQLITE_ENABLE_DESERIALIZE option and replace it with the SQLITE_OMIT_DESERIALIZE option. (check-in: 6df3b03e user: drh tags: trunk) | |
11:57 | Fix help-text typo in the CLI. (check-in: 56075314 user: drh tags: trunk) | |
2021-05-07
| ||
15:46 | Detect misuse of aggregate functions in the ORDER BY clause of a query even if the query also contains window functions. (check-in: 0d11d777 user: drh tags: trunk) | |
14:16 | This was suppose to be a merge from trunk. But something went wrong. (Closed-Leaf check-in: c5e2de1d user: dan tags: bad-merge) | |
2021-05-06
| ||
20:47 | Fixes for cksmvfs and rbu so that they work together. (check-in: f35f6972 user: dan tags: trunk) | |
13:45 | Remove an assert() in FTS5 that can (rarely) be false in the event of an OOM while processing a corrupt database file. (check-in: 5f12f891 user: drh tags: trunk) | |
11:02 | Improved detection of oversized cells in balance_nonroot(), especially in index b-trees when a cell is being moved from a child page into the parent page in order to become a new divider cell. (check-in: 9080d3d5 user: drh tags: trunk) | |
2021-05-05
| ||
19:46 | Provide the sqlite3PrintMem() routine on SQLITE_DEBUG builds, which can be invoked from a debugger to get a summary of the status of an sqlite3_value or Mem object. (check-in: 5ac24179 user: drh tags: trunk) | |
11:47 | Fix an undefined-integer-overflow problem in fts3.c. (check-in: a0bf931b user: dan tags: trunk) | |
2021-05-04
| ||
23:21 | When applying the optimization that disables WHERE clause terms that drive indexes, make sure not to do so if the term being disabled is a transitive constraint. Fix for the problem identified by forum post eb8613976a. (check-in: f1f9b5de user: drh tags: trunk) | |
18:24 | Also for the 0x20000 bit of ".wheretrace", show when WHERE clause terms are disabled. (check-in: 625fb253 user: drh tags: trunk) | |
16:51 | Additional debugging output for whereScanNext() showing equivalence classes when the ".wheretrace" setting contains the 0x20000 bit. (check-in: 9280e3d9 user: drh tags: trunk) | |
12:07 | Back out the EXISTS-to-IN optimization. It slows things down rather than speeds them up depending on the query. And (see forum post 8692d94725) it sometimes results in an incorrect answer. We may come back and revisit this optimization later, but for now it seems best just to disable it. (check-in: 16252d73 user: drh tags: trunk) | |
2021-05-03
| ||
13:35 | Fix minor coverity warnings in the CLI. (check-in: 204086a9 user: drh tags: trunk) | |
13:24 | Fix a potential memory leak following OOM in the decimal extension. (check-in: 5127f737 user: drh tags: trunk) | |
2021-05-01
| ||
12:09 | Back out the NEVER() inserted by [c7309ed3c7588c7e] because it is reachable after all. dbsqlfuzz bc17a306a09329bba0ecc61547077f6178bcf321 (check-in: 20a4f3f1 user: drh tags: trunk) | |
2021-04-30
| ||
16:12 | Guard against a NULL-pointer dereference following OOM in the JSON extension. (check-in: ea221f3c user: drh tags: trunk) | |
12:30 | Fix a harmless "unused variable" warning when compiling with -DSQLITE_COVERAGE_TEST. (check-in: 0bef3fb1 user: drh tags: trunk) | |