Commit Graph

8026 Commits

Author SHA1 Message Date
0fbb980f9b stats: refine stats delta update (#6808) 2018-06-26 13:51:23 +08:00
c562bfff6f ddl:support table partition in alter table add partition (#6421)
support alter table add partition
2018-06-26 12:40:51 +08:00
99aba76c90 *: Make 'IF NOT EXISTS' great again in 'CREATE TABLE IF NOT EXISTS LIKE' syntax (#6896) 2018-06-26 12:24:57 +08:00
41f8ac1952 ddl: fix gofail data race (#6904) 2018-06-26 00:03:21 +08:00
3ac6d3a9f4 store/tikv: avoid holding write lock for long time (#6880)
Optimize RegionCache performance on send request failure.
2018-06-25 21:30:58 +08:00
6edbf58f5f ddl: speed up the operation of "create table" (#6861) 2018-06-25 21:06:40 +08:00
dd82195a40 ddl: set correct startHandle when add indices meets some errors (#6897) 2018-06-25 19:36:10 +08:00
9ff7a33b82 plan: fix a bug in topn_push_down rule. (#6899) 2018-06-25 19:07:59 +08:00
a9360655e8 plan: fix a bug when 'only_full_group_by' is set in sql_mode (#6734)
when 'only_full_group_by' is set in sql_mode, raise error for non-aggregated column in query without GROUP BY.

mysql> create table t(a bigint, b bigint, c bigint);                                                                                           Query OK, 0 rows affected (0.02 sec)

mysql> select a, max(b) from t;
ERROR 1140 (42000): In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'dc_test.t.a'; this is incompatible with sql_mode=only_full_group_by
2018-06-25 17:03:00 +08:00
a507ff3547 executor: polish comment (#6890)
Improve documentation.
2018-06-25 11:23:33 +08:00
e94df345e5 distsql, main: fix some typos. (#6885) 2018-06-23 21:51:55 +08:00
20c5675831 parser: support 'CREATE TABLE ... SELECT' syntax (#4754) (#6851) 2018-06-22 16:21:01 +08:00
1fbcc10650 server,mysql: support server-side cursors (#6648)
Implement server-side cursors by handling COM_STMT_FETCH command.
The client indicates that it wants to use cursor
by setting a flag in COM_STMT_EXECUTE
Please refer to https://dev.mysql.com/doc/internals/en/com-stmt-execute.html
Subsequently, the client acquires result rows repeatedly by COM_STMT_FETCH,
which will carry stmt-id and fetch size.
Please refer to https://dev.mysql.com/doc/internals/en/com-stmt-fetch.html
This commit only support forward-only, read-only cursor
2018-06-22 16:10:08 +08:00
48719d2019 stats: refine index row count estimation (#6869) 2018-06-22 15:48:36 +08:00
35b68b63ac expression, executor: extract expression to ProjExec from AggExec (#6839) 2018-06-22 15:25:44 +08:00
8859d0f0d8 util/goroutine_pool: change the recycle stratage from queue to stack (#6837)
If the pool organized as a queue, in a first in last out manner, all
goroutines tend to exist longer.
Organize the pool as a stack maybe result in less goroutines and be more
friendly to runtime scheduler.
2018-06-22 12:43:54 +08:00
865d74b916 config: enable TxnLocalLatches in default (#6874) 2018-06-22 11:52:30 +08:00
284fe1006e *: support select from partition table (#6642) 2018-06-22 11:38:51 +08:00
cb45eaa7f8 *: update errcheck rule (#6876) 2018-06-22 09:48:11 +08:00
8bec188b6a session: add a global/session variable 'tidb_disable_txn_auto_retry' (#6872) 2018-06-21 17:26:14 +08:00
5a6e739787 plan: index join can be chosen in more scenario. (#6664) 2018-06-21 13:48:38 +08:00
7a08c62433 executor: start hash join inner/outer workers together (#6856) 2018-06-20 22:58:52 +08:00
3c0bfc19b2 executor: improve performance for insert ignore on duplicate key update statement (#6760) 2018-06-19 20:28:06 +08:00
5022b5b2cc expression: fix err code in Regexp()/RegexpBinary() (#6854) 2018-06-19 13:59:29 +08:00
f21ac4af5f parser: allow comments end with multi asterisk (#6847) 2018-06-18 15:02:36 +08:00
5445ced722 remove gogo protobuf and update tipb again (#6836) 2018-06-15 10:39:49 +08:00
42675d97fb ddl: adjust the structure of ddl (#6449) 2018-06-14 17:13:50 +08:00
353d120868 vendor: update tipb's version (#6825) 2018-06-14 13:15:02 +08:00
c84a71d666 kv: correct comments mistake. (#6829) 2018-06-14 11:34:19 +08:00
3d7528cbb3 *: add tidb_hashagg_partial/final_concurrency (#6831) 2018-06-14 10:17:08 +08:00
e2c8c4e975 executor: init builder startTS in buildTableDual (#6830) 2018-06-13 20:03:57 +08:00
cf47199aca ddl: add M>=D checking for decimal/float/double column definition. (#6813)
For float(M,D), double(M,D) or decimal(M,D), M must be >= D (column 'a') in `create table` and `alter table change/modify/add column`
2018-06-13 11:37:38 +08:00
8143d3c53e ddl: reduce test time (#6821) 2018-06-13 10:45:55 +08:00
390e08bb87 expression: fix the wrong result of builtin function CONCAT_WS (#6762) 2018-06-12 19:54:40 +08:00
d2799801ae test: fix leak test (#6822)
make sure close dom/store in all test.
2018-06-12 17:14:22 +08:00
28c80f34fd plan: change the value of descScanFactor (#6812)
change the value of descScanFactor to make it compatible with tikv due to pingcap/tikv#3124 .
Now, if each row has only one version, the reverse scan's performance is near the performance of the speed of scan. If there's a lot of version, it will become about 1.8x than scan.
So we decrease the factor from 5 to 2.
2018-06-12 16:33:52 +08:00
0ab1b228c0 config, variable: add memory quota config for a query (#6788) 2018-06-12 13:08:28 +08:00
69fdc8d610 plan: fix a bug in predicate push down phase. (#6809)
* plan: fix a bug in `predicate push down` phase.
2018-06-12 10:26:26 +08:00
95ac336e92 stroe: use first backoff error rather than last backoff error to generate mysql error (#6798) 2018-06-11 22:57:28 +08:00
d85334d3e9 executor, session: replace new line and add user in query log (#6748)
So we can grep a keyword to get the query, without the need to look up the query in the full log.
user name is also needed for auditing purpose.
2018-06-11 20:38:36 +08:00
1ac0c36985 *: speed up unit test (#6806)
set EnableSplitTableRegion to false,
move global variable cache to domain to pass test.
rewrite a ddl test that takes more than 30s.
2018-06-11 16:29:30 +08:00
37c41fd7ea *: support 'show privileges' (#6792) 2018-06-11 15:43:14 +08:00
9ec13e8898 table/tables: modify AddRecord to handle table partition (#6684)
If table partition is used, AddRecord will add records to the
partition, according to the partition definitions.
2018-06-11 11:06:36 +08:00
e3f1cfbf06 ddl:check column count limit when add column (#6778) 2018-06-11 09:34:12 +08:00
08817bdb1b parser: support drop column cascade syntax, parse it and ignore it. (#6791) 2018-06-10 18:00:42 +08:00
182b7eb11f importer: fix typo and a broken link (#6795) 2018-06-09 19:59:03 +08:00
b812cb517e expression, util: DecodeDecimal return real precision and frac (#6732) 2018-06-08 15:37:32 +08:00
12d4c5aea5 *: support 'show master status' (#6785) 2018-06-08 12:36:12 +08:00
7029e5ee85 tidb-server: check run-ddl is false when using mocktikv (#6781) 2018-06-08 11:31:17 +08:00
8e00ca98f4 plan, parser: fix wrong LIMIT/ORDER BY check of the UNION statement (#6783) 2018-06-08 10:52:08 +08:00