dan
abfe034692
Fix some problems in test scripts. No code changes.
...
FossilOrigin-Name: 08acfc65877e207f1a62d31a14afb4add20c4c35
2014-01-27 08:48:10 +00:00
dan
53bed45ecb
Select collation sequences for ORDER BY expressions attached to recursive CTEs in the same way as they are selected for other compound SELECT statements.
...
FossilOrigin-Name: 9554519c126c5e714421a82fd2e8aa9b19e11493
2014-01-24 20:37:18 +00:00
dan
05d3dc29c5
Add test cases for LIMIT and ORDER BY on recursive CTEs.
...
FossilOrigin-Name: 67d6c42d44cb191368ce20f553b32fcb14bfc4d7
2014-01-24 16:57:42 +00:00
drh
9e2c7ae1b0
Add a few more CTE test cases to closure.test.
...
FossilOrigin-Name: 1b6405d9788c1bb89761b2bcdce560a5020ff503
2014-01-24 15:42:51 +00:00
drh
3c2aeae16e
Add test cases that compare the performance of the transitive_closure
...
virtual table again common table expressions for walking a tree.
FossilOrigin-Name: 9a23f020e8ed0e7a1ad227b4ab379fdf5e2de222
2014-01-24 14:37:44 +00:00
drh
b090352b5a
Add test cases showing the use of ORDER BY on a recursive query to control
...
depth-first versus breath-first search of a tree.
FossilOrigin-Name: 83b0b2916589db0184435dbd4c304387f393ed60
2014-01-24 11:16:01 +00:00
dan
afcf9bd806
Modifications to test files to omit any tests that intentionally access out-of-bounds locations in clang -fsanitize=address builds.
...
FossilOrigin-Name: f4a701d55f5c4e1e62ed64b779ad4fff89dd31b7
2014-01-23 14:44:08 +00:00
drh
953dfa4e60
Change the WITH RECURSIVE implementation to use a queue instead of a pair of
...
tables. Add support for ORDER BY, LIMIT, and OFFSET on recursive queries.
FossilOrigin-Name: b6cea42006910d590373e8f9e296d7672edb114b
2014-01-22 18:16:27 +00:00
drh
aa9ce7078a
Add support for LIMIT and OFFSET in a recursive query.
...
FossilOrigin-Name: 1945484e6b9769c1943f750f5b09860417fb190a
2014-01-22 18:07:04 +00:00
dan
a8a0617e06
Update the spellfix virtual table to optimize queries of the form "SELECT ... FROM tbl WHERE rowid=?".
...
FossilOrigin-Name: a0ba55ff0596c5f15e9cdb254c68ef50df2dfaad
2014-01-22 17:43:16 +00:00
drh
fe1c6bb9c2
Get ORDER BY working for recursive queries.
...
FossilOrigin-Name: 37b343b01841b338954ddfa9b76d92aa50037aec
2014-01-22 17:28:35 +00:00
dan
a4ff825095
In where.c, do not allocate space in sqlite3_index_info structures for the internal WHERE clause "terms" generated to record column equivalencies.
...
FossilOrigin-Name: 7d9e22187daaa3160b875a1df17b924969bf718e
2014-01-20 19:55:33 +00:00
dan
7df42aba12
Handle a few obscure problems that could manifest if a database corrupted in a certain way was written by a connection in the middle of a SELECT statement on the same db.
...
FossilOrigin-Name: eba8a564e62f84a9620008beead80081fe90a1b7
2014-01-20 18:25:44 +00:00
dan
7f3068aa83
Do not run the tests in with2.test with SQLITE_OMIT_CTE builds.
...
FossilOrigin-Name: 8a973912e98c9b1bb9d3f914527d35c1e7f2011a
2014-01-20 14:17:08 +00:00
drh
717c09c4a9
Add a sudoku solver to the recursive query tests in with1.test.
...
FossilOrigin-Name: 679eff8759aa25368b977c0d26b78a9fcd9486f5
2014-01-18 18:33:44 +00:00
dan
1fe3c4b526
Add extra test cases. No changes to code.
...
FossilOrigin-Name: d38d485e581dab99a3ee6b348da8ddaf9b379ff2
2014-01-18 15:59:35 +00:00
drh
75303a2c68
Add asserts() for a couple of unreachable conditions. Add the Mandelbrot Set
...
query as a test case.
FossilOrigin-Name: 2ad4583c0cc7988f0dfe78fd0a2eb0fdb92d835a
2014-01-18 15:22:53 +00:00
dan
ebbf08a012
Avoid spurious "no such table" errors in statements of the form "INSERT INTO tbl WITH xxx AS (...) SELECT * FROM xxx".
...
FossilOrigin-Name: cccff8a0b427feb05cc8952a765b829e731394fd
2014-01-18 08:27:02 +00:00
dan
7c82932723
Add extra tests to with2.test.
...
FossilOrigin-Name: eecc325afd72e37d7d565787c8cea68aad6d7a5c
2014-01-17 20:36:17 +00:00
drh
c59731c4ae
Minor simplification of error message text for a couple of errors associated
...
with WITH clause processing.
FossilOrigin-Name: 2031004d960526d6426d50d7b732f37b281534e2
2014-01-17 18:34:28 +00:00
dan
98f45e53a7
Resolve table names within CTEs in the context in which the CTE is declared, not the context in which it is used.
...
FossilOrigin-Name: a7323838bbd354a1c2f339e5e0f164f0eada47b3
2014-01-17 17:40:46 +00:00
drh
a026b98500
Add tests that verify that keywords WITH, WITHOUT, and RECURSIVE can still
...
be used as table and column names.
FossilOrigin-Name: 9ca18a0191db6a9b0763e2f0b3b35d23099fb71b
2014-01-17 16:19:01 +00:00
dan
718569443d
Add support for common table expressions (WITH clauses).
...
FossilOrigin-Name: 0171e3bb4f663a9414b0e8b64c87b5d0683855b5
2014-01-17 15:15:10 +00:00
dan
b290f11775
Fix some problems to do with WITH clauses and name resolution.
...
FossilOrigin-Name: 6a549187ed8b5ed50daefa676ff666ae2ed43346
2014-01-17 14:59:27 +00:00
dan
2d4dc5fc60
Remove some code from resolve.c that was only required for recursive cte references in sub-queries. Also a stray "finish_test" command in pagerfault.test.
...
FossilOrigin-Name: f68c6c4d36481526a9348244adc571ea282dc9eb
2014-01-17 11:48:24 +00:00
drh
65a2aaa633
Add the ability for the authorizer callback to disallow recursive
...
queries.
FossilOrigin-Name: 9efc120a1548c03f3d8aabbadf1050ff2a119c31
2014-01-16 22:40:02 +00:00
drh
727a99f1e3
Tweaks to error message text.
...
FossilOrigin-Name: 090a77d97808b86d1e9f5c63c743a2b159a15f5d
2014-01-16 21:59:51 +00:00
dan
f2655fe8b6
Improve the error messages used to report illegal recursive cte references.
...
FossilOrigin-Name: 54eee9fe99290e59469bd3e1a66bb749887d37ee
2014-01-16 21:02:02 +00:00
drh
6ade453cd8
Always use available indices to optimize LIKE operators even if the pattern
...
of the LIKE operator has a COLLATE modifier. This fixes an ineffiency that
was introduced into 3.7.15 by check-in [8542e6180d4] on 2012-12-08.
FossilOrigin-Name: 16bd54783a3f5531c55564ddefdada657c078eb0
2014-01-16 15:31:41 +00:00
dan
eede6a538d
Fixes so that SQLITE_OMIT_CTE builds work.
...
FossilOrigin-Name: 3908e2ea2e7e5f466cbbbffdc27e0fe8dc9751ac
2014-01-15 19:42:23 +00:00
dan
62ba4e418d
Disable automatic indices on recursive CTE references.
...
FossilOrigin-Name: 28aa6db8c878655255dbfb618f8d65be78e3d7e5
2014-01-15 18:21:41 +00:00
dan
f43fe6e9f6
When resolving names, consider a reference to a recursive CTE column as equivalent to a reference to the outermost name-context. This ensures that correlated sub-queries are correctly identified as such.
...
FossilOrigin-Name: 61be2da0ae623c1572819481508b044e9d32f294
2014-01-15 18:12:00 +00:00
dan
60e7068d75
Return an error if a CTE specifies a different number of columns than its SELECT statement returns.
...
FossilOrigin-Name: 9a514b50e4b01f109fbdb0aabcbfe1ddab129b44
2014-01-15 15:27:51 +00:00
dan
bfe31e7f80
Disable the flattening optimization if the sub-query is a recursive CTE.
...
FossilOrigin-Name: 9472f6d820a7fb233936d9b8f7a39c9d4c4d6d73
2014-01-15 14:17:31 +00:00
dan
8ce7184bc2
Add code to handle recursive CTEs.
...
FossilOrigin-Name: a5c2a54a07d35166911abc792008c05dea897742
2014-01-14 20:14:09 +00:00
dan
a9f5c13d0c
Fix some memory leaks and crashes that could follow an OOM condition during WITH clause parsing.
...
FossilOrigin-Name: 8839850c44a8938883e493eacd752fa686e542df
2014-01-13 16:36:40 +00:00
dan
4e9119d9e8
Add code to handle non-recursive CTEs in the same way as SQL views.
...
FossilOrigin-Name: a26f399ba485e8127c276c5f103ec6c555e11734
2014-01-13 15:12:23 +00:00
dan
7d562dbe02
Update the parser so that sub-queries and CTEs may have WITH clauses.
...
FossilOrigin-Name: 704d3931b855562a619769955969d439c42ca406
2014-01-11 19:19:36 +00:00
drh
c740752470
Fix CREATE TABLE ... AS so that it works with column names that are empty
...
strings.
FossilOrigin-Name: 632045f21c553e10f59a14c772d50d7824ca0c2c
2014-01-10 20:38:12 +00:00
dan
69014393f8
Instead of having the planner ignore plans with unusable MATCH constraints, have FTS assign extremely high costs to such plans in order to discourage the planner from using them.
...
FossilOrigin-Name: 24f84b38131866f7b435ffe641bb2f6991a70db2
2014-01-04 14:42:14 +00:00
dan
42899543f8
Have the planner detect cases where a MATCH constraint is applied to a virtual table, and ignore any plans that do not allow the virtual table implementation to implement the MATCH filtering.
...
FossilOrigin-Name: 19f3208b26597625728d1ef716d4e44407cf96ac
2014-01-04 14:16:06 +00:00
drh
6c1de308f2
Make sure the WhereLoop.aLTerm[] array is large enough when processing
...
the skip-scan optimization. Fix for ticket [520070ec7fbaac].
FossilOrigin-Name: 46d040591f27be01b1860344f8a268797fe344f4
2013-12-22 20:44:10 +00:00
drh
25555506df
Fix speedtest1.c so that in --explain mode it only outputs non-explain text
...
for DDL statements.
FossilOrigin-Name: 2d2b3c4951dc2b8317d5ba8b5cf72b1f4a6668f6
2013-12-21 17:14:58 +00:00
drh
849a9d92ba
Fix the ".echo on" dot-command of the shell so that it echos comments in
...
addition to SQL statements and dot-commands. Add the --explain option
to speedtest1 so that the output can be piped into the command-line shell
to show nicely-formated VDBE code for the entire test.
FossilOrigin-Name: 96397263f94256e284aae9506de1fc48fea89193
2013-12-21 15:46:06 +00:00
drh
ae28d6efc6
Add a case to speedtest1.c that demonstrates the need to factor OP_Column
...
operators out of inner loops.
FossilOrigin-Name: 69a17336fdf4ae891e815914be8942f7222230c2
2013-12-21 00:04:37 +00:00
drh
f6b1a8e1a5
Make sure errors encountered while initializing extensions such as FTS4
...
get reported out from sqlite3_open(). This fixes a bug introduced by
check-in [9d347f547e7ba9]. Also remove lots of forgotten "breakpoint"
commands left in test scripts over the years.
FossilOrigin-Name: ca3fdfd41961d8d3d1e39d20dc628e8a95dabb2f
2013-12-19 16:26:05 +00:00
drh
039468ef2d
Remove an unnecessary column-cache flush. Add another test case to the
...
speedtest1.c program to accentuate the benefit of not flushing the cache at
that point.
FossilOrigin-Name: 97fdfc6b79833011fc0c506fe5e0985c0fb1906c
2013-12-18 16:27:48 +00:00
drh
3a8aec5e13
Add evidence marks and additional test cases for the printf() SQL function.
...
FossilOrigin-Name: 93121d3097a43997af3c0de65bd9bd7663845fa2
2013-12-17 16:32:56 +00:00
drh
fc6ee9df22
Fix the formatting of %c in the printf() SQL function.
...
FossilOrigin-Name: 3375571a5e267744c19a7c310840256cec57a242
2013-12-17 15:58:42 +00:00
drh
a5c1416d64
Add the printf() SQL function.
...
FossilOrigin-Name: 6db7052eeefafdbf26b3153bc38600fecfb53ae6
2013-12-17 15:03:06 +00:00