Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-10772

Stable API GetApplicationsRequest#newInstance compatibility broken by YARN-8363

Add voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.2.0
    • None
    • api
    • None

    Description

      YARN-8363 migrated our usage of commons-lang to commons-lang3 in 3.2.0.

       

      Unfortunately, it changed the API signature of 

      /**
       * <p>
       * The request from clients to get a report of Applications matching the
       * giving application types in the cluster from the
       * <code>ResourceManager</code>.
       * </p>
       *
       * @see ApplicationClientProtocol#getApplications(GetApplicationsRequest)
       *
       * <p>Setting any of the parameters to null, would just disable that
       * filter</p>
       *
       * @param scope {@link ApplicationsRequestScope} to filter by
       * @param users list of users to filter by
       * @param queues list of scheduler queues to filter by
       * @param applicationTypes types of applications
       * @param applicationTags application tags to filter by
       * @param applicationStates application states to filter by
       * @param startRange range of application start times to filter by
       * @param finishRange range of application finish times to filter by
       * @param limit number of applications to limit to
       * @return {@link GetApplicationsRequest} to be used with
       * {@link ApplicationClientProtocol#getApplications(GetApplicationsRequest)}
       */
      @Public
      @Stable
      public static GetApplicationsRequest newInstance(
          ApplicationsRequestScope scope,
          Set<String> users,
          Set<String> queues,
          Set<String> applicationTypes,
          Set<String> applicationTags,
          EnumSet<YarnApplicationState> applicationStates,
          Range<Long> startRange,
          Range<Long> finishRange,
          Long limit) { 

      The startRange and finishRange changed type from LongRange to Range<Long>.
      It could cause problems when migrating applications, for example, from Hadoop 3.1 to 3.3.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            weichiu Wei-Chiu Chuang

            Dates

              Created:
              Updated:

              Slack

                Issue deployment