Commit Graph

154 Commits

Author SHA1 Message Date
iosmanthus eb0bd61645
attach keyspace_id for manual compact request (#737) 2023-03-13 14:53:59 +08:00
MyonKeminta f555fdd2c9
txn: support force locking and lock only if exists be used together (#727)
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
Co-authored-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
2023-03-09 18:08:32 +08:00
Yongbo Jiang df993878bd
*: update pd client (#734)
Signed-off-by: Cabinfever_B <cabinfeveroier@gmail.com>
2023-03-09 11:34:04 +08:00
Yongbo Jiang 3f7860f109
region_request: handle resource group error before Backoff (#719)
Signed-off-by: Cabinfever_B <cabinfeveroier@gmail.com>
Co-authored-by: disksing <i@disksing.com>
2023-03-02 13:40:57 +08:00
Yongbo Jiang e2da552702
*: Update pd client (#722)
Signed-off-by: Cabinfever_B <cabinfeveroier@gmail.com>
Co-authored-by: disksing <i@disksing.com>
2023-02-28 17:15:02 +08:00
disksing 891ef575be
update golang.org/x/net (#717)
Signed-off-by: disksing <i@disksing.com>
2023-02-27 13:43:10 +08:00
iosmanthus e0e6019f8a
attach keyspace_id to tikv/tiflash requests (#682) 2023-02-20 13:10:03 +08:00
ShuNing 95ebf6a863
upgrade pd client version (#701)
Signed-off-by: nolouch <nolouch@gmail.com>
2023-02-09 12:40:22 +08:00
disksing 6a1ecaa292
integration: update tidb to master (#695)
Signed-off-by: disksing <i@disksing.com>
2023-02-07 17:00:07 +08:00
disksing 9b3ecc1dca
*: update pd client (#694)
Signed-off-by: disksing <i@disksing.com>
2023-02-07 12:00:04 +08:00
Hangjie Mo 56c521f109
internal: update `FlashbackInProgress` error msg (#692)
Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>
2023-02-06 17:34:59 +08:00
Hu# 8fd09cd88c
config support both path and names (#683)
Signed-off-by: HuSharp <jinhao.hu@pingcap.com>
2023-02-02 18:11:45 +08:00
Hu# 3c20a793ba
update tidb version (#676)
Signed-off-by: HuSharp <jinhao.hu@pingcap.com>
2023-01-20 14:57:33 +08:00
JmPotato ed6d507bc7 Update the go.mod
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 20:10:24 +08:00
HuSharp 158f72c6f3 update pd client
Signed-off-by: HuSharp <jinhao.hu@pingcap.com>
2023-01-19 18:06:38 +08:00
HuSharp 1679631b9a update tidb
Signed-off-by: HuSharp <jinhao.hu@pingcap.com>
2023-01-19 16:23:55 +08:00
JmPotato 320af6501e Introduce the switch
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 16:14:47 +08:00
disksing bd55989520
fix integration test (#673)
Signed-off-by: disksing <i@disksing.com>
2023-01-18 20:19:38 +08:00
Hu# 2a02753d9c
client: update pd/client to repair kvproto compatibility (#667)
Signed-off-by: HuSharp <jinhao.hu@pingcap.com>
2023-01-18 19:18:40 +08:00
David f313ddf58d
reformat codec and add keyspace support (#649)
Signed-off-by: David <8039876+AmoebaProtozoa@users.noreply.github.com>
2023-01-10 15:15:33 +08:00
Zwb c20405f345
support witness peers (#633)
Signed-off-by: Wenbo Zhang <ethercflow@gmail.com>
2023-01-09 20:53:19 +08:00
wjHuang 2d2a3fa00e
*: remove the support of `amend transaction` (#635)
* done

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

* done

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

* fix test

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

* fix lint

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

* fix test

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

* fix

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>

Signed-off-by: wjhuang2016 <huangwenjun1997@gmail.com>
2023-01-09 16:30:27 +08:00
glorv 4e1d38d8f8
add resource group name in request context (#650)
Signed-off-by: glorv <glorvs@163.com>
2023-01-09 15:18:45 +08:00
MyonKeminta 0f633e4163
Fix incorrect insertion behavior in aggressive locking mode and add tests (#651)
* Add more tests and fix the bug of insert in aggressive locking

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>

* Fix tests

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>

* Fix insert test

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>

* Avoid primary re-selecting in TestAggressiveLockingLoadValueOptionChanges

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>

* Address comments

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>

Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
Co-authored-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
2023-01-04 15:24:09 +08:00
tiancaiamao 43601f3d49
go.mod: update github.com/tiancaiamao/gp (#652)
Signed-off-by: tiancaiamao <tiancaiamao@gmail.com>
2022-12-30 17:39:35 +08:00
tiancaiamao 018c59dbd8
bind the goroutine pool with store and close on Close (#645)
Signed-off-by: tiancaiamao <tiancaiamao@gmail.com>
2022-12-26 16:01:48 +08:00
tiancaiamao 809eb2d10f
use goroutine pool to avoid the `runtime.newstack` call (#637)
Signed-off-by: tiancaiamao <tiancaiamao@gmail.com>
2022-12-14 16:16:36 +08:00
MyonKeminta 5dc09b15e7
Add aggressive-locking mechanism and support locking with conflict (#528)
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
2022-12-01 11:03:39 +08:00
Hangjie Mo 857772dd09
go.mod: update kvproto to adapt flashback (#626)
* go.mod: update kvproto to adapt flashback

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

* update go.mod

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>
2022-11-29 11:21:17 +08:00
xiongjiwei e9db9e6a8a
make `txn_source` be u64 type (#618)
Signed-off-by: xiongjiwei <xiongjiwei1996@outlook.com>
2022-11-21 10:50:13 +08:00
xiongjiwei e72337b647
txn: add `txn_source` field in txn (#617)
Signed-off-by: xiongjiwei <xiongjiwei1996@outlook.com>
2022-11-15 13:18:26 +08:00
YangKeao 8f35d3a669
upgrade tidb in integration test (#614)
Signed-off-by: YangKeao <yangkeao@chunibyo.icu>
2022-11-02 10:57:41 +08:00
YangKeao 30e803b708
implement the external timestamp client (#610)
Signed-off-by: YangKeao <yangkeao@chunibyo.icu>
2022-10-31 14:32:02 +08:00
Ping Yu f0ef29bccd
rawkv: permit empty value (#612)
Signed-off-by: pingyu <yuping@pingcap.com>
2022-10-31 12:25:56 +08:00
ekexium 6c9c7c7c58
Fix the false positive assertion error caused by loss of pessimistic locks (#596)
Signed-off-by: ekexium <eke@fastmail.com>
2022-10-26 16:34:54 +08:00
JmPotato 91be9c6ce6
Introduce the FlashbackNotPrepared error (#606)
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2022-10-17 17:26:35 +08:00
Yilin Chen 6def8d7b90
Fix the missing unlock in extractKeyExistsErr (#603)
Signed-off-by: Yilin Chen <sticnarf@gmail.com>

Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-10-12 15:48:56 +08:00
Hangjie Mo 51f3bd3944
*: Support kv_prepare_flashback_to_version cmd (#592)
Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>
2022-09-29 19:13:18 +08:00
ekexium 426055b575
Distinguish different types of write conflicts (#583)
* distinguish different types of write conflicts

Signed-off-by: ekexium <eke@fastmail.com>

* update kvproto; add write conflict reason

Signed-off-by: ekexium <eke@fastmail.com>

Signed-off-by: ekexium <eke@fastmail.com>
Co-authored-by: Yilin Chen <sticnarf@gmail.com>
2022-09-08 19:49:57 +08:00
TonsnakeLin 080fdfe665
extend the scope of using lock_only_if_exists (#582)
Signed-off-by: TonsnakeLin <lpbgytong@163.com>
2022-09-07 20:09:47 +08:00
JmPotato e425355a10
*: introduce the non-retryable error FlashbackInProgress (#579)
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2022-09-06 14:28:21 +08:00
TonsnakeLin fed87c9939
PessimisticLock: Lock the specified key only if the key exists (#561)
* optimize for lock if exists

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* fix bugs for lock if exists

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* optimize lock info

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* fix bugs

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* remove the contrl flag for lock stats

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* update kvproto

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* change to LockOnlyIfExists

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* update kvproto

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* change to LockOnlyIfExists

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* make test pass

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* Update txnkv/transaction/txn.go

Co-authored-by: MyonKeminta <9948422+MyonKeminta@users.noreply.github.com>
Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* *: add getPDClient to rawKV public api (#570)

Signed-off-by: dongxu <i@huangdx.net>

Signed-off-by: dongxu <i@huangdx.net>
Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* Update README.md (#571)

Signed-off-by: dongxu <i@huangdx.net>
Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* update dependency of integration test (#572)

Signed-off-by: cfzjywxk <lsswxrxr@163.com>

Signed-off-by: cfzjywxk <lsswxrxr@163.com>
Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* Support postponed conflict check (#556)

* replace kvproto

Signed-off-by: ekexium <eke@fastmail.com>

* support NeedConflictCheck

Signed-off-by: ekexium <eke@fastmail.com>

* fix mutation encoding

Signed-off-by: ekexium <eke@fastmail.com>

* support temporary flag

Signed-off-by: ekexium <eke@fastmail.com>

* update kvproto

Signed-off-by: ekexium <eke@fastmail.com>

* fix style

Signed-off-by: ekexium <eke@fastmail.com>

* add an option to enable the behavior

Signed-off-by: ekexium <eke@fastmail.com>

* replace AfterCheckPoint with existing canModity

Signed-off-by: ekexium <eke@fastmail.com>

* UpdateFlag do not unset temporary flag

Signed-off-by: ekexium <eke@fastmail.com>

* remove unused function

Signed-off-by: ekexium <eke@fastmail.com>

* update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

* fix test

Signed-off-by: ekexium <eke@fastmail.com>

* do no unset flag on read

Signed-off-by: ekexium <eke@fastmail.com>

* update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

* update comment

Signed-off-by: ekexium <eke@fastmail.com>

Signed-off-by: ekexium <eke@fastmail.com>

* add testcase

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* add test case

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* unset pk if lockifexits failed

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* fix format

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* LockOnlyIfExists only when pk selected

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* remove test function to txn_probe

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* add more info to error

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* add more info to error

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

* add protection for input key

Signed-off-by: TonsnakeLin <lpbgytong@163.com>

Signed-off-by: TonsnakeLin <lpbgytong@163.com>
Signed-off-by: dongxu <i@huangdx.net>
Signed-off-by: cfzjywxk <lsswxrxr@163.com>
Signed-off-by: ekexium <eke@fastmail.com>
Co-authored-by: MyonKeminta <9948422+MyonKeminta@users.noreply.github.com>
Co-authored-by: dongxu <i@huangdx.net>
Co-authored-by: cfzjywxk <lsswxrxr@163.com>
Co-authored-by: ekexium <eke@fastmail.com>
Co-authored-by: Yilin Chen <sticnarf@gmail.com>
2022-09-06 09:50:26 +08:00
JmPotato 87f5f61897
Support the kv_flashback_to_version cmd (#578)
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2022-09-05 11:36:49 +08:00
ekexium 0f6bff3c57
update tidb dependency of integration tests & use go 1.19 (#577)
* update tidb dependency of integration tests

Signed-off-by: ekexium <eke@fastmail.com>

* use go 1.19

Signed-off-by: ekexium <eke@fastmail.com>

* Revert "use go 1.19"

This reverts commit 3d954d6fd2.

Signed-off-by: ekexium <eke@fastmail.com>

* use go 1.19 in compatibility test

Signed-off-by: ekexium <eke@fastmail.com>

Signed-off-by: ekexium <eke@fastmail.com>
2022-09-02 14:56:27 +08:00
ekexium 0130f76738
Support postponed conflict check (#556)
* replace kvproto

Signed-off-by: ekexium <eke@fastmail.com>

* support NeedConflictCheck

Signed-off-by: ekexium <eke@fastmail.com>

* fix mutation encoding

Signed-off-by: ekexium <eke@fastmail.com>

* support temporary flag

Signed-off-by: ekexium <eke@fastmail.com>

* update kvproto

Signed-off-by: ekexium <eke@fastmail.com>

* fix style

Signed-off-by: ekexium <eke@fastmail.com>

* add an option to enable the behavior

Signed-off-by: ekexium <eke@fastmail.com>

* replace AfterCheckPoint with existing canModity

Signed-off-by: ekexium <eke@fastmail.com>

* UpdateFlag do not unset temporary flag

Signed-off-by: ekexium <eke@fastmail.com>

* remove unused function

Signed-off-by: ekexium <eke@fastmail.com>

* update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

* fix test

Signed-off-by: ekexium <eke@fastmail.com>

* do no unset flag on read

Signed-off-by: ekexium <eke@fastmail.com>

* update tidb dependency

Signed-off-by: ekexium <eke@fastmail.com>

* update comment

Signed-off-by: ekexium <eke@fastmail.com>

Signed-off-by: ekexium <eke@fastmail.com>
2022-08-30 15:38:39 +08:00
cfzjywxk 389101f073
update dependency of integration test (#572)
Signed-off-by: cfzjywxk <lsswxrxr@163.com>

Signed-off-by: cfzjywxk <lsswxrxr@163.com>
2022-08-25 11:57:45 +08:00
cfzjywxk 0d0ae0dcfb
txn: seperate prewrite and commit in detail information and add clone methods (#567)
* seperate the prewrite and commit primary in runtime info

Signed-off-by: cfzjywxk <lsswxrxr@163.com>

* fix the integration test

Signed-off-by: cfzjywxk <lsswxrxr@163.com>

Signed-off-by: cfzjywxk <lsswxrxr@163.com>
2022-08-18 16:48:34 +08:00
Hangjie Mo 0cdc7c1d0f
go.mod: update pd/client (#554)
* go.mod: update pd/client

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

* go mod tidy

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

* update go.mod in it

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>

* fix test

Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>
2022-07-25 17:08:34 +08:00
haojinming aa9ded37d1
add checksum for apiv2 (#549)
* add checksum for apiv2

Signed-off-by: haojinming <jinming.hao@pingcap.com>

* fix test

Signed-off-by: haojinming <jinming.hao@pingcap.com>

* fix test

Signed-off-by: haojinming <jinming.hao@pingcap.com>

* address review comments

Signed-off-by: haojinming <jinming.hao@pingcap.com>

* address review comments

Signed-off-by: haojinming <jinming.hao@pingcap.com>

* add unit test for EncodeEncodeV2KeyRanges

Signed-off-by: haojinming <jinming.hao@pingcap.com>

Co-authored-by: iosmanthus <dengliming@pingcap.com>
2022-07-20 14:42:24 +08:00
Weizhen Wang 86d51ba7eb
*: update google/btree to improve performance (#547)
* *: update google/btree to improve performance

Signed-off-by: Weizhen Wang <wangweizhen@pingcap.com>

* update ci

Signed-off-by: Weizhen Wang <wangweizhen@pingcap.com>
2022-07-18 16:02:14 +08:00