hehechen
fe3536dd59
MinSafeTS support TiFlash ( #642 )
...
Signed-off-by: hehechen <awd123456sss@gmail.com>
2022-12-19 17:16:53 +08:00
Liqi Geng
a4f5c00b46
region_cache: refine GetTiFlashComputeRPCContextByConsistentHash
...
Signed-off-by: guo-shaoge shaoge1994@163.com
2022-12-19 15:59:31 +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
TonsnakeLin
c446b885bd
RuntimeStat: Clone `SnapshotRuntimeStats` Completely ( #641 )
...
* add more info for cloning SnapshotRuntimeStats
Signed-off-by: TonsnakeLin <lpbgytong@163.com>
* add more info for cloning SnapshotRuntimeStats
Signed-off-by: TonsnakeLin <lpbgytong@163.com>
* shallow copy SnapshotRuntimeStats
Signed-off-by: TonsnakeLin <lpbgytong@163.com>
Signed-off-by: TonsnakeLin <lpbgytong@163.com>
Co-authored-by: Yilin Chen <sticnarf@gmail.com>
2022-12-16 10:15:14 +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
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
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