Colm,

Yes look like we need to have multiple shims.

To support multiple version of Hadoop, we may need a super shim which will
find which version of Hadoop ( based on method signature) is used and then
instantiate the corresponding  sub shim RangerYarnAuthorizer.

This may be the case for HDFS plugin also in there is a different
behaviors or signature change in authorization hook.

Thanks,
Ramesh


On 11/9/17, 4:22 AM, "Colm O hEigeartaigh" <[email protected]> wrote:

>Hi all,
>
>I'm working on adding support for Hadoop 3.0.0 to the Yarn component
>(RANGER-1738).
>
>YarnAuthorizationProvider has some updated methods in Hadoop 3.0.0. It's
>easy to work around this in the RangerYarnAuthorizer though, so that it
>supports both Hadoop 2.7.x, 2.8.x and 3.0.0.
>
>The problem is in the plugin shim code for RangerYarnAuthorizer. It
>delegates the calls to the underlying YarnAuthorizationProvider instance.
>This means it's not possible to support both 2.7.x and 3.0.0 as it is in
>the plugin version of RangerYarnAuthorizer.
>
>Any ideas on this? The only way I can think of supporting it is to have
>separate plugin shims for Hadoop 2 + 3.
>
>Colm.
>
>
>-- 
>Colm O hEigeartaigh
>
>Talend Community Coder
>http://coders.talend.com

Reply via email to