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

Uma Maheswara Rao G commented on HDDS-6213:
-------------------------------------------

[~pifta] I think this Jira can be closed right? (As PR is already merged)

> Pluggable OzoneManager request handling hooks 
> ----------------------------------------------
>
>                 Key: HDDS-6213
>                 URL: https://issues.apache.org/jira/browse/HDDS-6213
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: OM
>            Reporter: Ethan Rose
>            Assignee: István Fajth
>            Priority: Major
>              Labels: pull-request-available
>
> During developing different new features, the different protocols have to be 
> kept in a stance where the old client can talk to a new server, and a new 
> client also can talk to an old server.
> The latter was solved earlier by exposing the server version in the 
> ServiceInfo, but the prior is a hard thing to deal with.
> After a few rounds of discussions we came up with an idea to implement 
> pluggable pre and post validation hooks for request processing, that can help 
> us to either right away reject a specific query from an old client, or if the 
> response contains something that the client can understand, give us the 
> possibility to re-write the regular response to a form that the old client 
> can understand, or at least give the old client a specific error message that 
> says why the request fails.
> Similarly, the system should have the possibility to adjust the request 
> coming from the old clients if it is possible, so that the request can be 
> served.
> Later on we have identified that there is a specific lifecycle phase, when 
> the cluster is not finalized but already upgraded, certain requests in these 
> cases might need to be right away cancelled, based on some request 
> properties, but just until the new feature is not finalized.
> Similarly there is a possibility to write certain things, like auditing, or 
> permission checking as a method plugged into one of the hooks, but this idea 
> was not really battle tested so far, and is not part of the scope at the 
> moment.
> Ordering of the plugged in methods are also one thing we might consider 
> later, but was out of scope for the first implementation, though it was kept 
> in mind, and the internal data structure that stores the validation map, 
> should be adjustable to maintain the order later if it becomes necessary.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to