Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Codis should validate server validity before setting migrate status for a slot #173
Scenario to reproduce:
You might be able to replicate by adding a non-existent server.
What happens is the slots are marked as migrating but they can't migrate because the server they are moving to won't accept commands. There are two key factors here:
If Codis were to check that it can write (ie. connect and get role. if role !=master or no connection established) this would prevent this condition from occurring.
Codis should, as part of this, automatically mark as a slave any master it is told to assign to a slot if it pulls the role and finds it to be a slave and not a master. It would also be ideal to be able to tell codis-config to re-start or resume the migration process for a given slot.