[redis]github-121 Report
https://github.com/antirez/redis/issues/121
A race condition in redis cluster setting resulted in client dataloss.
critical
No
No
Single or a few clients
redis-2.6-rc1
Cluster configuration
1. migrate some keys from node A to B (feature start)
2. While migrating, LPUSH key to node A, here A must be still in A (feature start)
3. while migrating, LPUSH key to B
You should observe the push in step 2 are lost.
In this order
No (node nondeterministic)
No.
2.
Hard to notice any starting point. you notice the data loss, but not sure how it occurred.
Impossible as it’s very likely that when you notice the data loss, nothing can be recovered.
The design is that when a key space is migrating from A to B, A and B will both accept queries for keys that hasn’t been migrated yet. If a key has already been migrated, A will no longer accept the query.
Race