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

Getting application(s) goes wrong when app finishes before starting the attempt

    XMLWordPrintableJSON

Details

    Description

      When generating app report in ApplicationHistoryManagerOnTimelineStore, it checks if appAttempt == null.

              ApplicationAttemptReport appAttempt = getApplicationAttempt(app.appReport.getCurrentApplicationAttemptId());
              if (appAttempt != null) {
                app.appReport.setHost(appAttempt.getHost());
                app.appReport.setRpcPort(appAttempt.getRpcPort());
                app.appReport.setTrackingUrl(appAttempt.getTrackingUrl());
                app.appReport.setOriginalTrackingUrl(appAttempt.getOriginalTrackingUrl());
              }
      

      However, getApplicationAttempt doesn't return null but throws ApplicationAttemptNotFoundException:

          if (entity == null) {
            throw new ApplicationAttemptNotFoundException(
                "The entity for application attempt " + appAttemptId +
                " doesn't exist in the timeline store");
          } else {
            return convertToApplicationAttemptReport(entity);
          }
      

      They code isn't coupled well.

      Attachments

        1. YARN-3393.1.patch
          6 kB
          Zhijie Shen

        Activity

          People

            zjshen Zhijie Shen
            zjshen Zhijie Shen
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: