Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
storage: fix DeprecatedReplicas migration
In 52333d1 we made the incorrect assumption that a 19.2 node running a ChangeReplicas invocation is also the node which would evaluate the corresponding EndTransaction request, but this is only often true, not generally true. If a 19.1 node ended up evaluating a trigger composed by a 19.2 node, it would see an empty UpdatedReplicas slice and a zero NextReplicaID and would go ahead and construct a broken descriptor from that which it would then go on and disseminate through Raft. This caused the affected range to be fatally corrupted. The solution is simple: populate the old field for now as well and remove that only in the next release. Release note: None
- Loading branch information