[ 
https://issues.apache.org/jira/browse/HDDS-17588?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

rajesh reassigned HDDS-17588:
-----------------------------

    Assignee: rajesh

> Create tracing proxies for OM components
> ----------------------------------------
>
>                 Key: HDDS-17588
>                 URL: https://issues.apache.org/jira/browse/HDDS-17588
>             Project: Apache Ozone
>          Issue Type: Sub-task
>            Reporter: rajesh
>            Assignee: rajesh
>            Priority: Major
>
> Wrap OM components with \{{TracingUtil.createProxy(impl, Interface.class, 
> SpanKind.INTERNAL)}}, so that every call gets a \{{<ImplClass>.<method>}} 
> span, for example \{{OMKeyCreateRequest.validateAndUpdateCache}} or 
> \{{KeyManagerImpl.listStatus}}:
> * \{{RequestHandler}} (\{{OzoneManagerRequestHandler}}), in the state machine 
> and in the server-side translator
> * OM client requests, through the new \{{IOMClientRequest}} interface 
> returned by \{{OzoneManagerRatisUtils#createClientRequest}}
> * \{{KeyManager}}, \{{BucketManager}}, \{{VolumeManager}}, 
> \{{S3SecretManager}} and \{{OMMultiTenantManager}}
> * \{{IAccessAuthorizer}}
> Trivial or very frequently called methods are excluded with \{{@SkipTracing}}.
> A JDK dynamic proxy implements only its interface, so the following refactors 
> come first (no functional change):
> * use the \{{KeyManager}} interface instead of \{{KeyManagerImpl}} casts;
> * test read-path datanode sorting through \{{KeyManager#listStatus}};
> * move request handler fault injection into a test decorator;
> * introduce \{{IOMClientRequest}}.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

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

Reply via email to