Hi, I am studying how block reports are processed, but I am not sure if I understood how BlockInfo::triplets are used by DatanodeDescriptors and BlocksMap.
That's what I understood: For each Block, triplets[i] with i%3==0, gives the datanodes that are storing the block. New datanodes are inserted in the end of array. triplests[i+1] and triplets[i+2] are respectively the previous and next blocks of the current one in the linked list of blocks held by datanode triplets[i]. DatanodeDescriptor::blockList is actually is the head node of the list. Is it correct ? Thanks, André