Commit Graph

74 Commits

Author SHA1 Message Date
77572f873d planner: do not push down the aggregation function with correlated column (#21453) 2020-12-08 10:54:24 +08:00
e33b37789c planner: add projection if expand virtual generated column (#20478)
Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>
2020-12-03 21:42:49 +08:00
76c1d28af9 planner: support complex join in broadcast join (#20196) 2020-11-05 16:29:35 +08:00
aa2b83210d planner: make pushdown limit use its child schema (#20807) 2020-11-04 15:58:34 +08:00
369c12f779 [planner, executor, kv]: refine and extract mpp codes to the right place (#20691) 2020-11-02 14:30:47 +08:00
b1b1da22e5 planner: fix wrong argument for split aggregation (#20474) 2020-10-29 15:08:42 +08:00
e52cb3714e planner: Do not pushdown unsupported function to tiflash in TopN operator (#19363)
Co-authored-by: ti-srebot <66930949+ti-srebot@users.noreply.github.com>
2020-08-25 17:20:18 +08:00
977449f8b0 planner: fix a bug that can't find column in indexLookupJoin with virtual generated column (#18516) 2020-08-25 16:09:31 +08:00
3ac0baf61c *: fix unable prune problem caused by mismatch column infos (#19391) 2020-08-25 12:24:48 +08:00
4e829aaee7 planner,executor: fix index merge for partition table (#18940)
Co-authored-by: ti-srebot <66930949+ti-srebot@users.noreply.github.com>
2020-08-04 20:38:17 +08:00
5dd7cd8553 planner/core: implement Explain for the new partition table (#18834)
Co-authored-by: lysu <sulifx@gmail.com>
2020-07-30 15:37:02 +08:00
a1dc4381c5 planner,executor: implement PartitionTable executor for the three reader (#18823) 2020-07-30 11:00:55 +08:00
29178dfa8d planner, executor: support broadcast join for tiflash engine. (#17232)
* support batch cop for tiflash

* support batch cop

* support join push down to tiflash

* refine

* change pb

* push join

* fix

* add hint

* refine hint

* add ranges

* fix

* fix

* fix push down

* fix index

* enable distsql for join

* add a session var to disable/enable broadcast join

* fix bug

* fix bug

* tiny fix

* enable cast decimal pushdown to tiflash

* fix

* fix bc join bug

* make broadcast plan stable

* refine code

* fix bug

* basic support for multi table broadcast join

* fix bug

* basic cbo for broadcast join

* improve

* fix bug

* remote useless code

* add tests

* pass unit tests

* refine code

* support execute summary info for broadcast join

* fix bug in explain for broadcast join

* format code

* remove un-needed code

* fix make dev

* address comments

* Hanfei/join merge (#7)

* enable exec details for batch cop

* format code

* fix test

* change tidb_opt_broadcast_join to global vars

* Ban cartesian join to be pushed down to TiFlash (#8)

* merge master (#10)

* merge master

* fix bug

* fix bug

* fix ut

* check session var conflict

* Add perfer local hint for broadcast join (#12)

* update

* remove useless code

* remove useless code

* update parser

* add test for prefer local join

* use bcj_local

* update go.mod

* refine planner

* refine comments

* fix make dev

* fix make dev

* update parser

* address comments

* fix make dev

* disable broadcast join when new collation is enabled

* Update planner/core/exhaust_physical_plans.go

Co-authored-by: Zhuomin(Charming) Liu <lzmhhh123@gmail.com>

* address comments

* fix

* address comments

* fix tests

* address comments

Co-authored-by: xufei <xufeixw@mail.ustc.edu.cn>
Co-authored-by: xufei <xufei@pingcap.com>
Co-authored-by: 虎 <ichneumon.hu@foxmail.com>
Co-authored-by: Zhuomin(Charming) Liu <lzmhhh123@gmail.com>
2020-07-27 12:41:36 +08:00
a6971dd685 *: support 'admin check table' on clustered index table (#18346) 2020-07-14 15:59:37 +08:00
daad2699dd *: support clustered index for index join (#18204) 2020-07-01 16:15:51 +08:00
5250f7f53f *: support clustered index in double read (#18127) 2020-06-23 15:33:38 +08:00
c98514e751 executor: unify executor concurrency (#16999) 2020-06-22 17:39:32 +08:00
978370f7cb executor: add new agg function APPROX_COUNT_DISTINCT (#17175) 2020-06-18 22:00:14 +08:00
7ebcc20398 executor: support GROUP_CONCAT(ORDER BY) (#16591) 2020-05-06 18:41:22 +08:00
8f000fc353 planner: push avg & distinct functions across union (#16344) 2020-04-15 18:07:37 +08:00
49ee75a0a5 planner, executor: enable inline projection for merge join (#15463) 2020-04-09 15:58:32 +08:00
77f970c48c planner: fix push down distinct when need to inject projection (#15997) 2020-04-02 11:43:01 +08:00
4eb9ca3d3f planner: push aggregation functions with distinct to cop (#15500) 2020-04-01 20:49:14 +08:00
5282d089c7 executor: support generated column on point get and batch point get (#15544) 2020-03-23 14:21:35 +08:00
a999ef6981 expression: support different expr push down for TiKV and TiFlash (#15174) 2020-03-11 16:16:03 +08:00
9e98f706ae planner, executor: support point get as a option of DataSource (#14775) 2020-03-09 10:47:16 +08:00
1703ee82cd planner: not to generate partial agg when cop task has root conditions (#15112) 2020-03-04 19:57:17 +08:00
c1114b9724 planner, executor: enable inline projection for index joins (#15004) 2020-03-02 15:32:09 +08:00
6d00e2169b planner: enable inline projection for hash join (#14783) 2020-02-28 16:28:10 +08:00
b64ad65636 planner: improve projection to keep order or keep index in some cases (#14510) 2020-02-26 14:02:36 +08:00
3399f4be31 planner: distinguish FullScan and the RangeScan in explain/desc info (#14696) 2020-02-24 15:23:06 +08:00
6e867b7cbc planner: consider disk cost in Sort (#14708) 2020-02-12 11:40:47 +08:00
e39b504177 planner: adjust the cost model of Apply (#13550) 2020-01-15 19:43:50 +08:00
08be35d778 planner: fix wrong stats for physical union scan (#14093) 2019-12-19 10:37:16 +08:00
02408dbd04 planner: support cost model for Chunk encode format. (#13461) 2019-12-18 15:47:16 +08:00
9b7b2c0d50 planner/core: fix bug when using generated column in aggregate statement (#14111) 2019-12-18 14:46:47 +08:00
438d39ebcd *: revert #10124 and remove sql mode PadCharToFullLength (#14007) 2019-12-17 15:25:06 +08:00
71e1288f00 planner/cascades: support implementation rule Apply and MaxOneRow. (#13873) 2019-12-06 17:19:48 +08:00
5b6422df58 *: support read remote TiDB memory table of cluster (#13065) 2019-12-04 13:05:36 +08:00
5a589c9994 planner: consider disk cost in hashJoin (#13246) 2019-12-03 13:43:19 +08:00
96069cd749 planner: reuse GroupBy Columns when build finalModeAgg (#13653) 2019-11-21 13:53:37 +08:00
02916a6778 planner/cascades: add transformation PushSelDownJoin & Implementation for HashJoin (#13470) 2019-11-20 16:13:13 +08:00
161a2eb454 planner/cascades: add transformation rule PushAggDownGather (#13049) 2019-11-15 18:09:35 +08:00
aca3f47292 *: Refactoring reading logic of virtual generate column (#12407) 2019-11-13 17:39:53 +08:00
4dcd7d7938 planner: consider build hashtable using the outer side for outer join during plan building (#12883) 2019-11-08 17:43:53 +08:00
6fd74f3e4c planner: support cost model for tiflash table scan (#12868) 2019-10-29 16:05:51 +08:00
36f0f37b40 expression, planner: remove some fields from `expression.Colum… (#12573) 2019-10-29 15:48:26 +08:00
b8cd65714f *: record and print the plan in slow log. (#12179) 2019-10-17 22:13:19 +08:00
45bc789a0f planner: stream agg should not be pushed to double read (#12443)
For the following two reason, we should not push stream agg down to double read
- The aggregate will lost the handle information
- There's no sort operator. The second read is ordered with pk, not by index.
2019-10-12 19:22:04 +08:00
7ffa4500e6 planner: support a hint to read from tiflash in planner (#12479) 2019-10-11 16:36:35 +08:00