Commit Graph

8130 Commits

Author SHA1 Message Date
dan
678f3b33cc Fix DROP COLUMN so that it works even if the user has registered an authorizer callback.
FossilOrigin-Name: e5f144182bbb3ba10c77151cf63c8bddf86374049fb6866387f85e335df298cb
2021-02-18 20:27:46 +00:00
dan
16953469a6 Fix a problem with schema error detection when processing ALTER TABLE DROP COLUMN commands.
FossilOrigin-Name: 565a6fd0c95b438fea7bf84913b38de1718117e16e0d685534a8650e1dc8421b
2021-02-18 19:25:44 +00:00
dan
30cdb992dd Add test cases for ALTER TABLE DROP COLUMN.
FossilOrigin-Name: 204ee5e28210738fb624a9cf85dc6f9b59de0d7eb4fddd46c8babe9beddd4944
2021-02-18 17:48:36 +00:00
dan
c2a878ed0a Fix a problem with OOM error handling in the new code on this branch.
FossilOrigin-Name: ea999c9db59e4193b306a2e1b15fc94f8f04cb05e852bb0d068b7d5243a0849b
2021-02-17 20:46:44 +00:00
dan
6a5a13df97 Fix various issues with the changes on this branch. Add test cases for the same.
FossilOrigin-Name: 10538ec6fc1642dfc2ca6cef06ce6cb9e124847b421ccf01f5842064fad379ab
2021-02-17 20:08:22 +00:00
dan
6e6d9833cc Add experimental implementation of ALTER TABLE DROP COLUMN. Only some cases work so far.
FossilOrigin-Name: f0217937d7306fb595727e61e871e8b03d8c881d339a0865bfd0117d90d42e4e
2021-02-16 20:43:36 +00:00
drh
33941691a5 Fix an issue with the LIKE operator when it includes the "ESCAPE '_'" clause.
Ticket [c0aeea67d58ae0fd].

FossilOrigin-Name: 27d4117980d125975b5e70eeea58a6ab07bcf066e71b5fcb81b822e05afdbab0
2021-02-15 17:02:01 +00:00
dan
f2b32e8915 Add tests for sqlite3_column_count().
FossilOrigin-Name: 7cc65ae57183b3c16f1102fca5603a36acda432e5d45e22a2996e5ebe069fc6a
2021-02-15 14:32:05 +00:00
dan
863fd4905c Fix an error in the test case fix in [ecd71203].
FossilOrigin-Name: 5411bfa41ea9a492ca1f567327d8e0a1b3db047292fec1753bfef8a157cf8c1d
2021-02-15 11:14:53 +00:00
drh
329eaaf0b3 Fix incorrect test name labels in the select1.test script.
FossilOrigin-Name: 179c79ea0deb0f5adaa8d369cfcad06d959a9cc18a8a41e01ef013b2d90acd61
2021-02-13 18:14:15 +00:00
drh
8794c68a35 Avoid manifesting a CTE (or other view) multiple times when it is possible to
reuse the first manifestation.

FossilOrigin-Name: 9692f510803c9b9725abb687d7c10fbc0d5ed784479ec6f3fcc55925a87fe16d
2021-02-13 16:39:24 +00:00
dan
e8f1490f55 Fix a problem in the unreleased union-all flattening code.
FossilOrigin-Name: e4f8a79fd8b3be9bf8add5f5e1c66bc2fe78da4e50ea500ab0b8370d30e31ba5
2021-02-13 14:26:25 +00:00
dan
8b7e93adbc Fix a test case to account for the fact that different versions of OpenBSD behave differently when a program tries to read() from a file-descriptor open on a directory.
FossilOrigin-Name: ecd712032f56a20d7df2bcf89b0d3b8d91dc72c552e27f0a4b23980bd49747b0
2021-02-12 21:22:01 +00:00
dan
23ed8109b6 Ensure RBU tests are run as part of release testing.
FossilOrigin-Name: a18dc08bafefd849e640086b18c41e06361d2e09d7dd2e9af4a394dc543e598b
2021-02-12 11:37:13 +00:00
mistachkin
8c333cfc0d Corrections to the 'filepath_normalize' test suite helper procedure.
FossilOrigin-Name: 32f4d04470bf953b08eea285543f16e03de13d5448c1ebccbba1578ca3b5363e
2021-02-03 19:38:40 +00:00
drh
cd39cda00c Add support for the RETURNING clause following PostgreSQL syntax.
FossilOrigin-Name: 416c898bfb8ff9639ffbaefcfb47fce3782763af1fc67969fa91c5f01a336676
2021-02-03 13:08:09 +00:00
drh
78197e0f8b Fix an assert() that might be off-by-one in the case of a prior
errors in the parse.

FossilOrigin-Name: 06b15b17be38c804dd2641d8616a2a7bd396d2eb9901a0fbf94edd8bd508cf9c
2021-02-03 12:35:51 +00:00
drh
47600083f1 Load enhancements from trunk into the returning branch.
FossilOrigin-Name: b84c7f60c2e1e7debf9f50622087f87d60c6870061d61e14e59cc1ba0775ee92
2021-02-03 00:05:57 +00:00
drh
d33d3a2ba7 Add a few test cases for RETURNING together with UPDATE/DELETE LIMIT.
FossilOrigin-Name: 7611c77d6baa84086ff18cbd045127fd682c6d5c434af5404e34fbe631fedfe1
2021-02-01 21:26:09 +00:00
drh
9e673ace5b Improved corrupt database detection in balance_nonroot().
FossilOrigin-Name: 5d54d9fd406381383afdf10612bfd590afc4142215d9bca09e227e3aa5baa102
2021-02-01 12:39:50 +00:00
drh
ba71a8a01b Test cases added. RETURNING works with UPSERT as does PG.
FossilOrigin-Name: f5698f96e27c9b8669ec6016bb9920ef7580c4146eb61d628a0f62be5135ce94
2021-01-30 01:30:26 +00:00
drh
02d6f9b295 Fix possible division-by-zero in the new log() SQL functions.
Problemm discovered by OSSFuzz.

FossilOrigin-Name: 1ffd321a33b778e87614a26a91a8407ec7b9dec4f0f847b16b1dac4f3b910604
2021-01-29 16:20:16 +00:00
dan
df1b52e727 Ensure a cursor used by the SeekScan operator does not point to a valid row on the first iteration of the loop. Possible fix for [2d6e8400].
FossilOrigin-Name: 390cf60a286b13f454429f4652a133f95a7891a75c1ec6d16cd39990590fd3fb
2021-01-27 17:15:06 +00:00
dan
f380c3f13c Fix a problem caused by using an SQL variable in an OVER clause within a trigger program.
FossilOrigin-Name: 4f676466e60ee2a420b7b2deace76f3a733ce1af278347428285715d9c67f022
2021-01-21 15:40:52 +00:00
mistachkin
f3ebea8114 Update test helper procedure 'get_pwd' to handle the ComSpec environment variable being absent.
FossilOrigin-Name: fe1979552f43e0526f16481457e01981f29707401f77079f9854a8d91b35b5a4
2021-01-18 19:27:56 +00:00
drh
9ffa258a01 Improved handling of vector equalities in the EXISTS-to-IN translator.
FossilOrigin-Name: ef49ee4a3766146963bfb6b013472f9836afb9c5b0d21a8533871cf961139e38
2021-01-16 20:22:11 +00:00
drh
4be8bdccd4 Give the EXISTS-to-IN optimization the ability to handle some cases that
involve vector comparisons, instead of throwing a mysterious error in those
cases.

FossilOrigin-Name: 87e78a19bb3ae1caf57aeeae53a5ab4efdccb57265f25d5c19b62eae53747aff
2021-01-16 18:55:10 +00:00
dan
f7588d4072 Add OOM injection tests for new code on this branch.
FossilOrigin-Name: 9a181dbaedcc2117e670e679ca94ed6d1fabd90c835671dee36424dd0646c4e5
2021-01-15 17:51:56 +00:00
dan
e8f7fcf6f4 Ensure the EXISTS->IN transformation preserves the collation sequence of the comparison operation.
FossilOrigin-Name: a373baae12c914e48fd84de77998e301fdd3da43b06b9d64ac24a14418ed48cd
2021-01-15 15:32:09 +00:00
dan
76cac6ef06 Add simple tests (and a fix) for the change on this branch.
FossilOrigin-Name: 897f3f40267dc922f0fda287484435e1fd8709bade3e87c3829e2f945bb5e4aa
2021-01-15 11:39:46 +00:00
drh
a6e6cf2c8f New CLI command: ".stats vmstep" enables the display of the virtual-machine
step count only, after each command.  Useful for optimization problems.

FossilOrigin-Name: 49dfce469e6a17111b349e53578479daf783064200bf0eec5bf8a91d3553b19f
2021-01-09 19:10:04 +00:00
dan
5cb960b7af Fix problems with some "crashsql" tests.
FossilOrigin-Name: 0c8e2ede5c325aa7fef8e8587057ec8c865fc7cf3e974a2733066fbac640b983
2021-01-07 16:29:34 +00:00
dan
31afee9372 Add extra test for handling of embedded nul characters in the fts4 unicode61 tokenizer.
FossilOrigin-Name: c2c2c7e945f5d5700d91b8e779117e70e388ffc613912a434885ae27f5fe4e22
2021-01-04 18:28:29 +00:00
drh
33e1ec224e Add the "startup" test program designed to measure startup performance,
and in particular schema parsing time.

FossilOrigin-Name: 7b3b31efb0047c5a461f487905cffba2b0ddb1518a6e757ca092eb40e1e2cd49
2021-01-01 15:13:17 +00:00
drh
85d31b9f37 New test case for the HAVING fix of check-in [f62f983b56623f0e].
FossilOrigin-Name: 45f46317ab8bd92dcd346bf00ba3a33b0cfd030b790c04e19ef33cff124d8d7f
2020-12-30 13:20:27 +00:00
drh
c4403ca61a New test cases for cursor renumbering in the UNION ALL query flattener.
FossilOrigin-Name: 270babf259750f3d6c490a08df608a101b24b3c06b9e8a938a0e09a854af6a20
2020-12-30 13:10:57 +00:00
dan
f39168e468 Fix a problem handling sub-queries with both a correlated WHERE clause and a "HAVING 0" clause where the parent query is itself an aggregate.
FossilOrigin-Name: f62f983b56623f0ec34f9a54ce1c21b013a20399162f5ee6ee43b23f10c2ecd5
2020-12-22 16:23:29 +00:00
dan
961a72601b Fix problems with joining UNION ALL sub-queries against other sub-queries that contain LEFT JOIN.
FossilOrigin-Name: d554f710a5abbe64022f47a14ef67227c861a8f0991d85d240434e9a709cf8b8
2020-12-21 19:50:10 +00:00
dan
a3d33ebe4a Fix a problem when flattening joins between a UNION ALL sub-query and another sub-query that uses more than one window function.
FossilOrigin-Name: ef9733fe1c6b31849a5da1037d21915f82e0e4ab42d1a23ead8a121012f1bace
2020-12-21 18:39:58 +00:00
drh
237f41ab8d Add the --timer option to fuzzcheck. Get the --timeout option working in
fuzzcheck when running dbsql tests.

FossilOrigin-Name: 3b0c9b41a877c7344ef3b7c5b6981436005716e25b41b1a1ffc145520243abd3
2020-12-21 12:14:59 +00:00
drh
e69ba68363 Allow UNION ALL sub-queriesto be flattened even if the parent query is a join.
FossilOrigin-Name: df1d6482f9e92dafdca1948e96eef52d8646eef9c356394afabe431d6357dd34
2020-12-19 13:58:06 +00:00
dan
d131b51cbd Fix for the previous fix in the case where a UNION ALL sub-query is joined against some other compound query.
FossilOrigin-Name: 63c5cfb9ae8f4598a523bed2a60c0e69172179952961a573113fcf756c06551d
2020-12-18 18:04:44 +00:00
dan
964fa26e0c When flattening UNION ALL subqueries into a join query, ensure that separate cursor numbers are used for each segment of the newly flattened query.
FossilOrigin-Name: c510377b0b052e400f2ee4f20220b61cdf74ee44b9bb9e6490787c88dd4c55aa
2020-12-18 16:13:39 +00:00
dan
8daf5ae2ed Add test cases and minor fixes to this branch.
FossilOrigin-Name: 5d6dc29d5f81738b07e4fee652fb2343fc409c2545f2f4667e8ee82d1a75f721
2020-12-17 16:48:04 +00:00
dan
13dd0228d3 Fix a problem with sqlite3_expanded_sql() that could occur with statements that use both numbered (e.g. "?1") and unnumbered (i.e. "?") parameters.
FossilOrigin-Name: 2a6cd6833e44dd6a2ac388815f43be6508f6fa6db5e451e964276a6c87e6c5ae
2020-12-17 11:24:26 +00:00
drh
0a8b6a9f8f Enhance the sqlite3BtreeTransferRow() routine so that it does more careful
checks for corrupt database pages.

FossilOrigin-Name: 85952e71175dae73c4e587a3b80783825d91fe8567a819e072da651c1ff4131b
2020-12-16 21:09:45 +00:00
dan
de9ed6293d Allow sub-queries that use UNION ALL to be flattened, even if the parent query is a join. Still some problems on this branch.
FossilOrigin-Name: 00e4bf74d3dfb87666a2266905f7d1a2afc6eb088d22cfd4f38f048733d6b936
2020-12-16 20:00:46 +00:00
dan
7f60706691 Fix another integer overflow triggered by a corrupt database in recently modified vacuum code.
FossilOrigin-Name: 4e2dd2a53364f1fed48b995fd5d2642472585f6da5e4735e9da193ba7ff45514
2020-12-15 19:27:20 +00:00
drh
9f023ce539 Enhance UPSERT so that it allows multiple ON CONFLICT clauses and does
not require a conflict target for DO UPDATE.

FossilOrigin-Name: 6b01a24daab1e5bcb0768ebf994368d941b1dfc217bf6b661211d900331e68cf
2020-12-14 15:39:12 +00:00
drh
250af6e0fb More test cases. No new problems discovered.
FossilOrigin-Name: f34dd67e2d0dfc9e3b5d49148fb0162853119c097cbc3fe961878875ba98d8e3
2020-12-12 00:43:52 +00:00