SQLite

Timeline
Login

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

80 events for the month beginning 2021-06-01 by user drh

Following month ↑
2021-06-30
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-25
14:49 Fixed ticket [6dcbfd11]: Incorrect query result due to the SeekScan optimization plus 6 other changes (artifact: 92dc0413 user: drh)
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)
14:27 New ticket [6dcbfd11] Incorrect query result due to the SeekScan optimization. (artifact: e40291a6 user: drh)
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)
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
11:39
Show CROSS JOINs in the TreeView debuggingn output. (check-in: 72e09b6c user: drh 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)
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:44
Merge recent trunk changes into branch-concurrent-pnu-wal2 via that wal2 branch. (check-in: 2ff7e562 user: drh tags: begin-concurrent-pnu-wal2)
17:38
Merge recent trunk enhancements into begin-concurrent-report via begin-concurrent-pnu. (check-in: 204dbc15 user: drh tags: begin-concurrent-report)
17:30
Merge recent trunk enhancements into the begin-concurrent-pnu branch. (check-in: 229107b1 user: drh tags: begin-concurrent-pnu)
17:29
Merge recent trunk enhancements into the begin-concurrent branch. (check-in: 59303e69 user: drh tags: begin-concurrent)
17:26
Merge recent trunk enhancements into reuse-schema branch. (check-in: 92d8f967 user: drh tags: reuse-schema)
16:53
Merge the latest trunk enhancements into the wal2 branch. (check-in: 41363fb9 user: drh tags: wal2)
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)
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)
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)
20:05 Edit [d8cf407046f20b03|d8cf4070]: Move to branch ifdef-update. (artifact: b59ef1df user: drh)
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)
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)
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)
18:02 Edit [193b14a58e378ab3|193b14a5]: Move to branch original-uaf-fix. Mark "Closed". Edit check-in comment. (artifact: 8e1a7deb user: drh)
17:58 Edit [6796b7a2485eca27|6796b7a2]: Edit check-in comment. Remove the "Closed" mark. (artifact: 6728bd25 user: drh)
17:45
An alternative approach to the use-after-free problem. (Closed-Leaf check-in: 6796b7a2 user: drh tags: alternative-oom-fix)
2021-06-11
13:24 Edit [8b1f9a51e962cd9a|8b1f9a51]: Edit check-in comment. (artifact: 129c3521 user: drh)
13:19 Edit [5079b5d58fdceba3|5079b5d5]: Mark "Closed". (artifact: ff774ea4 user: drh)
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)
2021-06-10
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 Edit [56ff58c0b8905aa1|56ff58c0]: Edit check-in comment. (artifact: f24a22f0 user: drh)
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)
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)
2021-06-07
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)
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
19:00 Edit [4a587c3492faa994|4a587c34]: Edit check-in comment. (artifact: 016b41f6 user: drh)
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
15:49 Edit [587a3044468a4070|587a3044]: Edit check-in comment. (artifact: 6b41e045 user: drh)
Previous month ↓