[
https://issues.apache.org/jira/browse/TEZ-3404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15439987#comment-15439987
]
Hitesh Shah commented on TEZ-3404:
----------------------------------
Comments:
"dag.getDagAccessControls().mergeIntoAMConf(amConfig.getTezConfiguration());" -
why is the function called mergeIntoAMConf? maybe mergeToConf instead of there
is nothing AM specific about the params? Would be good to add a comment on why
this is being done here.
"public static DAGAccessControls deserializeFromConfiguration(Configuration
conf)" - is there any reason why configs are being used to pass this info from
client to AM instead of an explicit field as part of the dag plan proto?
{code}
Configuration conf = HistoryEventType.DAG_SUBMITTED ==
historyEvent.getEventType()
392 ? ((DAGSubmittedEvent)historyEvent).getConf()
393 : appContext.getCurrentDAG().getConf();
{code}
- In what scenario does the submit event not have a config?
" // Returns null historyACLPolicyManager return null, this will disable ACLs.
" - might be good to fix the docs as this line is a bit confusing. Also not
sure I understand why some code will disable ACLs?
{code}
4 DAGAccessControls dagAccessControls =
DAGAccessControls.deserializeFromConfiguration(dagConf);
465 try {
466 Map<String, String> acls =
historyACLPolicyManager.setupSessionDAGACLs(
467 dagConf, appContext.getApplicationID(),
Integer.toString(dagId.getId()),
468 dagAccessControls);
469 if (acls != null) {
470 return acls.get(TezConfiguration.YARN_ATS_ACL_DAG_DOMAIN_ID);
471 }
{code}
- The var name acls in "Map<String, String> acls" seems very confusing. This
map tracks the domain info and has nothing to do with acls as far as I can
understand.
{code}
409 if (appContext.isSession()) {
410 acls = historyACLPolicyManager.setupSessionACLs(getConfig(),
appContext.getApplicationID());
411 } else {
412 acls = historyACLPolicyManager.setupNonSessionACLs(getConfig(),
413 appContext.getApplicationID(), null);
{code}
- given the client side merge of acls in the non-session case, why is there a
need to call setupNonSessionACLs() ?
" @Test(timeout=5000)" - may want to bump this up to 10 secs esp as the test
does an internal sleep of 2.5 seconds to be on the safer side.
More comments after the test failures are addressed.
> Remove blocking call for ATS domain creation from client side to AM
> -------------------------------------------------------------------
>
> Key: TEZ-3404
> URL: https://issues.apache.org/jira/browse/TEZ-3404
> Project: Apache Tez
> Issue Type: Improvement
> Reporter: Harish Jaiprakash
> Assignee: Harish Jaiprakash
> Attachments: TEZ-3404-WIP-01.patch, TEZ-3404-WIP-02.patch,
> TEZ-3404-WIP-03.patch, TEZ-3404-WIP-04.patch
>
>
> Today, there is a blocking call for creating the domain on the client side
> which blocks hive query throughput. We need to move this to the AM and still
> retain the same security guarantees.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)