File upload and changes - radumarias/rfs GitHub Wiki

See Data node API and Communication between Coordinator and Data nodes

When user uploads a file the master split the file in shards of 64MB and distribute the shards and replicas to data nodes. Then data nodes use DHT and BitTorrent to sync the shards saving the status to tikv. In order for coordinator to catch cases when a data node goes does down we keep a queue of ongoing sync tasks and periodically check in there the status and if a data node is down it allocate the replica to another node.