Commit Graph

33 Commits

Author SHA1 Message Date
f738ba24ad executor: replace logger with zap logger (#9521) 2019-03-14 15:14:38 +08:00
f8d90202c0 use single batch for insert (#9406) 2019-03-07 11:52:10 +08:00
00c4ff4fa9 *: refactor Executor.Next() to receive RecordBatch (#8994) 2019-01-14 15:04:36 +08:00
e06c87d3c1 add an option for AddRecord and Create (#8884) 2019-01-02 11:30:53 +08:00
3040788655 *: make errcheck work again (#8795) 2018-12-25 17:16:52 +08:00
a7907ede7a *: remove fail field from TxnState (#8712)
Originally, `fail` is added to simplify error handling, avoiding large changes on
the Txn() interface API. But it turns out that `fail` becomes the root of many bugs.
So this commit remove the `fail` and make an API refactory.
2018-12-20 16:36:12 +08:00
7528a059cf executor/server/session: add extra info message sent to mysql client (#8285) 2018-12-19 15:32:49 +08:00
7056bb0d32 executor, session: refine insert unsigned bigint autoIncreID (#8181) 2018-12-18 23:01:10 +08:00
ce622ec6d8 session: move more session vars to stmt context for retrying (#8034) 2018-12-10 16:39:43 +08:00
93acd10f53 *: add context.Context to NewTxn(), tiny refactor (#8530) 2018-12-06 17:45:16 +08:00
c137cada68 *: change golang.org/x/net/context to standard context (#8579) 2018-12-05 13:54:00 +08:00
cb4d5bd988 executor: support batch insert for insert values statement (#8420) 2018-12-04 17:44:50 +08:00
3742a0d602 *: Txn() function signature refactor and remove ActivePendingTxn() (#8327)
* change Txn() function signature to Txn(active bool)
* ActivePendingTxn() is not used any more because Txn() does the work
* change executor builder getStartTS() uint64 to getStartTS() (uint64, error)
2018-11-16 11:10:39 +08:00
693ff90193 [cherry-pick]*: add a variable to control whether we can write _tidb_rowid (#8187) 2018-11-05 22:45:32 +08:00
32b1dbd8d5 *: rename "github.com/pkg/errors" to "github.com/pingcap/errors" (#8136)
We import "github.com/pkg/errors" in the code, and actually put
the "github.com/pingcap/errors" there in the vendor path.
That's a dirty hack, and prevent the introduce of Go module.
2018-11-01 16:09:07 +08:00
89dda9d9a8 *: move parser to a separate repository (#8036) 2018-10-25 11:12:10 +08:00
d8b52b82a8 executor: improve wide table insert & update performance (#7935) 2018-10-23 18:07:54 +08:00
f3148da27f executor: add an variable to compatible with MySQL insert for OGG (#7863) 2018-10-17 10:19:04 +08:00
d7a59ec5a3 executor: remove some useless code and avoid some redundancy check (#7639) 2018-10-12 12:56:02 +08:00
05b37de16e *: use chunk grow for simple executor (#7540) 2018-09-27 09:07:51 +08:00
cb03f2bec1 move from juju/errors to pkg/errors (#7151) 2018-09-12 15:42:20 +08:00
9070bb6b86 executer: fix the last_insert_id in insert on duplicate key update (#7534) 2018-08-30 14:16:30 +08:00
1558a9c096 executor: fix duplicate row check when chunk size is small (#7393) 2018-08-17 16:52:52 +08:00
1f8710762d execute/insert: refine data truncate error msg (#7401) 2018-08-16 00:02:45 +08:00
2fba9931c7 *: remove DatumRow (#7165) 2018-07-26 19:42:58 +08:00
b5f9b35a45 plan: refactor the code of building Insert. (#7068) 2018-07-25 22:41:42 +08:00
ab332eba2a executor: BadNullError should be ignored by insert ignore statement (#6465) 2018-06-29 13:15:31 +08:00
ebf0a9b87b executor: reduce memory usage of insert select from statement (#6891) 2018-06-26 16:29:24 +08:00
3c0bfc19b2 executor: improve performance for insert ignore on duplicate key update statement (#6760) 2018-06-19 20:28:06 +08:00
96a5109ebb types: handle NULL datum if we need convert it to string. (#6761)
* types: handle `NULL` when we need to
2018-06-06 20:15:48 +08:00
4a36ef721c executor: DML use DatumRow (#6720) 2018-06-01 10:22:02 +08:00
ce071f5dd3 refactor load data (#6665) 2018-05-29 21:19:14 +08:00
36c3f0dd36 split write.go (#6660) 2018-05-28 14:29:42 +08:00