smengcl commented on code in PR #11302:
URL: https://github.com/apache/ozone/pull/11302#discussion_r4100557173
##########
hadoop-hdds/interface-client/src/main/proto/DatanodeClientProtocol.proto:
##########
@@ -398,9 +398,11 @@ message ReadBlockRequestProto {
}
message ReadBlockResponseProto {
- required ChecksumData checksumData = 1;
+ reserved 1;
+ reserved "checksumData";
Review Comment:
With this change, an older client with streaming reads enabled would fail to
parse responses after the datanodes are upgraded, even following a non-rolling
cluster upgrade. The reverse, an upgraded client reading from older datanodes
also fails when checksum verification is enabled because chunkInfoList is
absent.
At least this is just a wire proto change and does not affect stored data.
Users can disable streaming reads and reopen the client, or by bringing clients
and datanodes onto compatible versions. Given that streaming reads are opt-in
and this break is intentional for performance reason IIUC, I’m fine with the
change for now, but could we document both failure scenarios and recovery steps
in the release notes?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]