We saw this issue with one block in a large test cluster. The client is storing the data with replication level 2, and we saw the following:
- the second node in the pipeline detects a checksum error on the data it received from the first node. We don't know if the client sent a bad checksum, or if it got corrupted between node 1 and node 2 in the pipeline.
- this caused the second node to get kicked out of the pipeline, since it threw an exception. The pipeline started up again with only one replica (the first node in the pipeline)
- this replica was later determined to be corrupt by the block scanner, and unrecoverable since it is the only replica