Commit Graph

42 Commits

Author SHA1 Message Date
c45111d9f6 stats: use more compact structure for histograms (#5539)
* stats: use more compact structure for histograms

* address comments

* address comments

* refine code

* address comment
2018-01-05 20:43:01 +08:00
fa62e9fd01 *: merge ranger.IndexRange and ranger.ColumnRange. (#5485) 2017-12-26 16:08:36 +08:00
6a306e4f27 executor: support Chunk for AnalyzeExec (#5452) 2017-12-21 11:17:20 +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
ee0d3f37a2 types, ranger: move Range to package ranger. (#5231) 2017-11-27 18:17:29 +08:00
fb610e6429 *: change executor Next() interface to Next(goctx.Context) (#5223) 2017-11-26 21:17:33 -06:00
02f6bb27c7 *: remove goCtx from session struct (#5174)
1. go context should not be stored
2. change Executor interface to Open(goctx.Context)
3. many other changes forced by this refactor
2017-11-22 02:17:38 -06:00
f828016e9f *: move sessionctx/domainctx.go to domain package (#5168) 2017-11-22 13:41:58 +08:00
4a75a103e4 executor: some clean up. (#5156) 2017-11-20 15:41:12 +08:00
cd5c665c8c executor: use baseExecutor for all Executors (#5087)
Makes it easy to add new method on Executor interface.
2017-11-13 21:06:31 +08:00
30a080db5c *: build and use count-min sketch (#5042) 2017-11-08 22:34:01 +08:00
62433663e5 util/types: change types path (#5007)
* util/types: change types path
2017-11-04 10:37:14 -05:00
0616a2fd15 executor, distsql: remove useless code. (#4991) 2017-11-02 19:40:59 +08:00
d4adb77e4a executor: set default value for analyze push down (#4610) 2017-09-22 06:28:06 -05:00
31f7b9c3b6 *: implement analyze columns push down (#4522) 2017-09-18 14:21:10 +08:00
a7dc21c1e8 *: implement analyze index push down (#4489) 2017-09-14 10:34:12 +08:00
88e1666ac6 *: change the log package to logrus (#4452) 2017-09-08 00:45:07 -05:00
0e438de9ff *: move sample collector from executor to stats (#4468) 2017-09-08 12:21:10 +08:00
e7e40193f9 distsql,store/tikv: fix analyze table OOM (#4399) 2017-09-05 20:56:44 +08:00
21a417ad65 executor: make auto analyze more conservative (#4284) 2017-08-24 20:25:50 +08:00
7c273c0f29 *: implement auto analyze (#4141) 2017-08-18 18:42:28 +08:00
c7c248eb91 executor: change struct row to []types.Datum (#4072) 2017-08-09 18:37:57 +08:00
520785b149 *: fix possible race in stats update (#3987) 2017-08-03 20:54:15 +08:00
dff73cc6e4 *: Modify the Makefile for go vet (#3900) 2017-07-30 23:02:52 -05:00
e0e77d3bac *: reduce analyze table read when table contains PK (#3783)
* *: reduce analyze table read when table contains PK

* fix ci

* *: address comment

* fix ci

* statistics:make comment more accurate
2017-07-18 05:07:17 -05:00
d0358ceb1c executor, statistics: remove useless code and rename file name. (#3564) 2017-06-29 14:52:19 +08:00
7ae996c411 Set stats lease. (#3408) 2017-06-07 18:19:52 +08:00
e1debd4505 executor: analyze executor construct new distsql exec. (#3410) 2017-06-07 11:10:25 +08:00
a81726a42f executor, statistics: analyze with null count. (#3336) 2017-05-26 16:44:09 +08:00
ad52a2462c executor: add open inteferce for Executor. (#3221) 2017-05-09 21:13:22 +08:00
c237781cad plan, executor: make Analyze a Plan (#3130)
* executor: remove indexExec's depedency on indexPlan

* plan, executor: make Analyze a Plan

* address comment

* address comment

* fix gofmt
2017-04-26 10:36:44 +08:00
0316046e33 executor: fix race. (#3096) 2017-04-20 16:39:22 +08:00
0f2afbf44b statistics: prepare for analyze part of a table (#3062)
We need to make somthing like 'analyze index...' work, this is only the first step.
2017-04-20 14:05:51 +08:00
10e005f1e6 statistics: every histogram use its own version to update. (#3059)
after we support delta updae in #3053 , we shouldn't load the whole histogram when we find the table version updated. Every histogram has it's own version.
2017-04-17 21:13:18 +08:00
8a87d775b8 statistics: remove rlock using copy on write. (#3029)
every time we update stats cache, we copy the whole map. By this way we can avoid rlock.
2017-04-12 10:22:22 +08:00
4ce98317ce *: put the stats map to stats handle to make test more easier. (#3014) 2017-04-10 17:01:00 +08:00
e3a0dc68ce *: use column id to get stats instead of column offset (#3019)
Now we assume that the order of columns in stats matches the column offsets. It will return wrong stats sometimes.
If we analyze when a table is (c1, c2) and then drop c1, the c2's offset will become 0. But in stats the position of 0 is c1. I have added this case to test.
2017-04-10 16:03:20 +08:00
16cefef717 executor, statistics: use FM sketch to estimate NDV (#2966) 2017-04-01 15:03:54 +08:00
ee7df059e3 statistics: refactor package. (#2913) 2017-03-29 11:32:40 +08:00
60bcd987d5 plan/statistics: concurrent build columns (#2713) 2017-03-22 22:16:45 +08:00
66085c3f12 *: add system table mysql.stats_meta (#2766) 2017-03-16 14:46:28 +08:00
4d9b70f0a6 plan, executor: give special treat for index columns when analyze table (#2436)
* plan/statistics: statistics support add index info
2017-01-26 11:24:53 +08:00