[ https://issues.apache.org/jira/browse/YARN-11177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17584582#comment-17584582 ]
ASF GitHub Bot commented on YARN-11177: --------------------------------------- slfan1989 commented on code in PR #4764: URL: https://github.com/apache/hadoop/pull/4764#discussion_r954475014 ########## hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/clientrm/FederationClientInterceptor.java: ########## @@ -925,13 +1041,61 @@ public ReservationListResponse listReservations( @Override public ReservationUpdateResponse updateReservation( ReservationUpdateRequest request) throws YarnException, IOException { - throw new NotImplementedException("Code is not implemented"); + + if (request == null || request.getReservationId() == null + || request.getReservationDefinition() == null) { + routerMetrics.incrUpdateReservationFailedRetrieved(); + RouterServerUtil.logAndThrowException( + "Missing updateReservation request or reservationId or reservation definition.", null); + } + + long startTime = clock.getTime(); + ReservationId reservationId = request.getReservationId(); + SubClusterId subClusterId = getReservationHomeSubCluster(reservationId); + + ApplicationClientProtocol client; Review Comment: I will fix it. ########## hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-router/src/main/java/org/apache/hadoop/yarn/server/router/clientrm/FederationClientInterceptor.java: ########## @@ -925,13 +1041,61 @@ public ReservationListResponse listReservations( @Override public ReservationUpdateResponse updateReservation( ReservationUpdateRequest request) throws YarnException, IOException { - throw new NotImplementedException("Code is not implemented"); + + if (request == null || request.getReservationId() == null + || request.getReservationDefinition() == null) { + routerMetrics.incrUpdateReservationFailedRetrieved(); + RouterServerUtil.logAndThrowException( + "Missing updateReservation request or reservationId or reservation definition.", null); + } + + long startTime = clock.getTime(); + ReservationId reservationId = request.getReservationId(); + SubClusterId subClusterId = getReservationHomeSubCluster(reservationId); + + ApplicationClientProtocol client; + ReservationUpdateResponse response = null; + try { + client = getClientRMProxyForSubCluster(subClusterId); + response = client.updateReservation(request); + } catch (Exception ex) { + routerMetrics.incrUpdateReservationFailedRetrieved(); + RouterServerUtil.logAndThrowException( + "Unable to reservation update due to exception.", ex); + } + long stopTime = clock.getTime(); + routerMetrics.succeededUpdateReservationRetrieved(stopTime - startTime); + return response; } @Override public ReservationDeleteResponse deleteReservation( ReservationDeleteRequest request) throws YarnException, IOException { - throw new NotImplementedException("Code is not implemented"); + if (request == null || request.getReservationId() == null) { + routerMetrics.incrDeleteReservationFailedRetrieved(); + RouterServerUtil.logAndThrowException( + "Missing deleteReservation request or reservationId.", null); + } + + long startTime = clock.getTime(); + ReservationId reservationId = request.getReservationId(); + SubClusterId subClusterId = getReservationHomeSubCluster(reservationId); + + ApplicationClientProtocol client; + ReservationDeleteResponse response = null; + try { + client = getClientRMProxyForSubCluster(subClusterId); Review Comment: I will fix it. > Support getNewReservation, submitReservation, updateReservation, > deleteReservation API's for Federation > ------------------------------------------------------------------------------------------------------- > > Key: YARN-11177 > URL: https://issues.apache.org/jira/browse/YARN-11177 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: fanshilun > Assignee: fanshilun > Priority: Major > Labels: pull-request-available > Fix For: 3.4.0 > > -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org