Commit Graph

5415 Commits (moonshot/custom-path)

Author SHA1 Message Date
Nils Dijk cc6932fa31
remove experiment 2022-02-11 14:23:56 +01:00
Nils Dijk 51b65d7dec
more add_path hook experiments 2021-12-23 12:40:26 +01:00
Nils Dijk d092ef5e02
compare_path_hook 2021-12-15 17:59:37 +01:00
Nils Dijk a1ace74865
small fixes 2021-12-06 12:45:01 +01:00
Nils Dijk 912e80d4cc
hacky prototype for partial count(...) pushdown 2021-12-01 14:42:33 +01:00
Nils Dijk 88e639283c
pluggable optimizations 2021-12-01 12:54:44 +01:00
Nils Dijk 3e88dde672
partial group by optimization 2021-12-01 12:54:44 +01:00
Nils Dijk ffc73634a8
prepare group optimizations to be extensible 2021-12-01 12:54:43 +01:00
Nils Dijk 4542265dbf
try repartition grouping 2021-12-01 12:54:43 +01:00
Nils Dijk 1eb418de89
refactor agg pushdown and prevent illegal repartition paths to be generated 2021-12-01 12:54:43 +01:00
Nils Dijk a55331d934
iterate on cost model 2021-12-01 12:54:43 +01:00
Nils Dijk 0341d9fe80
reindent pathbased planner 2021-12-01 12:54:43 +01:00
Nils Dijk 51d498e2c2
wip for repartition join 2021-12-01 12:54:43 +01:00
Nils Dijk 071cae2f6d
fix check for outer rel to take mapped varno's into account 2021-12-01 12:54:42 +01:00
Nils Dijk 2a67d0057d
implement parameterized inner loops 2021-12-01 12:54:42 +01:00
Nils Dijk 9a4b1c2a49
disable postgis dependency 2021-12-01 12:54:42 +01:00
Nils Dijk 29010333cf
make compatible with pg14 2021-12-01 12:54:42 +01:00
Nils Dijk 7ee4646e96
use patternmatcher for join pushdown 2021-12-01 12:54:42 +01:00
Nils Dijk f4c5f9e2ea
remove liblwgeom from dependencies in citus 2021-12-01 12:54:41 +01:00
Nils Dijk 089650db11
rewriting tree to distributed plan 2021-12-01 12:54:41 +01:00
Nils Dijk 1aa86f6b1c
more simplification and removal of unused code 2021-12-01 12:54:41 +01:00
Nils Dijk 4362502bb5
generic way of matching fields for Var/Const 2021-12-01 12:54:41 +01:00
Nils Dijk 2b4072ebe8
rework the capture logic 2021-12-01 12:54:41 +01:00
Nils Dijk 766ed2ad33
collapse closing braces as suggested by dim 2021-12-01 12:54:40 +01:00
Nils Dijk cc84b48fd1
formatting and cleanup 2021-12-01 12:54:40 +01:00
Nils Dijk e3953b2459
prototype of pattern matcher 2021-12-01 12:54:40 +01:00
Nils Dijk bac16a3785
basic geo partitioning planning 2021-12-01 12:54:40 +01:00
Nils Dijk ec994a3a9c
add sql script to initialize a geo distributed table 2021-12-01 12:54:40 +01:00
Nils Dijk ff187ce5e1
expand shard model for geo distribution 2021-12-01 12:54:40 +01:00
Nils Dijk 6bc9209baf
update pg and citus 2021-12-01 12:54:39 +01:00
Nils Dijk b5ac6d2048
add broadcast optimization rule 2021-12-01 12:54:39 +01:00
Nils Dijk f952d9c614
easily add new join optimization functions 2021-12-01 12:54:39 +01:00
Nils Dijk 6b8e0a6105
fix subtle bug in adding to a list we are iterating over 2021-12-01 12:54:39 +01:00
Nils Dijk 23b11b470b
add paths for joins instead of rewriting them 2021-12-01 12:54:39 +01:00
Nils Dijk 84068f79b2
fix refactor and renames 2021-12-01 12:54:38 +01:00
Nils Dijk 2e178d21d6
fix targetlist to prevent projection that failed 2021-12-01 12:54:38 +01:00
Nils Dijk 5cef5b20a3
simple group by push down 2021-12-01 12:54:38 +01:00
Nils Dijk e570149c0a
propagate partition value during joins 2021-12-01 12:54:38 +01:00
Nils Dijk 30d9380f46
implement beginning of shard pruning 2021-12-01 12:54:38 +01:00
Nils Dijk ffa33b096a
Add support for optimising nested loop a bit (primary key lookup). 2021-12-01 12:54:38 +01:00
Nils Dijk 2937d4edc9
Fix misread of colocation id 2021-12-01 12:54:37 +01:00
Nils Dijk f858efd2f2
Implement beginnings of join pushdown 2021-12-01 12:54:37 +01:00
Nils Dijk b361386e05
Record the colocation id on the DU 2021-12-01 12:54:37 +01:00
Nils Dijk 8d73ff6779
Define a custom path structure 2021-12-01 12:54:37 +01:00
Nils Dijk 9acf41a9d9
Remove RTE reference from DU 2021-12-01 12:54:37 +01:00
Nils Dijk 00083afeaa
Use path object to recreate range table entry etc 2021-12-01 12:54:36 +01:00
Nils Dijk 285f1b1d1e
move path based planner to its own files 2021-12-01 12:54:36 +01:00
Nils Dijk fc0e6a1094
hacky hack for double distributed join 2021-12-01 12:54:36 +01:00
Nils Dijk aa3f283d02
support multiple remote scans 2021-12-01 12:54:36 +01:00
Nils Dijk 0d55755951
recreate query struct for sub paths 2021-12-01 12:54:36 +01:00