...
Tables/Tablets and Indexes
(workspace, table, start id, end id, logical host address) relation
(persistent)
Placement
(network host address, rack)
(persistent)
Location/Discovery
Perhaps we've got a story for this with DNS?
Reconfiguration
Recovery
Choosing Replacements
For crashed M choose a new network host address (under no constraints?). Issue a shootdown of old machine address?
Crash Confirmation
When do we notice crashes? Who heartbeats?
If Coordinator notices failure or has one reported to it heartbeat M, if failed contact other hosts (backups or masters) one inside the same rack and one outside. If failure is agreed then we must broadcast new mapping. How can we guarantee no client will see old master? We could disallow backups, then if backups are on on the old master it would kill itself once its backup failed. If it is a non-durable table this would be problematic except that there is no way to restore it anyway.
Broadcast Notifications
Perhaps delegate some of the work.
Partition Detection
Statistics
...