[ 
https://issues.apache.org/jira/browse/HDDS-14647?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18067813#comment-18067813
 ] 

Tsz-wo Sze edited comment on HDDS-14647 at 3/23/26 7:56 PM:
------------------------------------------------------------

[~russole], thanks a lot for working on this!  All the subtasks are now 
completed.
- I wonder if you like to measure the performance difference before and after 
all the changes?  We may simply create random SCMRatisRequest/Response objects 
and then encode/decode them.

BTW, filed HDDS-14886 Umbrella: Improve SCMHAInvocationHandler; see if you are 
interested working on it.


was (Author: szetszwo):
[~russole], thanks a lot for working on this!  All the subtasks are now 
completed.
- I wonder if you like to measure the performance difference before and after 
this change?  We may simply create random SCMRatisRequest/Response and then 
encode/decode them.

BTW, filed HDDS-14886 Umbrella: Improve SCMHAInvocationHandler; see if you are 
interested working on it.

> Umbrella: Improve SCM codec
> ---------------------------
>
>                 Key: HDDS-14647
>                 URL: https://issues.apache.org/jira/browse/HDDS-14647
>             Project: Apache Ozone
>          Issue Type: Improvement
>          Components: SCM HA
>            Reporter: Tsz-wo Sze
>            Assignee: Chen-Jheng Sing
>            Priority: Major
>
> The SCM Codec interface and the subclass implements are for 
> serialize/deserialize Java objects to/from protobuf ByteString. The current 
> implementation is inefficient since the Codec interface it not type specific 
> and the implementations use Java reflection to handle the objects. In other 
> words,
>  - the static object type is available in the beginning
>  - but, since the parameter is declared by Object, the type is forgotten,
>  - then the Codec implementations use reflection to find out the type in 
> runtime.
> A better way to use generic type in the Codec interface and a Codec 
> implementation only has to handle a specific class. This idea is similar to 
> org.apache.hadoop.hdds.utils.db.Codec<T>.
> BTW, we should rename classes in org.apache.hadoop.hdds.scm.ha.io.* to avoid 
> confusion with the classes in org.apache.hadoop.hdds.utils.db.*.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to