Lynn
e60fec1b25
client: split large files and rename unclear fields ( #1700 )
...
Signed-off-by: Lynn <zimu_xia@126.com>
2025-07-10 04:19:15 +00:00
zyguan
557a4986e4
client: merge ClientAsync into Client ( #1664 )
...
Signed-off-by: zyguan <zhongyangguan@gmail.com>
2025-07-08 03:13:06 +00:00
zyguan
20764920b4
*: reduce overhead of codec client ( #1555 )
...
Signed-off-by: zyguan <zhongyangguan@gmail.com>
2025-01-17 03:47:01 +00:00
zyguan
4c6b2171b2
improve batch efficiency for high throughput workloads ( #1411 )
...
* improve batch efficiency by multiple attempts
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* add support for aggressive batching
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* add some metrics for batch client
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* fetch more requests according to recent wait head durs
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* add experimental batch options
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* optimize and refactor
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* some minor updates
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* fix the metric of head arrival interval
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* a minor update
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* some minor fixes
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* update according to the spec
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* fix the ut
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* fix batch condition
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* add some doc comments
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* address https://github.com/tikv/client-go/pull/1411#discussion_r1714086744
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* rename some vars according to the comments
Signed-off-by: zyguan <zhongyangguan@gmail.com>
* add more comments
Signed-off-by: zyguan <zhongyangguan@gmail.com>
---------
Signed-off-by: zyguan <zhongyangguan@gmail.com>
2024-08-13 12:55:44 +08:00
crazycs
cb580bc4ea
fix rpc client panic cause by concurrent close ( #1359 )
...
* fix rpc client panic cause by concurrent close
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* address comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine
Signed-off-by: crazycs520 <crazycs520@gmail.com>
---------
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2024-05-31 18:21:21 +08:00
MyonKeminta
31a8ddab19
Support actively requesting update health feedback information by calling RPC to TiKV ( #1287 )
...
* Support actively requesting update health feedback information by calling RPC to TiKV
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Update kvproto; follow the protocol change; and add more comments
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Fix build
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add integration tests
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* tune the frequency of active updating
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Update kvproto
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Fix test
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Revert changes to examples
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Remove unnecessary empty line
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>
2024-05-27 14:36:27 +08:00
crazycs
e1ca512cca
refine error msg ( #1338 )
...
* refine error msg
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
---------
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2024-05-13 21:49:13 +08:00
crazycs
c82e921992
fix issue of doesn't fast fail request when no available connections ( #1339 )
...
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2024-05-13 19:07:04 +08:00
crazycs
125a140034
fix data race that may cause panic and concurrency request limit bug ( #1219 )
...
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2024-04-02 11:26:21 +08:00
crazycs
5b6625f167
fix issue that no available connections cause by concurrency request limit bug ( #1226 )
...
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2024-03-15 14:19:38 +08:00
Ping Yu
7bce6ea4df
Pick connection handling improvements from tidb-cse-7.5 ( #1223 )
...
* close on canceled (#1121 )
Signed-off-by: Ping Yu <yuping@pingcap.com>
* Fix wait recvloop timeout (#1134 )
* wip
Signed-off-by: Ping Yu <yuping@pingcap.com>
* CloseAddr with ver
Signed-off-by: Ping Yu <yuping@pingcap.com>
* fix ErrConn
Signed-off-by: Ping Yu <yuping@pingcap.com>
* fix ut
Signed-off-by: Ping Yu <yuping@pingcap.com>
* cleanup
Signed-off-by: Ping Yu <yuping@pingcap.com>
---------
Signed-off-by: Ping Yu <yuping@pingcap.com>
* Use correct address for CloseAddr (#1140 )
* wip
Signed-off-by: Ping Yu <yuping@pingcap.com>
* CloseAddr with ver
Signed-off-by: Ping Yu <yuping@pingcap.com>
* fix ErrConn
Signed-off-by: Ping Yu <yuping@pingcap.com>
* fix ut
Signed-off-by: Ping Yu <yuping@pingcap.com>
* polish
Signed-off-by: Ping Yu <yuping@pingcap.com>
* polish
Signed-off-by: Ping Yu <yuping@pingcap.com>
* polish
Signed-off-by: Ping Yu <yuping@pingcap.com>
---------
Signed-off-by: Ping Yu <yuping@pingcap.com>
* rebase
Signed-off-by: Ping Yu <yuping@pingcap.com>
---------
Signed-off-by: Ping Yu <yuping@pingcap.com>
Co-authored-by: iosmanthus <dengliming@pingcap.com>
2024-03-14 16:30:36 +08:00
MyonKeminta
03bbadb277
Support receving health feedback ( #1153 )
...
* Register health feedback handler in batch client
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* update protocol
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Collect the health status and record to the stores
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Remove the filter which looks not necessary
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add metrics
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Fix checkAndUpdateStoreHealthStatus panicking
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add logs
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Merge SetHealthFeedbackHandler to Client
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Try another pattern: separated callback registry
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Try region cache eventListener pattern
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add tests
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Test receiving froim callback
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add tests to region cache
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Remove unnecessary debug log
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add comments
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* remove replace of tidb repo
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* fix build
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Update comments; fix lint
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* Add the isSlow method of Store back
Signed-off-by: MyonKeminta <MyonKeminta@users.noreply.github.com>
* remove unused method for now to make lint happy
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>
2024-02-28 19:10:32 +08:00
tongjian
824302acd0
client: Cache tikv request in tidb client side ( #1098 )
...
* impl priority queue
Signed-off-by: bufferflies <1045931706@qq.com>
* replace priority queue
Signed-off-by: bufferflies <1045931706@qq.com>
* cache request in tidb side
Signed-off-by: bufferflies <1045931706@qq.com>
* fix gosimple
Signed-off-by: bufferflies <1045931706@qq.com>
* impl priority
Signed-off-by: bufferflies <1045931706@qq.com>
* pass ut
Signed-off-by: bufferflies <1045931706@qq.com>
* add
Signed-off-by: bufferflies <1045931706@qq.com>
* remove request if the request has been canceled
Signed-off-by: bufferflies <1045931706@qq.com>
* remove request if it has been canceled
Signed-off-by: bufferflies <1045931706@qq.com>
* add comment for cancel
Signed-off-by: bufferflies <1045931706@qq.com>
* not make the loop is busy
Signed-off-by: bufferflies <1045931706@qq.com>
* lint
Signed-off-by: bufferflies <1045931706@qq.com>
* revert busy loop
Signed-off-by: bufferflies <1045931706@qq.com>
* add unit test
Signed-off-by: bufferflies <1045931706@qq.com>
* not limit ehigh prioirty test
Signed-off-by: bufferflies <1045931706@qq.com>
* pass lint
Signed-off-by: bufferflies <1045931706@qq.com>
* support all
Signed-off-by: bufferflies <1045931706@qq.com>
* add comment
Signed-off-by: bufferflies <1045931706@qq.com>
* squash
Signed-off-by: bufferflies <1045931706@qq.com>
* revert all to All
Signed-off-by: bufferflies <1045931706@qq.com>
* remove index from entry
Signed-off-by: bufferflies <1045931706@qq.com>
* make fail reasons more clear
Signed-off-by: bufferflies <1045931706@qq.com>
---------
Signed-off-by: bufferflies <1045931706@qq.com>
2024-02-21 14:54:33 +08:00
tongjian
c7d29aafa7
client: replace array by priority queue to support cache queue ( #1095 )
...
* impl priority queue
Signed-off-by: bufferflies <1045931706@qq.com>
* replace priority queue
Signed-off-by: bufferflies <1045931706@qq.com>
* fix gosimple
Signed-off-by: bufferflies <1045931706@qq.com>
* remove chinese comment
Signed-off-by: bufferflies <1045931706@qq.com>
---------
Signed-off-by: bufferflies <1045931706@qq.com>
2024-01-03 15:32:51 +08:00
Hu#
812a791ab3
ci: make golangci happy ( #1066 )
...
Signed-off-by: husharp <jinhao.hu@pingcap.com>
2023-11-21 15:05:35 +08:00
crazycs
342301689f
*: fix issue of configure kv timeout not work when disable batch client ( #980 )
...
* *: fix issue of configure kv timeout not work when disable batch client
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* refine test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* address comment
Signed-off-by: crazycs520 <crazycs520@gmail.com>
---------
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2023-09-15 23:49:42 +08:00
you06
295094e5b5
add retry info to request source ( #953 )
...
* add retry info to request source
Signed-off-by: you06 <you1474600@gmail.com>
* handle upper layer retry
Signed-off-by: you06 <you1474600@gmail.com>
* stabilize test
Signed-off-by: you06 <you1474600@gmail.com>
* retry in 3 dimension
Signed-off-by: you06 <you1474600@gmail.com>
* record and restore req.ReadType
Signed-off-by: you06 <you1474600@gmail.com>
---------
Signed-off-by: you06 <you1474600@gmail.com>
2023-08-29 08:28:46 +08:00
crazycs
df58452fe1
client_batch: add test for auto re-connect idle connection when wait connection ready and fix ci ( #835 )
...
* client_batch: add test
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* update go version
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci lint
Signed-off-by: crazycs520 <crazycs520@gmail.com>
* fix ci lint
Signed-off-by: crazycs520 <crazycs520@gmail.com>
---------
Signed-off-by: crazycs520 <crazycs520@gmail.com>
2023-06-13 14:17:17 +08:00
glorv
c9119d02ce
support time detail v2 ( #729 )
...
* support time detail v2
Signed-off-by: glorv <glorvs@163.com>
---------
Signed-off-by: glorv <glorvs@163.com>
Co-authored-by: Connor <zbk602423539@gmail.com>
2023-03-13 21:32:19 +08:00
Smilencer
35416c4c43
Add gRPC connection monitor and fix related bug ( #665 )
...
Signed-off-by: Smityz <smityz@qq.com>
Co-authored-by: disksing <i@disksing.com>
2023-01-31 16:28:48 +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
Lei Zhao
f73ec0e675
client: fix the race between connArray.Close() and connArray.Get() ( #465 )
...
Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
2022-04-06 17:12:03 +08:00
Lei Zhao
5b4040a95c
reconnect when meets store-not-match errors ( #456 )
...
Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
2022-03-24 17:30:51 +08:00
disksing
9ec50224be
*: replace pingcap/errors with pkg/errors ( #357 )
...
Signed-off-by: disksing <i@disksing.com>
2021-11-01 11:59:52 +08:00
disksing
df2119f51b
client: cleanup RPCClient options ( #268 )
...
Signed-off-by: disksing <i@disksing.com>
2021-08-16 07:11:08 +00:00
disksing
288c649636
fix license ( #267 )
...
Signed-off-by: disksing <i@disksing.com>
2021-08-15 01:48:01 +08:00
disksing
4e8c0a34c8
move client to internal package ( #194 )
...
Signed-off-by: disksing <i@disksing.com>
Co-authored-by: iosmanthus <MyOsmanthusTree@gmail.com>
2021-06-30 16:18:10 +08:00