Commit Graph

950 Commits

Author SHA1 Message Date
de9c192cba *: move mocktikv from tikv pkg (#5834) 2018-02-08 23:31:29 +08:00
f6c9f43b4c expression: add benchmarks about expression executor (#5760) 2018-02-08 14:57:05 +08:00
51c47a4ddc plan: The stats of some table is outdated, we use pseudo to estimate. (#5802) 2018-02-08 11:22:21 +08:00
5be134e38f plan, expression: refine explain count info (#5810) 2018-02-07 14:45:08 +08:00
26d4887c55 plan: fix a bug when alter table drop column meets insert (#5790) 2018-02-06 18:35:31 +08:00
4e554703fb plan: fix bug of stats count (#5775) 2018-02-06 13:16:50 +08:00
469b246965 types,expression: make ConvertToTime unaffected by location (#5741) 2018-02-01 06:22:59 -06:00
d95f96505a *: refine join result generator to return MaxChunkSize chunk (#5715) 2018-01-31 20:00:59 +08:00
24333b3b29 *: don't record binlog when statement rollback (#5699) 2018-01-25 06:50:57 -06:00
f763e878a8 plan: push down binaryliterals as varstring. (#5665) 2018-01-25 16:17:19 +08:00
47cbc0bfce *: remove varsutil package, make Systems a private member of SessionVars (#5544) 2018-01-25 01:43:07 -06:00
88b8740724 *: avoid the generation of mysql.TypeNewDate (#5705) 2018-01-23 21:41:02 +08:00
888bc2a602 *: uniform the way to iterate rows within a Chunk (#5674) 2018-01-22 11:34:04 +08:00
fc6376981d *: remove GetSessionVars() in expression evaluation (#5683) 2018-01-22 11:04:32 +08:00
5bf8972460 aggregation: "group_concat" should not modify the argument during execution (#5664) 2018-01-17 22:01:36 +08:00
9f2ff293dd *: make MVMap.Get() be able to reuse the value buffer pre-allocated (#5644) 2018-01-16 15:15:25 +08:00
2550969cae aggregation, plan: split the presentation and evaluation layers of aggregation functions (#5635) 2018-01-15 15:48:03 +08:00
3ce567630b executor: store column's fieldType in executor (#5619) 2018-01-12 16:57:31 +08:00
4dd1fc208d codec, expression: support encoding a Chunk row (#5578) 2018-01-11 20:29:31 +08:00
f4fa60d306 executor, expression: support chunk for HashJoinExec (#5439) 2018-01-10 22:06:58 +08:00
4136b81c23 *: merge IntColumnRange with NewRange. (#5591) 2018-01-10 15:50:58 +08:00
5db9ac2506 types,util/chunk: refactor Time for Chunk. (#5571) 2018-01-09 10:12:27 +08:00
5692f459af expression: refine the type infer of group_concat (#5573) 2018-01-08 16:21:44 +08:00
ecbd60c3ff *: add arguement StatementContext to Encode functions. (#5566) 2018-01-06 17:31:08 +08:00
de992eb570 expression: only do a shallow copy when evaluating a "Column" expression (#5542) 2018-01-06 12:24:30 +08:00
07dc46d3cb expression: refactor hybrid type expressions (#5550) 2018-01-06 11:04:50 +08:00
bc459c5261 executor: support Chunk for HashAggExec (#5244) 2018-01-06 10:21:52 +08:00
8b149c3323 Prealloc / collides with package name (#5560) 2018-01-05 19:15:54 +08:00
73e47e0e30 plan: refine the design of schema (#5541) 2018-01-05 12:54:24 +08:00
97ae04a37c expression: consider time zone for builtin function curtime/sysdate/curdate (#5548) 2018-01-04 16:40:09 +08:00
fea4b02ff3 expression, types: "Flen" and "Decimal" of "TypeNewDecimal" should not be -1 (#5523)
* expression, types: "Flen" and "Decimal" of "TypeNewDecimal" should not be -1
2017-12-31 12:23:04 +08:00
b1e1a26151 types: refine Time type (#5521)
remove redundant fields, makes it easier to fit in Chunk.
2017-12-30 19:30:35 +08:00
f8177996e7 plan: refine code about maxonerow (#5501) 2017-12-29 14:48:01 +08:00
95a5c8ce5a expresion, executor: correct the type inference of function "sum" and "avg" (#5495) 2017-12-26 18:16:52 +08:00
76f9e3e03b statistics,expression: reduce allocation for DetachCondsForSelectivity, add a Filter function (#5482) 2017-12-26 15:01:28 +08:00
100bc58a83 parser, variable: fix #5478, make 'set transaction read only' works. (#5483) 2017-12-25 21:36:15 +08:00
04a91532b8 expression: fix return type and decimal len for builtin aggregation function 'avg' and 'sum' (#5292)
* expression: fix return type and decimal len for builtin aggregation function 'avg' and 'sum'

* Code format refine

* Code format refine

* Fix frac for avg
2017-12-25 21:15:37 +08:00
0dee2ab0e7 expression: fix VectorizedFilter (#5477)
* expression: fix VectorizedFilter

A filter may not be of Int type, we check the filter's type first or Call `EvalBool`.
Another solution is to wrap an ` != 0 ` to the expression, but that is not as simple as this one.

* *: add TODO
2017-12-25 11:48:20 +08:00
970e5b5684 *: replace JSON with BinaryJSON (#5460) 2017-12-21 15:20:17 +08:00
6b6afb6c55 expression, plan: support builtin aggregation function 'bit_or' (#5145) 2017-12-19 05:51:08 -06:00
0b5c0cf94d expression,plan: make function ExtractColumns more efficient (#5435)
The old recursive function signature make many unnecessary allocation:
func ExtractColumns(expr Expression) (cols []*Column)

Recursive call on this one would be much better:
func extractColumns(result []*Column, expr Expression, filter func(*Column) bool) []*Column
2017-12-18 22:41:45 -06:00
f8c0aaf0c9 parser, expression: support SEPARATOR in group_concat aggregate function (#5420) 2017-12-15 16:36:13 +08:00
f1e89cde19 *: use lower-case of github.com/sirupsen/logrus (#5400)
*: rename github.com/Sirupsen/logrus to github.com/sirupsen/logrus

* vendor: update pd

* vendor: update github.com/pingcap/tipb/go-mysqlx
2017-12-14 16:25:58 +08:00
12299b826a expression: support date_format push down (#5386)
* support date_format push down

* add expr_to_pb test

* Update vendor
2017-12-13 13:29:01 +08:00
6ca4382dba *: fix update JSON field. (#5345) 2017-12-11 11:39:14 +08:00
38f794d875 plan, executor: add physical proj and topn. (#5316) 2017-12-06 13:30:58 +08:00
c46f289d5a expression, plan: support builtin aggregation function 'bit_xor' (#5090) 2017-12-05 19:32:27 +08:00
6c68e41f73 store/tikv: use go fail for some tests. (#5280)
* store/tikv: use go fail for some tests.
2017-12-01 08:20:30 -08:00
640c4913e0 stats/selectivity: remove useless clone (#5283) 2017-12-01 21:22:55 +08:00
c6e8f36835 *: avoid double Close() executor during test (#5285) 2017-12-01 18:13:50 +08:00