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]