-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pika 4.0 使用 codis-fe 迁移 slot 时偶尔有报错 #2870
Comments
Title: Pika 4.0 occasionally reports errors when using codis-fe to migrate slots. |
迁移数据的时候是会对slot进行加锁的,加锁的时候这个slot读写是阻塞的,所以读写请求都进不去 |
When migrating data, the slot will be locked. When locked, reading and writing in this slot are blocked, so read and write requests cannot enter. |
如果要加锁的话怎么实现在不影响在线业务的情况下,动态迁移slot ? codis 是可以的,pika 不支持吗? |
If locking is required, how can the slot be dynamically migrated without affecting the online business? Codis is ok, but pika doesn’t support it? |
尽可能的把数据打散,把slot个数多一些 会在迁移的过程中对于用户的影响尽可能的少 |
Scattering the data as much as possible and increasing the number of slots will have as little impact on users as possible during the migration process. |
Is this a regression?
Yes
Description
一边写入数据, 一边迁移, 就会有概率出现这个问题
codis-fe 报错截图:
客户端收到的错误:
redis.exceptions.ResponseError: handle request, bad slotsmgrt-exec-wrapper resp: type(array[0]) = <int>, len(array[0].value) = 2
pika-server 迁移源节点日志:
pika_migrate_thread.cc:662] PikaMigrateThread::ReqMigrateOne Slot : 886 is not the migrating slot:-1
pika-server 目标节点日志:
Please provide a link to a minimal reproduction of the bug
No response
Screenshots or videos
No response
Please provide the version you discovered this bug in (check about page for version information)
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: