Commit Graph

142 Commits

Author SHA1 Message Date
JmPotato 8553f26149 Fix the test
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 16:55:26 +08:00
JmPotato 08694efec4 Fix the check
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 16:31:47 +08:00
JmPotato 320af6501e Introduce the switch
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 16:14:47 +08:00
JmPotato 88f730126e Merge the upstream
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 12:19:51 +08:00
JmPotato 494bebd702 Rename
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-19 11:50:30 +08:00
iosmanthus 7409e690af
check API V2 key in DecodeKey (#666)
Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
2023-01-19 10:13:17 +08:00
disksing bd55989520
fix integration test (#673)
Signed-off-by: disksing <i@disksing.com>
2023-01-18 20:19:38 +08:00
JmPotato 35b648cf98 Address the comments
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-18 20:15:50 +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
JmPotato 6ee294fedf Introduce the resource control client
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2023-01-18 17:14:24 +08:00
Smilencer f2ff1ce65d
add tombstone check (#660)
Signed-off-by: Smityz <smityz@qq.com>
Co-authored-by: disksing <i@disksing.com>
2023-01-12 13:23:02 +08:00
Yilin Chen a2964b7151
Add a background region cache GC goroutine (#664)
* Add a background region cache GC goroutine

Signed-off-by: Yilin Chen <sticnarf@gmail.com>

* Change interval to 1s and regionPerRound to 50

Signed-off-by: Yilin Chen <sticnarf@gmail.com>

Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2023-01-11 16:47:55 +08:00
Yang Zhang 1b1a805e61
Support learner replica read (#643)
Signed-off-by: Yang Zhang <yang.zhang@pingcap.com>
2023-01-11 14:37:06 +08:00
Lucas c59833429b
Bug fix: fix the Round-Robin algorithm when "ReadMode == ReplicaReadMixed". (#663)
Signed-off-by: Lucasliang <nkcs_lykx@hotmail.com>
2023-01-11 14:15:36 +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
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
hehechen fe3536dd59
MinSafeTS support TiFlash (#642)
Signed-off-by: hehechen <awd123456sss@gmail.com>
2022-12-19 17:16:53 +08:00
guo-shaoge 0bf06e87bf update log
Signed-off-by: guo-shaoge <shaoge1994@163.com>
2022-12-18 13:57:23 +08:00
guo-shaoge 60119cdd7a fix errors.Errorf
Signed-off-by: guo-shaoge <shaoge1994@163.com>
2022-12-17 16:46:55 +08:00
guo-shaoge ffc2788663 region_cache: refine GetTiFlashComputeRPCContextByConsistentHash(for detect alive)
Signed-off-by: guo-shaoge <shaoge1994@163.com>
2022-12-17 16:41:11 +08:00
ekexium 6d5cb2da49
don't call onMemChange before all work is done in memdb (#636)
Signed-off-by: ekexium <eke@fastmail.com>
2022-12-08 12:30:56 +08:00
ekexium ad59ca833a
fix: do not call onMemChange in alloc, since it will make the latest block empty, which breaks a precondition for some operations (e.g. revertToCheckpoint) (#632)
Signed-off-by: ekexium <eke@fastmail.com>
2022-12-05 16:43:17 +08:00
Chen Ding 50651d6bb5
precompute min safe ts (#622)
Signed-off-by: hihihuhu <dingc05@gmail.com>
2022-12-02 11:55:43 +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
Weizhen Wang 81939ec8b2
fix data race at the memChangeHook (#625)
Signed-off-by: Weizhen Wang <wangweizhen@pingcap.com>
2022-11-28 10:56:02 +08:00
ekexium 92f0a82e1a
fix: avoid data race when setting memdb footprint hook (#621)
Signed-off-by: ekexium <eke@fastmail.com>
2022-11-24 11:10:13 +08:00
YangKeao 4760b32350
upgrade pd client and implement mock store (#611)
Signed-off-by: YangKeao <yangkeao@chunibyo.icu>
2022-10-31 14:24:53 +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
JmPotato 91be9c6ce6
Introduce the FlashbackNotPrepared error (#606)
Signed-off-by: JmPotato <ghzpotato@gmail.com>
2022-10-17 17:26:35 +08:00
guo-shaoge e76cd3e240
region_cache: only load UP tiflash_mpp store (#598)
Signed-off-by: guo-shaoge <shaoge1994@163.com>
2022-10-13 14:54:37 +08:00
Yongbo Jiang dc130aa0d3
imple pd client (#597)
Signed-off-by: Cabinfever_B <cabinfeveroier@gmail.com>

Signed-off-by: Cabinfever_B <cabinfeveroier@gmail.com>
2022-10-11 14:27:39 +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
xufei 33efe476e0
update comments (#590)
Signed-off-by: xufei <xufeixw@mail.ustc.edu.cn>
2022-09-23 14:17:03 +08:00
Jack Yu ce9203ef66
*: disable PermitWithoutStream to avoid too many pings (#574)
Signed-off-by: Jack Yu <jackysp@gmail.com>
2022-09-21 18:16:51 +08:00
Yilin Chen f2de03a066
Avoid data race at workTiFlashIdx (#586)
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-09-19 10:56:34 +08:00
Ryan-Git 8c1802b0f6
feat(region_cache): sync leader store epoch when switchWorkLeaderToPeer (#573)
Signed-off-by: renhongdi <ryan.hd.ren@gmail.com>
2022-09-07 12:46:50 +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 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
Yilin Chen 025596b7a2
Clear intersecting regions in the cache when inserting a region (#566)
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-08-15 17:47:24 +08:00
Yilin Chen a31f03ebc4
Drop Go 1.17 support (#562)
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-08-15 17:23:10 +08:00
Yilin Chen 2ed2113d10
Fix that histogram is not inserted into rpcNetLatencyHistCache (#563)
* Fix that histogram is not inserted into rpcNetLatencyHistCache

Signed-off-by: Yilin Chen <sticnarf@gmail.com>

* downgrade golangci-lint to avoid gofmt complaints temporarily

Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-08-09 11:48:08 +08:00
zyguan e10841f2d1
support adding `ExecDetailsV2` to tracing (#559)
* support adding `ExecDetailsV2` to tracing

Signed-off-by: zyguan <zhongyangguan@gmail.com>

* rename `TraceExecEnabled` to `TraceExecDetailsEnabled`

Signed-off-by: zyguan <zhongyangguan@gmail.com>

* revert changes for #558

Signed-off-by: zyguan <zhongyangguan@gmail.com>

* address comments

Signed-off-by: zyguan <zhongyangguan@gmail.com>

* add unit test

Signed-off-by: zyguan <zhongyangguan@gmail.com>
2022-07-29 11:44:04 +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
Yilin Chen e38d2b07de
do not format error when response does not include ExecDetailsV2 (#553)
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-07-21 11:16:57 +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
SeaRise 3d7cbc2448
update (#551)
Signed-off-by: SeaRise <hhssearise@foxmail.com>

Co-authored-by: Lei Zhao <zlwgx1023@gmail.com>
2022-07-19 21:10:03 +08:00
ShuNing 6166801ecd
retry: make backoff more reasonable for DataNotReady (#550)
Signed-off-by: nolouch <nolouch@gmail.com>
2022-07-19 19:33:17 +08:00