priyeshkaratha opened a new pull request, #10690:
URL: https://github.com/apache/ozone/pull/10690

   ## What changes were proposed in this pull request?
   When SCM serializes an empty List into a Ratis log entry, 
ScmListCodec.serialize writes a ListArgument proto with type = 
`java.lang.Object` and zero value entries (the EMPTY_LIST sentinel). On replay 
(follower sync or SCM restart), the old deserialize path unconditionally called 
resolver.get("java.lang.Object"), which threw InvalidProtocolBufferException: 
Failed to resolve java.lang.Object because Object is not a registered SCM codec 
type. The guard short-circuits as soon as it sees zero value entries and 
returns an empty ArrayList directly, which is the correct result regardless of 
what the sentinel type string says
   
   ## What is the link to the Apache JIRA
   
   HDDS-15783
   
   ## How was this patch tested?
   
   Tested using unit test and tested the environment applying the patch


-- 
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]

Reply via email to