Commit Graph

31 Commits

Author SHA1 Message Date
8cd377dd07 executor: Improve the performance of aggFuncBitXor by using… (#16091) 2020-04-15 15:03:11 +08:00
49ee75a0a5 planner, executor: enable inline projection for merge join (#15463) 2020-04-09 15:58:32 +08:00
a93e91fc57 executor: Improve the performance of aggFuncAvg by using sliding window (#15606) 2020-04-03 14:02:38 +08:00
bbac2b2fe4 executor: Improve the performance of aggFuncSum by using sliding window (#14887) 2020-03-23 13:29:44 +08:00
cdc782418c executor: fix hash join benchmark and add a simple hash join test (#14901) 2020-03-03 15:24:09 +08:00
c1114b9724 planner, executor: enable inline projection for index joins (#15004) 2020-03-02 15:32:09 +08:00
f2fa5c5fd5 expression: consider collations when comparing strings (#14913) 2020-02-25 15:06:37 +08:00
114405e114 executor: inline projection for hash join (#14682) 2020-02-13 18:44:33 +08:00
17da140f15 executor: Improve the performance of WindowExec by using sliding window (#14294) 2020-02-07 18:38:54 +08:00
13bf6cc196 executor: implement disk-based sort (Part 2) (#14279) 2020-02-07 09:39:53 +08:00
cfe0c2025f executor: vectorize the merge join executor by vecGroupChecker (#14458) 2020-02-04 15:41:24 +08:00
74bc00dfa9 Improve the performance of WindowExec by using multi-thread hash grouping (#14238) 2020-01-16 21:04:16 +08:00
a487748b46 executor: support merge join on disk (#13946) 2019-12-31 18:49:10 +08:00
ebc4fa9dee executor: resort fields for reducing the memory allocated (#14208) 2019-12-31 17:19:59 +08:00
8fab2548d0 executor: show operators' disk consumption in results of EXPLAIN ANALYZE (#13764) 2019-12-02 17:04:29 +08:00
b84c5a73ad executor: implement the execution part of the outer hash join (#12882) 2019-11-12 17:48:30 +08:00
b697fac4ba expression: vectorize hash calculation during probing (#12048) (#12669) 2019-11-05 21:42:34 +08:00
7bfa8967e1 executor: rename HashJoin.outer and inner to probe and build (#13045) 2019-10-31 11:43:36 +08:00
cc991d90d3 executor: support index lookup merge join in executor. (#12024) 2019-10-14 19:21:33 +08:00
a177d46663 executor: add index hash join benchmark (#12564) 2019-10-09 17:02:46 +08:00
1f922559df executor: implement disk-based hash join (#12067) 2019-09-24 23:23:05 +08:00
836d5f7b58 planner/core: support generate hints from physical plan (#11936) 2019-09-11 17:53:29 +08:00
1ff620d4d0 executor: reorg codes for hashtable in HashJoinExec (#11937) 2019-09-03 13:34:23 +08:00
bdbaeb419d executor: decrease the memory usage of hashTable in HashJoinExec (#11832) 2019-08-29 14:45:52 +08:00
8d165f0fd2 executor: copy row data instead of refereeing chunk.Row in some window functions. (#11678) 2019-08-22 10:57:54 +08:00
d244723a5e executor: remove unused structure RecordBatch (#10891) 2019-06-26 15:26:16 +08:00
c59028a2b5 *: let baseFuncDesc.typeInfer return error instead of panic (#10910) 2019-06-24 13:09:14 +08:00
f6be085bc6 executor: tiny refactor the Executor interface (#10846)
Introduce a base() method to get the baseExecutor, so we don't need to add
method from baseExecutor to the Executor interface any more

Before:
```
type Executor interface {
	Open(context.Context) error
	Next(ctx context.Context, req *chunk.RecordBatch) error
	Close() error
	Schema() *expression.Schema

	retTypes() []*types.FieldType
	newFirstChunk() *chunk.Chunk
}
```

After:
```
type Executor interface {
        base() *baseExecutor
	Open(context.Context) error
	Next(ctx context.Context, req *chunk.RecordBatch) error
	Close() error
	Schema() *expression.Schema
}
```
2019-06-19 15:55:28 +08:00
5fcc7e2a61 executor: tiny clean up by removing unnecessary string creation (#10213)
* executor: clean up by remove unnecessary string creation
* check if id is nil
2019-04-22 15:32:15 +08:00
d6396daa77 *: lazy eval explain id and tracker label (#10139) 2019-04-22 14:23:33 +08:00
632a8c4c82 executor, util: add Benchmarks for HashAggExec and StreamAggExec (#8998) 2019-02-14 13:29:35 +08:00