* region_cache: fix issue that LocateKey may returns a wrong region
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* address the comment
Signed-off-by: zyguan <zhongyangguan@gmail.com>
---------
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* log: only log the first lock in every flush or prewrite response
Signed-off-by: ekexium <eke@fastmail.com>
* log each conflicting txn at most once
Signed-off-by: ekexium <eke@fastmail.com>
* log: ttlManager
Signed-off-by: ekexium <eke@fastmail.com>
---------
Signed-off-by: ekexium <eke@fastmail.com>
* only set MinSafeTS to 0 when all stores' are 0
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* try to make ut stable
Signed-off-by: zyguan <zhongyangguan@gmail.com>
---------
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* refactor: distinguish identifier and name in task runner, to avoid messy metrics
Signed-off-by: ekexium <eke@fastmail.com>
* keep the original interface to avoid breaking compatibility
Signed-off-by: ekexium <eke@fastmail.com>
* log: use ctx logger
Signed-off-by: ekexium <eke@fastmail.com>
---------
Signed-off-by: ekexium <eke@fastmail.com>
* Add some logs
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Make slow store filtering the highest priority in replica selector v2
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add non stale read case to TestMultiReplicaInOneAZ
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Enrich the multi replcia in one AZ case but it failed...
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* update test to adapt the fix on master branch
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Remove TestMultiReplicaInOneAZ
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>
* feat: for AlreadyExist error during Flush, attach the value from flushingMemDB to it
Signed-off-by: ekexium <eke@fastmail.com>
* style: apply comment suggestion
Signed-off-by: ekexium <eke@fastmail.com>
---------
Signed-off-by: ekexium <eke@fastmail.com>
Co-authored-by: cfzjywxk <lsswxrxr@163.com>
* init
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add ReplicaSelector interface
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add replica_selector_v2, todo: fix test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix all test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test in another way to compatible with old version about stale-read request
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* tiny refactor
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refactor to remove duplicate code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine onServerIsBusy region error handing logic
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* support forwarding by proxy
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* support busyThreshold and tiny reractor code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add config
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix proxy bug
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test and tiny refactor
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add some test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* tidy refine
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* address comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test in v1
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add backoff-cnt check and timeout test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add benchmark test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* make test stale
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix golangci
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test and refine code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix race test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more comprehensive enumeration testing
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix accessFollower with label retry bug
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test and fix some bug
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test and add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine onNotLeader logic when new leader is not available
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine calculateScore logic, if the replica already tried, decrease the score
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine logic: replica-read request with mixed strategy and with label, should be able to retry all remain replicas
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* prefer-leader for mixed read with label for non stale-read req
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test case
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* resolve conflict
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* remove some duplicate test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refactor test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine code
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add busy_threshold test and fix bug
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix proxy bug and add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine code and add test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add learner test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add more test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* remove old test and refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* move test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* address comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* use new score calculation by flag bit
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* make test stable
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine comment,license and fix lint
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix race test timeout
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* add flagNotAttemp in score
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* address comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
---------
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* attach cluster id in kv requests
Signed-off-by: cfzjywxk <cfzjywxk@gmail.com>
* update go mod in integration test
Signed-off-by: cfzjywxk <cfzjywxk@gmail.com>
---------
Signed-off-by: cfzjywxk <cfzjywxk@gmail.com>