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
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
Weizhen Wang
f05c6886bb
fix data race in test ( #624 )
...
Signed-off-by: Weizhen Wang <wangweizhen@pingcap.com>
2022-11-25 10:28:19 +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
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
Hangjie Mo
9c0835c80e
util: update GCTimeFormat to be the same as the value stored in PD ( #616 )
...
Signed-off-by: Jason Mo <mohangjie1995@gmail.com>
2022-11-08 11:08:01 +08:00
Hangjie Mo
ec1202a9d2
tikv: skip 0 when call `getMinSafeTSByStores` ( #615 )
...
Signed-off-by: Hangjie Mo <mohangjie1995@gmail.com>
2022-11-03 16:45:28 +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
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
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
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
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
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
Yilin Chen
8dfd76bf46
Acquire read lock in LockKeys to avoid data race ( #585 )
...
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-10-10 23:14:53 +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
crazycs
02e2fe1f2a
txnkv: export DefaultScanBatchSize variable ( #588 )
2022-09-21 13:09:30 +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
ekexium
ffaaf7131a
Don't let pessimistic txn prewrite in the optimistic way ( #584 )
...
* don't let pessimistic txn prewrite in the optimistic way even if it does not lock any key
Signed-off-by: ekexium <eke@fastmail.com>
* add a todo
Signed-off-by: ekexium <eke@fastmail.com>
Signed-off-by: ekexium <eke@fastmail.com>
2022-09-13 13:15:14 +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
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
ekexium
f867f49845
add a flag PreviousPresumeKNE ( #581 )
...
Signed-off-by: ekexium <eke@fastmail.com>
2022-09-06 17:45:32 +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
dongxu
ce14926f6a
Update README.md ( #571 )
...
Signed-off-by: dongxu <i@huangdx.net>
2022-08-25 11:10:36 +08:00
dongxu
46dcf45f77
*: add getPDClient to rawKV public api ( #570 )
...
Signed-off-by: dongxu <i@huangdx.net>
Signed-off-by: dongxu <i@huangdx.net>
2022-08-25 11:09:33 +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
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
tiancaiamao
516cfcdecc
txnkv: fix a bug that commitTSUpperBoundCheck err not handled ( #564 )
...
Signed-off-by: tiancaiamao <tiancaiamao@gmail.com>
Co-authored-by: Yilin Chen <sticnarf@gmail.com>
2022-08-10 16:41:20 +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
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
Yilin Chen
57c12f7c64
Handle more detailed statistics from TiKV ( #536 )
...
* support more detailed statistics returned from TiKV
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
* fix log formatting
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
* add to test
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2022-07-13 16:56:47 +08:00