Commit a6cdd0d
authored
Recursive CTEs: Stage 3 - add execution support (#8840)
* rebase all execution and preceding recursive cte work
add config flag for recursive ctes
update docs from script
update slt test for doc change
restore testing pin
add sql -> logical plan support
* impl cte as work table
* move SharedState to continuance
* impl WorkTableState
wip: readying pr to implement only logical plan
fix sql integration test
wip: add sql test for logical plan
wip: format test assertion
wip: remove uncessary with qualifier method
some docs
more docs
Add comments to `RecursiveQuery`
Update datfusion-cli Cargo.lock
Fix clippy
better errors and comments
add sql -> logical plan support
* impl cte as work table
* move SharedState to continuance
* impl WorkTableState
wip: readying pr to implement only logical plan
fix sql integration test
wip: add sql test for logical plan
wip: format test assertion
wip: remove uncessary with qualifier method
some docs
more docs
impl execution support
add sql -> logical plan support
* impl cte as work table
* move SharedState to continuance
* impl WorkTableState
wip: readying pr to implement only logical plan
partway through porting over isidentical's work
Continuing implementation with fixes and improvements
Lint fixes
ensure that repartitions are not added immediately after RecursiveExec
in the physical-plan
add trivial sqllogictest
more recursive tests
remove test that asserts recursive cte should fail
additional cte test
wip: remove tokio from physical plan dev deps
format cargo tomls
fix issue where CTE could not be referenced more than 1 time
wip: fixes after rebase but tpcds_physical_q54 keeps overflowing its stack
Impl NamedRelation as CteWorkTable
* impl cte as work table
* move SharedState to continuance
* impl WorkTableState
* upd
* assign work table state
* upd
* upd
fix min repro but still broken on larger test case
set config in sql logic tests
clean up cte slt tests
fixes
fix option
add group by test case and more test case files
wip
add window function recursive cte example
simplify stream impl for recrusive query stream
add explain to trivial test case
move setting of recursive ctes to slt file and add test to ensure multiple record batches are produced each iteration
remove tokio dep and remove mut
lint, comments and remove tokio stream
update submodule pin to feat branch that contains csvs
update submodule pin to feat branch that contains csvs
* error if recursive ctes are nested
* error if recursive cte is referenced multiple times within the recursive term
* wip
* fix rebase
* move testing files into main repo
* update testing pin to main pin
* tweaks1 parent a7a74fa commit a6cdd0d
File tree
14 files changed
+1330
-9
lines changed- datafusion
- core
- src
- datasource
- physical_optimizer
- tests/data/recursive_cte
- physical-plan/src
- sqllogictest/test_files
- sql/src
14 files changed
+1330
-9
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
| 25 | + | |
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
34 | | - | |
35 | 33 | | |
36 | 34 | | |
37 | 35 | | |
| |||
84 | 82 | | |
85 | 83 | | |
86 | 84 | | |
87 | | - | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
88 | 90 | | |
89 | 91 | | |
90 | 92 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
248 | 248 | | |
249 | 249 | | |
250 | 250 | | |
251 | | - | |
| 251 | + | |
252 | 252 | | |
253 | 253 | | |
254 | 254 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
| 61 | + | |
61 | 62 | | |
62 | 63 | | |
63 | 64 | | |
| |||
894 | 895 | | |
895 | 896 | | |
896 | 897 | | |
897 | | - | |
| 898 | + | |
898 | 899 | | |
899 | 900 | | |
900 | 901 | | |
| |||
1288 | 1289 | | |
1289 | 1290 | | |
1290 | 1291 | | |
1291 | | - | |
1292 | | - | |
| 1292 | + | |
| 1293 | + | |
| 1294 | + | |
| 1295 | + | |
1293 | 1296 | | |
1294 | 1297 | | |
1295 | 1298 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
| 64 | + | |
64 | 65 | | |
65 | 66 | | |
66 | 67 | | |
| |||
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| 75 | + | |
74 | 76 | | |
75 | 77 | | |
76 | 78 | | |
| |||
0 commit comments