Closed Besroy closed 3 weeks ago
I prefer adding checksum in PushData proto , which will ensure the data correctness at homestore level.
homestore is a common data plane which is now used by nublox and nuobject and will probably be used by other distributed storage system in the future. as a common data plane , it should take the responsibility to transfer data between the peers and ensure the correctness of data, it`s one of the fundamental functionality, just like TCP.
so IMO, in the sender side , checksum should be put in the proto , and in the receiver side, it should verify the data with the checksum. if not match, fetch it immediately. meanwhile , if we want, we can add a configuration to disable this and hand over the verification to upper layer.
Thanks! I move this issue to homestore_issue
From SM-long-running-test side, we encountered failures during the data read_verify process on two separate occasions: Hash Mismatch: The issue occurred once where one follower experienced a hash mismatch. Invalid Header: Another instance where a different follower encountered an invalid header. Additional Details: For more comprehensive information and context regarding these failures, please refer to the documentation provided in the following link: Google Docs