Migrate keys when join, and spread keys when leave, both functional