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

ASF GitHub Bot commented on YARN-11358:
---------------------------------------

goiri commented on code in PR #5056:
URL: https://github.com/apache/hadoop/pull/5056#discussion_r1045925968


##########
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/webapp/FederationInterceptorREST.java:
##########
@@ -2105,9 +2115,10 @@ private <R> Map<SubClusterInfo, R> 
invokeConcurrent(Collection<SubClusterInfo> c
         if (response != null) {
           results.put(clusterId, response);
         }
-
-        Exception exception = pair.getRight();
-        if (exception != null) {

Review Comment:
   The old behavior was to fail the query if there was any exception.
   The default configuration setting needs to not allow partial results.



##########
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/conf/YarnConfiguration.java:
##########
@@ -4294,6 +4294,11 @@ public static boolean isAclEnabled(Configuration conf) {
       ROUTER_PREFIX + "webapp.cross-origin.enabled";
   public static final boolean DEFAULT_ROUTER_WEBAPP_ENABLE_CORS_FILTER = false;
 
+  /** Router Interceptor Allow Partial Result Enable. **/
+  public static final String ROUTER_INTERCEPTOR_ALLOW_PARTIAL_RESULT_ENABLED =
+      ROUTER_PREFIX + "interceptor.allow-partial-result.enable";
+  public static final boolean 
DEFAULT_ROUTER_INTERCEPTOR_ALLOW_PARTIAL_RESULT_ENABLED = true;

Review Comment:
   From the other comments, I think this needs to be false



##########
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-default.xml:
##########
@@ -5056,4 +5056,18 @@
     </description>
   </property>
 
+  <property>
+    <name>yarn.router.interceptor.allow-partial-result.enable</name>
+    <value>true</value>

Review Comment:
   The old behavior was to not allow partial results, so this needs to be false.





> [Federation] Add FederationInterceptor#allow-partial-result config.
> -------------------------------------------------------------------
>
>                 Key: YARN-11358
>                 URL: https://issues.apache.org/jira/browse/YARN-11358
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: federation, router
>    Affects Versions: 3.4.0
>            Reporter: Shilun Fan
>            Assignee: Shilun Fan
>            Priority: Major
>              Labels: pull-request-available
>
> When we use Federation, we will have multiple sub-clusters, and some 
> interfaces need to call all clusters to get results, 
> such as getNodes, getNodeToLabels, etc.
> But if the sub-cluster is unavailable when we call the interface, should the 
> interface return the result?
> The current code is to return the result.If the result is returned, the 
> result information is inaccurate; 
> if the result is not returned, it is not user-friendly
> We'd better add a parameter control, the user chooses whether to report an 
> error or return the result.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to