]>
git.ipfire.org Git - thirdparty/sqlite.git/log
larrybr [Sat, 5 Feb 2022 23:45:07 +0000 (23:45 +0000)]
CLI cleanup, mode push/pop, parameter list beautification
FossilOrigin-Name:
53d4582a0e9dab594264a5125324e1fab476e5fd806ebc61bd5fc6ffff10e34b
larrybr [Sat, 5 Feb 2022 15:26:39 +0000 (15:26 +0000)]
Fix CLI Windows build, refine its help, re-org ShellState
FossilOrigin-Name:
991a06a4801270fddea7375d141863dc29fa87b737c728af60c81eea8445a0ea
larrybr [Fri, 4 Feb 2022 21:49:47 +0000 (21:49 +0000)]
CLI .param save/load done; many other small refinements
FossilOrigin-Name:
6d415ac2c10da26e97164cb0846683a57e6a7f3717519c5fe889e077321a2cbd
larrybr [Fri, 4 Feb 2022 09:39:30 +0000 (09:39 +0000)]
Fix .param edit unable to edit script vars (bad assert)
FossilOrigin-Name:
62d212d0da93102dd3b7dc4368a0c8acf2469a7f8ef8fcf60e57e69fe028600e
larrybr [Thu, 3 Feb 2022 21:07:01 +0000 (21:07 +0000)]
larrybr [Thu, 3 Feb 2022 20:57:47 +0000 (20:57 +0000)]
Scripting and .parameter enhancements most in; all in working
FossilOrigin-Name:
a1581118b07b111edbad8dc930a959ec0b98461b2737619d9976ef4a498b6571
drh [Thu, 3 Feb 2022 18:14:22 +0000 (18:14 +0000)]
drh [Thu, 3 Feb 2022 14:37:06 +0000 (14:37 +0000)]
Do not allow the vdbe-compress.tcl script to generate structures named
"do" or "if".
FossilOrigin-Name:
e35ab16dd0fd40b07a71d26e1cdb19ef664a2a628a4abcb2e130f5e555de8ca9
drh [Thu, 3 Feb 2022 14:19:26 +0000 (14:19 +0000)]
Prohibit schema changes within xBestIndex callbacks.
FossilOrigin-Name:
bb0f056b3f2ecc3893e5e48e99c060788550ea6a8ed02b715953af051bafbad0
drh [Wed, 2 Feb 2022 21:06:40 +0000 (21:06 +0000)]
Improvement to the sqlite3_vtab_in_first() documentation.
FossilOrigin-Name:
403e7ac900e53407282393747b784dc0cd4303958394534e3936fce138bc1bc5
drh [Wed, 2 Feb 2022 19:51:44 +0000 (19:51 +0000)]
Add the sqlite3_vtab_in() interface that allows virtual tables to process
IN constraints all at once, rather than one value at a time.
FossilOrigin-Name:
52559af093809b572082b5ebaacf97b727ee1860ae118530761b62e937545163
drh [Wed, 2 Feb 2022 19:30:24 +0000 (19:30 +0000)]
drh [Wed, 2 Feb 2022 19:15:53 +0000 (19:15 +0000)]
Test cases for sqlite3_vtab_in() and sqlite3_vtab_distinct().
FossilOrigin-Name:
21afb81d0a73af39aacd9329b1441faa2b535a52a52036daec89fd303a8b344f
drh [Wed, 2 Feb 2022 18:47:56 +0000 (18:47 +0000)]
Improved documentation for sqlite3_vtab_in(). No code changes.
FossilOrigin-Name:
c99df4ab5db2c32b044366c5b0ac70fd8887d1456d53323e75fede23cc61c236
drh [Wed, 2 Feb 2022 16:24:01 +0000 (16:24 +0000)]
Relax the restriction that the RHS of the IN operator must be a list in order
for sqlite3_vtab_in() to work. Change an unreachable branch into an assert().
FossilOrigin-Name:
3bf2153440dce0e8c0572c4fd39e6b9f34ead75ccab2cea80a646d4ff9d19146
drh [Wed, 2 Feb 2022 15:10:45 +0000 (15:10 +0000)]
Be sure that sqlite3_vtab_in_first() and _next() set the correct encoding.
FossilOrigin-Name:
04edf36ee8e043c83235a5169a7ced23f211edd2f7ef3290d96413d5fd229ad7
drh [Wed, 2 Feb 2022 14:36:58 +0000 (14:36 +0000)]
Refactor sqlite3_vtab_in() to make use of the existing
sqlite3_value_pointer() mechanism for passing the list of IN operator
RHS values into xFilter, for improved memory safety.
FossilOrigin-Name:
8965929be236fe1a6994f31b94c1b7590c7c1e809470c542a76f3e0e275d032f
drh [Wed, 2 Feb 2022 11:37:49 +0000 (11:37 +0000)]
drh [Tue, 1 Feb 2022 21:59:43 +0000 (21:59 +0000)]
drh [Tue, 1 Feb 2022 16:30:57 +0000 (16:30 +0000)]
Index in 2nd argument to sqlite3_vtab_in() should be on the aConstraint[]
array, not the internal array of all constraints.
FossilOrigin-Name:
5acf90a931b27b7d627c0a8fee68170430e09b028d6643b959b0ec14fd59f7ac
larrybr [Tue, 1 Feb 2022 15:08:10 +0000 (15:08 +0000)]
drh [Tue, 1 Feb 2022 14:58:29 +0000 (14:58 +0000)]
Add new interfaces to enable virtual table to process IN operator constraints
all at once, rather than one element at a time.
FossilOrigin-Name:
eb84b80e1f6d8c32bf0c9e1731f0233de0160a13f714f766779ae01fdf504e7b
drh [Tue, 1 Feb 2022 13:17:11 +0000 (13:17 +0000)]
CLI: Take extra care to not split a multi-byte unicode character when doing
wordwrap.
FossilOrigin-Name:
00b1b7020a564976da3237532434e47ccf17eb5d620e6ac45f3e70b5d5739200
drh [Tue, 1 Feb 2022 12:28:17 +0000 (12:28 +0000)]
CLI: Add the --ww option as an alias for --wordwrap. Improve the wordwrap
algorithm so that it breaks at punctuation if it cannot find space. Always
wordwrap with --ww even if there is a .width setting for the column.
FossilOrigin-Name:
1b528e31f8c62797e0814568b520c0680ff23a2ee877ca6aa70a167d40ebdf80
larrybr [Tue, 1 Feb 2022 02:50:45 +0000 (02:50 +0000)]
Add "--wordwrap on/off" option for CLI columnar modes, qwbox shortcut
FossilOrigin-Name:
10dbc278708cd2cce7fef90738082dbe31750d93e44b5fa5413a9a32dae7703a
drh [Tue, 1 Feb 2022 00:00:08 +0000 (00:00 +0000)]
CLI: In ".mode column" output, if any row contains a newline or wraps, then
put a single blank line in between each pair of rows to provide additional
visual separately.
FossilOrigin-Name:
fd42f4c304079356358e606dd96d4b84cf211c4334c586118b99fe9ad20e20ea
drh [Mon, 31 Jan 2022 22:14:53 +0000 (22:14 +0000)]
CLI: for columnar output modes, make sure the header is not too big.
Also, improve the help text.
FossilOrigin-Name:
070fae3a09cea675e722340870cb2bee9e1ac96954d3baacfdb7f5400ddb1b20
drh [Mon, 31 Jan 2022 20:39:27 +0000 (20:39 +0000)]
CLI: Fix a problem with tabs in the new qbox mode.
FossilOrigin-Name:
ca96ab3ef78479d95e831cacdb80f23c119cbaa77b3821eac7a3f110bfe20cc9
larrybr [Mon, 31 Jan 2022 19:52:30 +0000 (19:52 +0000)]
larrybr [Mon, 31 Jan 2022 19:23:32 +0000 (19:23 +0000)]
Cleanup dot-command handling, make multi-line work, honor exit requests from more contexts
FossilOrigin-Name:
5cf66e89071b619d116a4707b6ff1cd7917edffe5ab504514f37da433a77b61d
drh [Mon, 31 Jan 2022 16:29:06 +0000 (16:29 +0000)]
drh [Mon, 31 Jan 2022 15:59:43 +0000 (15:59 +0000)]
Do not attempt to limit the number of columns used in a table to a prefix
if the table will be used to construct an automatic index or bloom filter.
dbsqlfuzz
787d9bd73164c6f0c85469e2e48b2aff19af6938 .
FossilOrigin-Name:
f8766231d2a77bb8b95726b514736d4c2d20b056f7fe60bdbc98ebf5e5b15ae9
drh [Mon, 31 Jan 2022 14:14:29 +0000 (14:14 +0000)]
CLI: Enhancements to columnar output modes. (See
[forum/forumpost/
5b53cd851f66441f9 |forum post
5b53cd851 ] for discussion.)
New output mode "qbox". New output options "--quote" and "--wrap N".
FossilOrigin-Name:
539cef5214446a7181614793e9cf323e95ba00ba0f888585b14b598dd2ff0808
drh [Mon, 31 Jan 2022 12:29:14 +0000 (12:29 +0000)]
Fix an obscure problem in sqlite3_backup_init() caused by
[
6a45d8fe8bfbc11a |check-in
6a45d8fe8bfbc11a ]. See
[forum:/forumpost/
8b39fbf3e7b5c278 |forum post
8b39fbf3e7 ] for
the original bug report.
FossilOrigin-Name:
639fc7633bd740421d6b48617b9f68e6be525107e4049673fe720ea6158a393f
drh [Mon, 31 Jan 2022 10:55:50 +0000 (10:55 +0000)]
CLI: Fix the new ".mode box" output so that it works with unicode characters.
FossilOrigin-Name:
454af48724c78bf8e06379a426e01b1597f56fcc83211ee062ff0dbeb6a140b1
drh [Sun, 30 Jan 2022 21:09:03 +0000 (21:09 +0000)]
CLI: For columnar modes ("box", "column", "table", "markdown") the ".width"
is now both the minimum and maximum width of the column. Text that spans
multiple lines or that contains tabs is properly formatted. If any part of
the output contains multi-line text, then extra separators are provided between
each row.
FossilOrigin-Name:
c10ed4a7fe33fd9330967ab714b1f09ad57c972997160dfc71477e43b905f69c
drh [Sun, 30 Jan 2022 11:44:17 +0000 (11:44 +0000)]
Always enable all JSON tests, now that JSON is included by default.
FossilOrigin-Name:
8c9f350182140604a71e11d226acb3f80d1f2b4f75e5c3b55ec8f8a7c02941f3
drh [Sun, 30 Jan 2022 11:42:56 +0000 (11:42 +0000)]
larrybr [Sun, 30 Jan 2022 01:35:58 +0000 (01:35 +0000)]
larrybr [Sun, 30 Jan 2022 01:21:12 +0000 (01:21 +0000)]
Enhance shell parser for multi-line dot-commands
FossilOrigin-Name:
5ed528e27b84466f165c0af52028242d95cc54dc53d6bb4d7afcbb081e6e11de
drh [Sat, 29 Jan 2022 21:41:15 +0000 (21:41 +0000)]
Documentation enhancements. No code changes.
FossilOrigin-Name:
312642d982f7861fd4db416e5eb24d863535b3ade40539a32f2dfe3f6fc45d46
drh [Fri, 28 Jan 2022 23:44:27 +0000 (23:44 +0000)]
Add the SQLITE_INDEX_CONSTRAINT_LIMIT and SQLITE_INDEX_CONSTRAINT_OFFSET
constraints to the sqlite3_index_info for the xBestIndex method of virtual
tables.
FossilOrigin-Name:
1e227ad9f413227f767b45b91e5439b82c98a3368fb20643414dab5c0f4818c6
drh [Fri, 28 Jan 2022 23:19:01 +0000 (23:19 +0000)]
drh [Fri, 28 Jan 2022 21:39:29 +0000 (21:39 +0000)]
When nesting Parse objects, make sure the new one has nErr set if there
has been an OOM error.
FossilOrigin-Name:
ae088cbc968a565c3e0a8dd74ce150cac4a87978b593a3204f475fa196f1603c
drh [Fri, 28 Jan 2022 19:53:37 +0000 (19:53 +0000)]
Include hidden columns of table valued functions that are constrained
by the function arguments in the colUsed bitmask.
FossilOrigin-Name:
8f8cab0d0e219f0c4bc2b8061c0013d90a2a5e598dd6cf420d302dfd1b7cbe11
drh [Fri, 28 Jan 2022 18:43:33 +0000 (18:43 +0000)]
Remove a NEVER() that has become reachable now that we have the
sqlite3_vtab_rhs_value() interface.
FossilOrigin-Name:
c4c30df7cd858315359bd9bfa90a07152d87a2301eaec865c5bc1c65e272eec8
drh [Fri, 28 Jan 2022 13:18:40 +0000 (13:18 +0000)]
Enable SQLITE_INDEX_CONSTRAINT_LIMIT/OFFSET even if there are vector
comparison operators in the WHERE clause. Also: Do not enable
sqlite3_vtab_rhs_value() for LIMIT/OFFSET if the value is negative, as this
violates an invariant on Expr.u.iValue.
FossilOrigin-Name:
140480b3ec5466513b165d4818f1180cff6e4a5edcd47efb54cbff74a7107507
drh [Thu, 27 Jan 2022 21:18:14 +0000 (21:18 +0000)]
Query planner always honors the aConstraintUsage[].omit flag for the
SQLITE_INDEX_CONSTRAINT_OFFSET constraint.
FossilOrigin-Name:
38c5151eb8cc789ad082a1b40d16b2ddb55454219bd685b6e420995af6a15f55
drh [Thu, 27 Jan 2022 18:45:26 +0000 (18:45 +0000)]
Make LIMIT and OFFSET values available to sqlite3_vtab_rhs_value().
FossilOrigin-Name:
b2d37c086c87fe4aee013bba4eab26f642207cd2a797fe4888a6ef868884c191
drh [Thu, 27 Jan 2022 16:14:50 +0000 (16:14 +0000)]
Give the virtual table xBestIndex method access to (some) OFFSET and LIMIT
clauses.
FossilOrigin-Name:
74fa5757ee0a8499bcd6546dac1a3ecc6048ba9cff9e3e574e28e6e82e894a3d
drh [Thu, 27 Jan 2022 13:52:01 +0000 (13:52 +0000)]
Enforce the restriction that 'unixepoch' only works as the first modifier
after the time-value. This has been documented since 2004, but has never
actually been enforced before. Also add new test cases for date/time
functions with evidence marks.
FossilOrigin-Name:
64fa9e8c87179211cec248e6dfd7578502e6e969a19e91a4f0e21ed9b972a6bc
drh [Tue, 25 Jan 2022 00:03:25 +0000 (00:03 +0000)]
Minor adjustment to error handling in sqlite3FinishCoding().
FossilOrigin-Name:
a8db69411b0d1275909adeb21027784ada17af24efe3a59ae0ae2a897659ff17
drh [Mon, 24 Jan 2022 21:47:00 +0000 (21:47 +0000)]
Remove an unnecessary assert() that is sometimes not true following an OOM.
FossilOrigin-Name:
e9361d72f362b390a31f667363b01cf9d4b78aa19ed5c97f21afe9da764b89c0
drh [Mon, 24 Jan 2022 20:20:35 +0000 (20:20 +0000)]
New dbsqlfuzz cases added to test/fuzzdata8.db.
FossilOrigin-Name:
d1fbf63330830c4b9549d0e67f6cdc19fe7a9dc3fcf509795fd1175499fddc82
drh [Mon, 24 Jan 2022 20:16:37 +0000 (20:16 +0000)]
One of the ALWAYS() macros in the previous check-in could sometimes be
false, following an OOM. Remove it. Problem found by dbsqlfuzz.
FossilOrigin-Name:
11df9187dad0eb33b0f6288b76d74f9700420ec855e8106b0bc71df48c485ad1
drh [Mon, 24 Jan 2022 19:38:56 +0000 (19:38 +0000)]
Add ALWAYS() macros. Change some existing ALWAYS() into assert(). Other
code simplifications.
FossilOrigin-Name:
4aa27b4fcd1ffd06c38357a87ba3f5776367570439c49652f0903873def0bb23
drh [Mon, 24 Jan 2022 16:47:12 +0000 (16:47 +0000)]
Remove many redundant checks for sqlite3.mallocFailed now that any OOM should
cause Parse.nErr to be non-zero.
FossilOrigin-Name:
1f7fa46126ea33ed30e93186aff3df51068aeb4be6f79a102bfe8c4e44941d71
drh [Mon, 24 Jan 2022 15:34:55 +0000 (15:34 +0000)]
Make it so that any Parse object is always linked into the database conenction
while it is active. Hence, an OOM will cause Parse.nErr to be set.
FossilOrigin-Name:
6a45d8fe8bfbc11a5b86d25237e1f8bccfb0f22f3dcaf004ba797aeb57b365ec
larrybr [Mon, 24 Jan 2022 14:01:31 +0000 (14:01 +0000)]
drh [Mon, 24 Jan 2022 12:48:54 +0000 (12:48 +0000)]
Make sure the sqlite3OomFault() routine sets an error in the Parse object
if there is a Parse object active and linked to the database connection.
FossilOrigin-Name:
ad7aace761c6b21ba453eaf43c68d985be7cbd5a200fe0d2e27a0c7150f99874
dan [Mon, 24 Jan 2022 11:25:42 +0000 (11:25 +0000)]
Ensure that any error encountered while coding a trigger program is transfered to the main Parse structure before it is used with any other routine that might set the error code.
FossilOrigin-Name:
4293656578811b500786335de7cc9ac0d6ccc6fb273b9419a86968a095404c43
larrybr [Mon, 24 Jan 2022 07:11:25 +0000 (07:11 +0000)]
Take CLI input redirect recursion limit from trunk
FossilOrigin-Name:
5e7020441514d1febdd6d97d6c5be4429f65310e9bcde2eb50c071aa9459a333
larrybr [Mon, 24 Jan 2022 06:36:16 +0000 (06:36 +0000)]
larrybr [Mon, 24 Jan 2022 04:21:20 +0000 (04:21 +0000)]
Add CLI .x command, make string redirection work
FossilOrigin-Name:
2f2f1aaed691ba31ba70577012f785aae1f4a53ac7582bf30d26fbbec1eb3f3c
larrybr [Mon, 24 Jan 2022 00:22:06 +0000 (00:22 +0000)]
larrybr [Sun, 23 Jan 2022 20:54:25 +0000 (20:54 +0000)]
Factor out DB protection lift and restore in CLI
FossilOrigin-Name:
4462ed896459ee0312f1989d9a813c65150347ebdd15b59b2aa86bbce3abec1c
larrybr [Sun, 23 Jan 2022 04:19:52 +0000 (04:19 +0000)]
Shell refinements, seeargs, booleans, undocumented commands
FossilOrigin-Name:
8735caf13fc7e30da2fc5dc90921acbb3109f965c63dbf69fa70ef19c02308c0
larrybr [Sun, 23 Jan 2022 02:53:25 +0000 (02:53 +0000)]
drh [Sat, 22 Jan 2022 22:28:32 +0000 (22:28 +0000)]
Add support for the sqlite3_vtab_distinct() interface. Virtual table
implementations can use this API to determine more detail about the ordering
requirements needed by the query plan and perhaps reduce the amount of
work required to compute a correct answer. This is an optimization
opportunity for the virtual table implementation. The correct answer should
still be obtained (though perhaps more slowly) even if sqlite3_vtab_distinct()
is ignored.
FossilOrigin-Name:
e4caf1e3932b1bd0dea072df7fc9458aed98c84ea397b6948b89292603949c41
drh [Sat, 22 Jan 2022 20:45:57 +0000 (20:45 +0000)]
Bring sqlite3_vtab_distinct() up to spec so that it works as described in the
documentation.
FossilOrigin-Name:
4289edf3c5e32a05b51f232020099b33f6f5e79b0ceca2b96baf1186168d9af6
drh [Sat, 22 Jan 2022 19:19:35 +0000 (19:19 +0000)]
Iimproved documentation for sqlite3_vtab_distinct(). No changes to code.
FossilOrigin-Name:
7af03f02940b5380ee7375672ca8d0ff68c5f741d0ea206911631f3eb5a78555
drh [Sat, 22 Jan 2022 02:52:22 +0000 (02:52 +0000)]
Omit the WhereLoopBuilder.pOrderBy field, which is no longer needed.
FossilOrigin-Name:
a13afc909c8bb643aa154b39ba8c023bae7352d3cd7cfb96be3891fa0e4bc045
drh [Sat, 22 Jan 2022 00:18:01 +0000 (00:18 +0000)]
An initial attempt to implement sqlite3_vtab_distinct().
FossilOrigin-Name:
d571262d2345bb11e71bef395cf078e5d7303b974b38b4e319adda6194ccc1c5
drh [Fri, 21 Jan 2022 19:26:18 +0000 (19:26 +0000)]
Update evidence marks for the latest changes to the documentation.
FossilOrigin-Name:
19247e919fab9748cae561cb12c4c3c106064390a37e32e724d9a9066cfaff8e
drh [Fri, 21 Jan 2022 18:57:30 +0000 (18:57 +0000)]
Fix some of the new date/time function features to comply with the spec.
Update requirement marks.
FossilOrigin-Name:
2f5dc7a9eed89baf6814e9e123354b262c806c853dee1243c93286c564b9aba8
drh [Fri, 21 Jan 2022 16:41:11 +0000 (16:41 +0000)]
When computing a vector to be used as a key for an index lookup, do not
check for NULL values and abort until after all key values have been
computed, in case one of the later key values involves some initialization
that is needed by a LEFT JOIN. Fix for the problem identified by
[forum:/forumpost/
ab95010d410a0a55 |Forum post
ab95010d410a0a55 ].
FossilOrigin-Name:
4db5217a28ce767fa14ddfe51cf3ca25eceb72079d46a2fc00f7d6b8ae9abe0b
drh [Fri, 21 Jan 2022 01:00:53 +0000 (01:00 +0000)]
Add the sqlite3_vtab_rhs_value() interface, allowing the xBestIndex method
of a virtual table to access known values on the right-hand side of
constraint expressions.
FossilOrigin-Name:
e19a0b132a641f0e9f3d72586af538b95b4db8665b1555f84bc0a291bf1a4056
drh [Fri, 21 Jan 2022 00:38:49 +0000 (00:38 +0000)]
drh [Thu, 20 Jan 2022 19:00:48 +0000 (19:00 +0000)]
Test cases for sqlite3_vtab_rhs_value() based on the qpvtab extension.
FossilOrigin-Name:
577d3d66558368c34acab8a9e552957cf3fa054c348f1383a9121de6e8b281b7
drh [Thu, 20 Jan 2022 18:27:54 +0000 (18:27 +0000)]
Enhancements to the qpvtab virtual table to make it more useful for testing
and verification of virtual table interfaces.
FossilOrigin-Name:
850efc4cf3d136fba9173c380e9417b43bb93c050f7eeb85d07fd39a4b1cc6aa
drh [Thu, 20 Jan 2022 17:10:59 +0000 (17:10 +0000)]
Initial implementation of the sqlite3_vtab_rhs_value() interface and the
qpvtab extension used for testing the virtual table interface.
FossilOrigin-Name:
0873c76b9b96b66fa9d13ddc8bca126d575ea3352349c7fd648f0c2f75d770f5
drh [Thu, 20 Jan 2022 14:40:34 +0000 (14:40 +0000)]
A better and more robust fix for the problem of reading a read-only WAL
mode database with existing -wal and -shm files, replacing [
f426874e005e3c23 ].
FossilOrigin-Name:
71bfd0b57ab197405606b8096b8521d784ff174c4eecf1d9804d38342c03cc80
drh [Thu, 20 Jan 2022 12:58:15 +0000 (12:58 +0000)]
larrybr [Thu, 20 Jan 2022 05:20:27 +0000 (05:20 +0000)]
A WIP checkin, progress toward what .help promises
FossilOrigin-Name:
4688e6dff88527dbff436b811512206d31a9695095776c4e1fdff95da0b0c4d4
drh [Thu, 20 Jan 2022 02:04:53 +0000 (02:04 +0000)]
Fix the ability to read read-only WAL-mode database when -shm is present,
([
00ec95fcd02bb415 |check-in
00ec95fcd02bb415 ]) so that it works
for the case of 64K page size.
FossilOrigin-Name:
f426874e005e3c23e8a00083b7c201408e072bca413e52bfc436da6483afb0cd
larrybr [Wed, 19 Jan 2022 21:11:23 +0000 (21:11 +0000)]
Initial help changes for .script (and enhanced .parameter)
FossilOrigin-Name:
a94ab403eb836d3fcb9710d22da5129f58db05d3be145bc77ce1c017761e7894
drh [Wed, 19 Jan 2022 18:31:43 +0000 (18:31 +0000)]
Fix a test result for alterauth2.test due to the recent fix to authorizer
calls for ALTER TABLE DROP COLUMN.
FossilOrigin-Name:
e799a35f2bf85ce43b476738bfbd9b6b378bbf02fa0708dda0deba71dd37f608
drh [Tue, 18 Jan 2022 16:16:32 +0000 (16:16 +0000)]
Fix ALTER TABLE DROP COLUMN so that it invokes the authorizer. Fix for
[forum:/forumpost/
fd82b85947541dec |forum post
fd82b85947541dec ].
FossilOrigin-Name:
aca6c61d79215519fb006af19d9011029df68f195a4ce65aff7a1bf4e36efb94
drh [Mon, 17 Jan 2022 23:37:25 +0000 (23:37 +0000)]
Allow an "IntReal" value to count as a REAL when checking types for
insertion into a generated column on a STRICT table.
[forum:/forumpost/
fa012c77796d9399 |Forum post
fa012c77796d9399 ].
FossilOrigin-Name:
1ec44d55da2ced1a1b0b78b489caff628652464f5709ee827e35409eb20ea794
drh [Mon, 17 Jan 2022 15:23:57 +0000 (15:23 +0000)]
Fix incorrect testcase() and assert() macros in json.c. They were not causing
problems. The assert() was simply unreachable. The testcase() added an
unreachable condition.
FossilOrigin-Name:
5623497adc8af9950fd79392000a68ba6fdca43594603eadaa7e19c8fb845a7d
drh [Mon, 17 Jan 2022 14:42:38 +0000 (14:42 +0000)]
Never allow the b-tree layers view of the number of pages in the database
file exceed the actual number of pages in the database file, even when
PRAGMA writeable_schema=ON. This helps with earlier detection of corruption,
and prevents excess memory usage and CPU cycles in some integrity_check ops.
FossilOrigin-Name:
0407c8793700491b8519a649b9624f569b0e7e9b94d0db79d4a08139e0ecdb69
drh [Sun, 16 Jan 2022 19:11:13 +0000 (19:11 +0000)]
Fix test cases so that they all still work even with -DSQLITE_DQS=0.
FossilOrigin-Name:
4883776669ee2f2310ea82b0d6df4d008eebaa7cb252102539cf21a635402ebb
drh [Sun, 16 Jan 2022 15:15:39 +0000 (15:15 +0000)]
Fix ALTER TABLE so that it works even when compiled using -DSQLITE_DQS=0.
[forum:/forumpost/
3c1a00b66fca81fe |Forum post
3c1a00b66fca81fe ].
FossilOrigin-Name:
092ad64faa4ae93b1e09ccd52159621d619e6817bcb4573331e9053d97f731fd
drh [Fri, 14 Jan 2022 23:28:11 +0000 (23:28 +0000)]
Remove code from lemon.c that was made superfluous by
[
1b22b42e59793af1 |check-in
1b22b42e59793af1 ] in late 2017.
FossilOrigin-Name:
6d2f95a474a0c196f36317d88557bfb449ce125c1d012fc1844378c450697a05
drh [Fri, 14 Jan 2022 21:34:49 +0000 (21:34 +0000)]
Fix a NEVER() in the byte-code engine that can sometimes be true.
Test case in TH3.
FossilOrigin-Name:
7ac91b5339f820f49b0eb52055d42b6a55905444883426caf792fada63079516
larrybr [Fri, 14 Jan 2022 16:29:45 +0000 (16:29 +0000)]
For .import schema, quote it as for other identifiers.
FossilOrigin-Name:
bff9153ceedcc7be77f2daf5139fee29c2fab742ff1fce49877965423a7d4be3
larrybr [Thu, 13 Jan 2022 21:22:54 +0000 (21:22 +0000)]
drh [Wed, 12 Jan 2022 20:31:14 +0000 (20:31 +0000)]
When the result of a subquery is to be stored in a register and that
subquery has an ORDER BY clause and an OFFSET, NULL out the destination
register before starting the ORDER BY so that the register will be set
correctly even if the OFFSET is larger than the number of output rows.
Fix for the problem reported in
[forum:/forumpost/
0ec80f12d02acb3f |forum post
0ec80f12d02acb3f ].
FossilOrigin-Name:
9282bcde301cee2a5c3c068b5b0b7ce992c155ece894413a6a9a51a81e4133fd
larrybr [Wed, 12 Jan 2022 01:42:50 +0000 (01:42 +0000)]
Make tool/mctimec.tcl effect more regular and obvious
FossilOrigin-Name:
02aaa10f34ab17e76feb7b6f79048309536c0794fcb534b934e06f3daedfeaba
drh [Wed, 12 Jan 2022 00:52:34 +0000 (00:52 +0000)]
Fix mkctimec.tcl with the updated compile-time options for JSON.
FossilOrigin-Name:
8ded3f5b0025eb6cc11669c1208681e592862ce352dfff11173dff68daafad30