Commit Graph

81 Commits

Author SHA1 Message Date
dc969f0eb8 executor: Add replace support for LOAD DATA (#31303)
ref pingcap/tidb#24515
2022-01-18 12:31:44 +08:00
42e009a538 executor: Fix a panic when using on duplicate update (#31287)
close pingcap/tidb#28078
2022-01-05 18:50:37 +08:00
fe1aaf2fd7 topsql: introduce stmtstats and sql execution count (#30277) 2021-12-21 15:43:47 +08:00
b11171aa71 topsql: distinguish the row and index operation type (#29044) 2021-11-24 10:17:51 +08:00
1eec13120d planner: lazy the subquery-more-than-1-row error after the insert duplicate is actually triggered (#29270) 2021-11-12 01:43:05 +08:00
xhe
94e30df8e2 parser: fix compiling, add unit tests (#28700) 2021-10-11 23:15:25 +08:00
267a3b8162 executor: add auto id allocator execution runtime stats (#28013) 2021-10-08 17:35:24 +08:00
e5bf177cd9 *: Use snapshot interceptor to handle temporary table's insert/update/delete (#28218) 2021-09-23 10:00:46 +08:00
7755d25aba *: Integrate SkyWalking-eyes to check license headers in CI and fix licenses headers (#27198) 2021-08-16 18:52:00 +08:00
6a1e5215df executor: Add insert/replace ignore/on duplicate key support for local temporary table (#26636) 2021-08-04 14:19:07 +08:00
051524ce95 kv: remove DelOption method (#24762) 2021-05-25 17:53:34 +08:00
2580240dde *: pass sql, plan digest down to KV request (#24854) 2021-05-25 15:47:33 +08:00
d2bdfd51b7 store/tikv: move transaction options out to /kv (#24619) 2021-05-13 17:49:39 +08:00
efe172b0e0 store/tikv:move option from kv to tikv, and make define as a normal int (#23171) 2021-03-22 20:13:36 +08:00
24c9df147d *: refactor table.Table interface, clean up unnecessay methods (#22430) 2021-03-02 19:48:54 +08:00
c7165bc518 executor, planner: ON DUPLICATE UPDATE can refer to un-project col (#14412)
Co-authored-by: Kenan Yao <cauchy1992@gmail.com>
Co-authored-by: ti-srebot <66930949+ti-srebot@users.noreply.github.com>
2021-01-06 19:03:51 +08:00
0735a0c924 executor: fix insert ignore into not exists partition (#21904)
Signed-off-by: lysu <sulifx@gmail.com>
2020-12-23 17:19:29 +08:00
2f067c0542 *: redact arguments for Error (#20436) 2020-10-21 14:44:08 +08:00
0017a1717e *: fix the bug about the insertRuntimeStat.String() (#20190)
Signed-off-by: jyz0309 <45495947@qq.com>
2020-09-27 18:48:43 +08:00
bb354b0c30 *:Record the time consuming of memory operation of Insert Executor in Runtime Information (#19574) 2020-09-23 20:57:40 +08:00
968d0d76ae executor: cleanup useless code in batch checker (#19511)
Signed-off-by: Shuaipeng Yu <jackysp@gmail.com>
2020-09-01 12:41:52 +08:00
e356136b72 *: annotate execution info in runtime/trace (#19407)
Co-authored-by: ti-srebot <66930949+ti-srebot@users.noreply.github.com>
2020-08-27 11:23:36 +08:00
650be7c438 execute: add rpc runtime stats information for insert/update/replace statement (#19334) 2020-08-24 16:10:33 +08:00
4eb9d83eae *: allow different shard_row_id prefixes in one transaction (#18181)
* *: allow different shard_row_id prefixes in one transaction

* Apply suggestions from code review

Co-authored-by: tangenta <tangenta@126.com>

* Update sessionctx/variable/session.go

Co-authored-by: tangenta <tangenta@126.com>

* add comments

* add unit test

* add var validation

* update builtinGlobalVariable

Co-authored-by: tangenta <tangenta@126.com>
2020-06-29 14:38:06 +08:00
6fa2badf38 util: move codec logic into tablecodec package (#18173)
* move codec logic into tablecodec package

* add key generation using physical table id

* remove using prefix

* change comment

* fix conclict

Co-authored-by: ti-srebot <66930949+ti-srebot@users.noreply.github.com>
2020-06-24 17:43:10 +08:00
9135d1d0d8 executor: subtract the old txn size when track the mem usage (#18000) 2020-06-17 11:29:47 +08:00
73c4673f30 *: support update/delete/insert ignore/duplicate update in single cluster index table (#17721) 2020-06-08 20:55:31 +08:00
d66d5028da *: support plain insert on cluster index table (#17674) 2020-06-05 13:23:43 +08:00
3176b00c02 executor: fix the issue that UNIQUE constraint on boolean column results in an incorrect result in a comparison (#17245) 2020-05-20 13:55:18 +08:00
1417ba2288 *: fix a bug that don't handle truncate properly for virtual generated column (#17217) 2020-05-14 20:57:55 +08:00
6814f8c94b *: refactor Handle in table package (#16807) 2020-04-27 10:04:50 +08:00
af376db3dc *: refactor Handle in tablecodec and rowcodec (#16705)
Co-authored-by: pingcap-github-bot <sre-bot@pingcap.com>
2020-04-23 18:55:59 +08:00
c81e903804 *: use the revertable sandbox to buffer mutations (#15931) 2020-04-03 14:54:27 +08:00
88dd552a6d *: fix autoid allocation to avoid quickly exhaustion (#15261) 2020-03-13 10:50:03 +08:00
e00887e3b9 executor: add memTracker for UpdateExec (#14299) 2019-12-31 21:59:31 +08:00
c1bc9ffe5b *: add memory tracker for InsertExec and ReplaceExec (#14179) 2019-12-30 11:43:01 +08:00
73213999ce executor: reuse chunk row for insert on duplicate update (#12847) 2019-10-23 21:57:07 +08:00
41ac571d7b *: remove the LightningMode from TiDB (#12466) 2019-09-29 15:12:01 +08:00
20dc99995a executor: clean up the batch checker code (#12338) 2019-09-24 19:02:45 +08:00
213b783dc6 executor: do not use batchChecker in 'insert ignore into ...' (#12122) 2019-09-10 19:42:00 +08:00
64298f0278 *: refactoring the code of batchChecker (#12108)
batchChecker is difficult to maintain, we should get rid of it.
In this commit, I catch the BatchGet result into the snapshot, in this way we can
achieve the same goal as the batchChecker
2019-09-10 16:36:49 +08:00
4cd5d15d97 *: improve plan cache param eval and insert const (#10746) 2019-08-27 11:11:01 +08:00
d210889a6c *: trace the execution of the insert operation (#11667) 2019-08-09 14:22:03 +08:00
036e7e207d *: support new 'log' format for trace (#11681) 2019-08-09 12:43:33 +08:00
28c0b1d226 executor: tiny refactor the insertRows function (#11643) 2019-08-07 21:28:44 +08:00
9385c6eca0 executor: fix a bug of 'insert on duplicate update' statement on partitioned table (#11204)
In this statement: insert into t1 set a=1,b=1 on duplicate key update a=1,b=1
Batch checker find a=1,b=1 is duplicated, then in the "on duplicate update" step,
it uses the non-partitioned table to get the old row, which is a bug.
getOldRow returns this error: (1105, u'can not be duplicated row, due to old row not found. handle 1 not found')
2019-07-11 15:24:27 +08:00
d244723a5e executor: remove unused structure RecordBatch (#10891) 2019-06-26 15:26:16 +08:00
c8d1ff7ca6 *: replace 'logutil.Logger(context.Background())' with 'logutil.BgLogger()' (#10866) 2019-06-21 19:13:31 +08:00
8183f35563 executor: tiny clean up (#10875)
code refactor for the tracing related code
2019-06-20 16:35:59 +08:00
1c4ebee8de executor: should handle virtual columns when fetching duplicate rows in batchChecker (#10370) 2019-05-08 10:18:52 +08:00