[
https://issues.apache.org/jira/browse/MAPREDUCE-5265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13706146#comment-13706146
]
Jason Lowe commented on MAPREDUCE-5265:
---------------------------------------
Thanks for the updates, Ashwin. I think this is a cleaner approach with less
boilerplate code for the protocol support.
bq. All the findbugs warnings are due to sources generated by ProtocolBuffers.
How do we handle this ?
Normally this is handled by telling findbugs to avoid analyzing the generated
protocol buffer source files. This can be accomplished by adding the following
to hadoop-mapreduce-project/dev-support/findbugs-exclude.xml:
{code}
<Match>
<Package name="org.apache.hadoop.mapreduce.v2.hs.proto" />
</Match>
{code}
More comments on the patch:
* The new history server configs should be added to mapred-default.xml with
their default values for documentation purposes. This was in previous patches
but was dropped.
* RefreshUserMappingsProtocol.proto, GetUserMappingsPrototcol.proto, and the
supporting glue code is duplicated from HDFS -- is there a way we can simply
use the HDFS version? I see the PB glue in HDFS is already marked
LimitedPrivate for HDFS and MapReduce, so it seems like we should just be using
that rather than duplicating it if possible.
* It's a bit odd to have RefreshAdminAclsProtocol in hadoop-common but the
protocol buffer support for it is only in the history server. Arguably either
the PB code should be in hadoop-common or we should move
RefreshAdminAclsProtocol to hadoop-mapreduce-client-hs. If we do the latter
and eventually it is commonized then we can derive from the common version for
backwards compatibility.
* HSAdminServer should be a service (it already has start/stop methods like a
service), and that would let us simply bundle it under the JobHistoryServer
composite service like the other services in the history server. The conf can
arrive via serviceInit and the RPC setup can be done there.
* Nit: "HSAdminServer" string should be a static final to avoid typos and make
it easier to change (e.g.: to HSAdminService)
* Nit: The mapred script has a tab in the usage statement which should be
converted to spaces to be consistent with the other formatting
* Nit: TestHSAdminServer has some unused code (PrintStream import and
outContent field)
> Need an admin interface on history server with the ability to refresh super
> user groups,refresh user to group mappings,refresh admin acls,get groups
> given a username.
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: MAPREDUCE-5265
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-5265
> Project: Hadoop Map/Reduce
> Issue Type: New Feature
> Components: jobhistoryserver
> Affects Versions: 2.1.0-beta
> Reporter: Jason Lowe
> Assignee: Ashwin Shankar
> Attachments: JHS_REFRESH-2.txt, JHS_REFRESH-4.txt, JHS_REFRESH-6.txt,
> JHS_REFRESH-8.txt, JHS_REFRESH-9.txt
>
>
> The history server needs an admin interface with the ability to
> 1. refresh the super user groups configurations,
> 2. refresh user to group mappings,
> 3. refresh its admin acls,
> 4. get groups given a username
> without requiring a restart of the history server. This is analogous to the
> -refreshSuperUserGroupsConfiguration capabilities provided by hdfs dfsadmin
> and yarn rmadmin.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira