519017f25a
Fix the sqlite3ReferencesSrcList() routine so that it recognizes columns
...
in the ORDER BY clause of an aggregate. Fixes a problem with
[634286828dad873d] discoverd by dbsqlfuzz.
FossilOrigin-Name: 3d26f1aaa4876f21f2c3abf13bbc37933c8f32471153e29019880cc9530cb011
2023-10-19 12:12:49 +00:00
42f5ea354e
Test case for alter column that is used in the ORDER BY of an aggregate.
...
FossilOrigin-Name: 648ddb3a8eb358fc6c95aaa561ae68476c77996abda23890054ac07166278cef
2023-10-18 22:53:22 +00:00
49dc1be96f
Basic test cases.
...
FossilOrigin-Name: 6cccf86c362631ada0c6cbaf661520648f8bbf7ae2b137b3d7d959647387e5c2
2023-10-18 19:44:59 +00:00
db19f48b69
Basic error checking. Resolve symbols in the aggregate ORDER BY expressions.
...
FossilOrigin-Name: c83a53a574d312130d1238c05ffa449d8bed2535d5ef5b5d9cf02f894494cca4
2023-10-18 13:58:31 +00:00
52d934e316
Fix a JSON bug introduced by the optimization of [df099ad713011b67] and
...
first appearing in 3.43.0. The problem occurs when doing a JSON_EXTRACT()
on an array element that was added by JSON_SET() without first reparsing.
Reported by [forum:/forumpost/fc0e3f1e2a|forum post fc0e3f1e2a].
FossilOrigin-Name: e5099c549a1d8959d4015516f090b8e6438e517a64b20651175bf5413d94fb58
2023-10-17 13:41:41 +00:00
d718bde6da
Do not allow an ALTER TABLE ADD COLUMN on a STRICT table if the added column
...
contains a DEFAULT clause that would violate the type of the added column.
FossilOrigin-Name: 75b075863eaa56e36635a1d27740d37de8600ba92099b3fad9378a1e6ce12c0e
2023-10-14 20:24:52 +00:00
af527231c1
Immediately fail a CREATE TABLE statement that attempts to create a
...
table that has a generated column loop. Legacy allows the table to be
created but the table would not be usable for anything.
FossilOrigin-Name: 3237bf964117c1ef71143042837ef21872bb3d04bfd682075672e768953ec802
2023-10-13 13:49:46 +00:00
99d43979d3
Avoid potential overflow in hex(). [forum:/forumpost/7ac0c9c5ea|See forum post 7ac0c9c5ea.]
...
FossilOrigin-Name: 2e968114fd0e60eebcc088dec02684e10b06ac1ec42d6bedb5287362f5cbf032
2023-10-13 01:39:47 +00:00
a11499a156
Add test case for [29937081].
...
FossilOrigin-Name: d3b983edf7164d30ddb8b4b745a3feff9737149d85b1c428d6ad488ac6a1960a
2023-10-12 18:09:27 +00:00
ac4aea5102
Fix the use of an uninitialized value that occurs when doing a json_insert()
...
of a string value that contains embedded U+0000 characters.
FossilOrigin-Name: d3c0cbb90966316be9cd25e3edb501da42731e8a83c13227b90ce17d3975a2c3
2023-10-11 17:24:31 +00:00
7d1c9da62d
Fix the use of an uninitialized value that occurs when doing a json_insert()
...
of a string value that contains embedded U+0000 characters.
FossilOrigin-Name: fc5ee9e51ad4556af526a6cefca5ae5a3b1b7affc4edf09832491d6b4f4ba366
2023-10-11 17:21:16 +00:00
0dead8d3d1
Merge the latest trunk fixes and enhancements into the jsonb branch, and
...
especially the JSON cache spill UAF fix.
FossilOrigin-Name: 9422c24f4a8b290dcae61e50ec81be5b314b22c61a2bca1e194e47da1316b6e6
2023-10-09 12:57:03 +00:00
faef28e6bd
Fix a potential UAF caused by JSON parser cache spill.
...
[forum:/forumpost/b25edc1d46|Forum post b25edc1d46].
FossilOrigin-Name: a163fecca90cab9d1b7bf8ebac78d498775eed7b6d81e7920e3401633c3a4b60
2023-10-09 12:46:53 +00:00
502b11c6d3
Merge the memory leak fix from trunk.
...
FossilOrigin-Name: 358de1b09f3d5ec0fe459775b0a2a99dfa235817327016b472aaa1ed56d952e6
2023-10-07 11:37:00 +00:00
8f0634549c
Add a test case to prevent a regression of the leak fixed in the previous
...
trunk check-in.
FossilOrigin-Name: f99ff655d09763c4a22d065041644ece793d84c82c644931e89ccf50c4f4564a
2023-10-07 08:15:47 +00:00
91f3cd9874
Merge compiler warning fixes from trunk into the jsonb branch.
...
FossilOrigin-Name: 6409d307915f8969f12df2d5ffa961645bd4db7ccfbd6f52237a217b6a867252
2023-10-06 13:05:42 +00:00
1935887a68
Ensure that all fields of static sqlite3_module objects are explicitly
...
initialized, in order to hush-up nuisance compiler warnings.
FossilOrigin-Name: f3b3d712d6e58b1cb8fdebd2b6b3125080b6b3ac8c7c849a8cc1e5e778d62fe7
2023-10-06 12:51:05 +00:00
f0c129f247
Merge the latest trunk enhancements into the jsonb branch.
...
FossilOrigin-Name: e6406a9865b75dea2f26d3ee4f4c206958400059c7f92ced88edc8507dd3c82f
2023-10-03 11:36:47 +00:00
313336f90b
New test cases for JSONB.
...
FossilOrigin-Name: 6d4aeff5751722c83ebb0e1f21072b72be418c64dcf28ee032d3a548e1b3a951
2023-10-02 23:56:46 +00:00
e5c384e9a5
Fix jsonb_insert() so that it does not behave like jsonb_set().
...
New test cases added.
FossilOrigin-Name: 54197149b811d30b6c4487eedf5692b164ed0f90cfcc541aa3157094f5f17f6a
2023-10-02 20:16:06 +00:00
dee29e8c7a
New test cases for JSONB.
...
FossilOrigin-Name: d624c31e5c49e1ce63b4b72caa42a61c5167866f47d842fbcfe4e826fd079d7c
2023-10-02 14:51:28 +00:00
c97407fdba
Allow json_replace() to accept JSONB arguments as the new value.
...
FossilOrigin-Name: 95eb7b37fab29931924311f541d52173ef77a448efc8771b1a1783ccd786d23d
2023-10-02 13:35:06 +00:00
8eeafb7544
Improvements to error handling for BLOB inputs on JSON.
...
FossilOrigin-Name: 14f20ecbfab44934e86f1ac7a3f745b989aa8190c6df119ff5aa8100fa248d93
2023-10-02 13:20:43 +00:00
5624b0b4cd
Gather forward references into a single place for the JSON code. Allow
...
JSONB arguments to json_array() and json_object() and similar.
FossilOrigin-Name: c352201b8c299c330d9abbff6dbcbcbcf00ada53183d3cd91020ec772e066357
2023-10-02 12:40:04 +00:00
bee5657042
Add test case to ensure the assert() removed by [f090af77] no longer fails.
...
FossilOrigin-Name: 615ab71761754b072439f92e73fdb98c916b820937bcca8904f4be34936d5f9c
2023-09-29 15:56:40 +00:00
1854837b5a
Work toward getting json_extract() to operate directly on the BLOB, omitting
...
the translation into a JsonNode array.
FossilOrigin-Name: c1feba70f55a8e5f4696d48e4706855415d173ac8ac3c2656787c242a883b4f5
2023-09-28 10:20:56 +00:00
733da8d31a
Performance tests for JSONB added.
...
FossilOrigin-Name: 7c1be8e361db87458ac9d8fcee080c2b558936539c852bb80f0f7941d61bf15d
2023-09-27 16:55:13 +00:00
1c67749166
Remove a NEVER() from a condition in the partial-index constant value optimization that can sometimes be true.
...
FossilOrigin-Name: 63aea8c3e0605edcf49ad1e5ce1a56d2690dcb8c4857043997545daab46ca035
2023-09-26 19:26:47 +00:00
873849b81e
Fix a bad interaction between LEFT JOIN, bloom filters and partial indexes.
...
FossilOrigin-Name: 5775f92b31f0539c66d37e50689bec17a82c0e857a781331c03e34bc18157087
2023-09-25 11:12:39 +00:00
af7cce98c5
Add extra tests for changes on this branch.
...
FossilOrigin-Name: cb45f5b070cfdbb4358e8e909b0b34d658b5925db06e282b38046298a159c545
2023-09-23 21:31:40 +00:00
7a9bbfe1fa
Avoid an error when parsing a schema that contains indexes with WHERE clauses containing unknown collation sequences.
...
FossilOrigin-Name: d5dd39e37ab994ce5d75688a40c6494c17807431529e85eb2b11d58f367fe232
2023-09-23 19:25:03 +00:00
c18c7523a4
Fix a failing assert() caused by changes on this branch.
...
FossilOrigin-Name: d0e21f20bd8643d21c4b88fb75b83939d68e9b7118f7289a164656f11d2ee555
2023-09-23 18:52:22 +00:00
bd42642431
In partial index scans, if the WHERE clause implies a constant value for a table column, replace occurences of that table column with the constant. This increases the likelihood of the partial index being a covering index.
...
FossilOrigin-Name: 66ed7abdfa228abde2052e3988589371f0e49b11582b1b4a83255d2df3a0aefa
2023-09-22 20:21:27 +00:00
f99a27fab9
Fix resolution of "rowid" and similar identifiers in queries that use nested joins.
...
FossilOrigin-Name: 37ec43d92bde13efc71fa57ff5e59c4a95b9054c298f844aefeb06d4a91ad0d4
2023-09-16 18:18:57 +00:00
2e8edc1d45
Further tests and assert() statements for the change on this branch.
...
FossilOrigin-Name: 1c202d540ac362bfc747a9f8472e83c9d7614e38467f8b48787a669fb34664ba
2023-09-16 14:42:18 +00:00
63702bccaa
Fix resolution of unqualified "rowid" identifiers in queries with nested joins.
...
FossilOrigin-Name: bbcbd3d537d6790373d97f59386b8ce7fa2177db572af0f1babe058a76e25cc3
2023-09-15 20:57:05 +00:00
c09701db9b
Do not reduce subquery output row count estimates due to DISTINCT until
...
after the decision of whether or not to use an index for ORDER BY has been
made.
FossilOrigin-Name: 27390051e86ad86fb35219329d359be9e83073f59782631af7fc519225e10565
2023-09-15 19:00:47 +00:00
81b70d97eb
Allow expressions like "<tbl>.rowid" to refer to implicit rowid columns of tables in nested FROM clauses.
...
FossilOrigin-Name: 59a1bbc69f5dbb33418fa4b383393fb13a46bc1e531577da8ad54ae2fad5a10e
2023-09-15 18:36:51 +00:00
658096e124
The view-scan optimization was added to enhance the performance of one specific
...
query, but it causes performance regressions on a host of others. Disable it
(at least temporarily) in order to try to find an alternative way of fixing the
one specific query that it was created to fix - an alternative way that does
not cause performance problems for other unrelated queries.
FossilOrigin-Name: d9625a9eafe88859c3255849ee750cc6322d5a13ddad45107f9b2085c20eff50
2023-09-15 14:06:44 +00:00
fb77b3ed3f
Add -DSQLITE_OMIT_LOOKASIDE=1 to the "Sanitize" configuration in testrunner_data.tcl.
...
FossilOrigin-Name: a917ebf17b27951d1c6906e9068e816ef29861701f2e8f4f1a13acce5737f680
2023-09-07 17:54:12 +00:00
09f1652f36
Fix a buffer overread in the sessions extension that could occur when processing a corrupt changeset.
...
FossilOrigin-Name: 0e4e7a05c4204b47a324d67e18e76d2a98e26b2723d19d5c655ec9fd2e41f4b7
2023-09-07 13:53:09 +00:00
961c2a9f36
Add the xIntegrity method to the sqlite3_module object. Implement this
...
method in RTREE, FTS3/4, and FTS5 so that "PRAGMA integrity_check" also
verifies the correctness of shadow tables associated with those virtual
tables.
FossilOrigin-Name: 17bede8cdefd968210dd8a5a2617acbe12ba2c99fdd5e88c5def8665e7bec2d7
2023-09-06 12:52:00 +00:00
8628c10e27
Do not disable unused columns in a UNION ALL sub-query if any component of the sub-query is DISTINCT.
...
FossilOrigin-Name: c84d5602ac9bfb4f12c3cf62033af616e51913c26877d1a0761363a625295f53
2023-08-31 18:00:10 +00:00
a7ec1f9a1b
Fix a bug in json_array_length() introduced in version 3.43.0 by
...
check-in [df099ad713011b67]. If the JSON input comes from json_remove(),
the removed array entries are still counted as part of the array length.
FossilOrigin-Name: 69a635958a4a14187e88dd297df8978a4805b1b0c7bff3ec29d5632c0f68d889
2023-08-30 18:19:40 +00:00
7bb5a6db40
Fix the AVG() and TOTAL() functions (after the SUM() fix of [77d3dcd283595c52])
...
so that they work with infinitites. Fixes a bug introduced by check-in.
[c63e26e705f5e967]. Bug reported by
[forum:/forumpost/8960fb40cc|forum post 8960fb40cc].
FossilOrigin-Name: 6df6f17ccb404c648076ccff4200d0eb5437f0e3e82424bf3da5ea682b107bb4
2023-08-30 16:03:27 +00:00
a910f3f1c5
New conversion letters added to strftime(): %e, %k, %I, %l, %R, %P, %p, %T, %u.
...
FossilOrigin-Name: 058722b2d0b995195a8ce3effe9722ae1c18cb1e7a520b481030da0bd579fe41
2023-08-29 18:28:08 +00:00
e1e67abc5c
Add support for the CONCAT() and CONCAT_WS() SQL functions, modeled after
...
the PostgreSQL behavior.
FossilOrigin-Name: 0b434ca7aa19eff4ad134a8c6f88f6a7ccab88864faa55e93579a2462d8ac3bc
2023-08-29 15:24:41 +00:00
35c7f538e9
Updates to testrunner.tcl so that it runs fuzztest using multiple jobs.
...
FossilOrigin-Name: ceeabe9f8b31a30c65147fd270b92d43c7842247548cee9de165113991f6c2cf
2023-08-28 20:14:19 +00:00
ecdc5b3e6f
Fix the "sdevtest" testrunner.tcl command so that it correctly enables asan on windows.
...
FossilOrigin-Name: 6463192369ff22eb15d4e34590ef55cd8a6f2501227835664816277806bf961b
2023-08-28 20:02:59 +00:00
9b0e9f9089
Fixes for testrunner.tcl on windows.
...
FossilOrigin-Name: 26ae090889640bfcf02a6dd5aa58044edd4d0708a11d8e005149f1a3c8495bba
2023-08-28 18:15:14 +00:00