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

History server getApplicationReport NPE when fetching report for pre-2.8 job

    Details

    • Target Version/s:

      Description

      ApplicationHistoryManagerOnTimelineStore#convertToApplicationReport can NPE for a job that was run prior to the cluster upgrading to 2.8. It blindly assumes preemption metrics are present when CPU metrics are present, and when they are not it triggers the NPE.

      1. YARN-6598.001.patch
        8 kB
        Jason Lowe
      2. YARN-6598-branch-2.8.001.patch
        8 kB
        Jason Lowe

        Issue Links

          Activity

          Hide
          jlowe Jason Lowe added a comment -

          Sample stacktrace on the timelineserver side:

          java.lang.NullPointerException
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.convertToApplicationReport(ApplicationHistoryManagerOnTimelineStore.java:339)
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.generateApplicationReport(ApplicationHistoryManagerOnTimelineStore.java:646)
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.getApplications(ApplicationHistoryManagerOnTimelineStore.java:127)
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryClientService.getApplications(ApplicationHistoryClientService.java:195)
                  at org.apache.hadoop.yarn.server.webapp.WebServices$1.run(WebServices.java:163)
                  at org.apache.hadoop.yarn.server.webapp.WebServices$1.run(WebServices.java:160)
                  at java.security.AccessController.doPrivileged(Native Method)
                  at javax.security.auth.Subject.doAs(Subject.java:422)
                  at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1936)
                  at org.apache.hadoop.yarn.server.webapp.WebServices.getApps(WebServices.java:159)
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.AHSWebServices.getApps(AHSWebServices.java:96)
                  at org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.AHSWebServices.get(AHSWebServices.java:74)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                  at java.lang.reflect.Method.invoke(Method.java:498)
                  at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
                  at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
                  at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
                  at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
                  at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
                  at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
                  at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
                  at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)
                  at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)
                  at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)
                  at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)
                  at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
                  at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
                  at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:886)
                  at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:834)
                  at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:795)
                  at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
                  at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
                  at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
                  at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at com.yahoo.hadoop.HadoopBouncerFilter.doFilter(HadoopBouncerFilter.java:98)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:636)
                  at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationFilter.doFilter(DelegationTokenAuthenticationFilter.java:294)
                  at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:588)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.apache.hadoop.security.http.CrossOriginFilter.doFilter(CrossOriginFilter.java:95)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:78)
                  at com.yahoo.hadoop.GzipFilter.doFilter(GzipFilter.java:188)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.apache.hadoop.http.HttpServer2$QuotingInputFilter.doFilter(HttpServer2.java:1350)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45)
                  at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
                  at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
                  at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
                  at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
                  at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
                  at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
                  at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
                  at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
                  at org.mortbay.jetty.Server.handle(Server.java:326)
                  at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
                  at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
                  at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
                  at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
                  at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
                  at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
                  at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
          

          When clients try to query the RM for the app history and end up redirecting to the AHS for one of these jobs they get a different stacktrace. For example, an output from yarn application -status on a pre-2.8 job results in this:

          Exception in thread "main" java.lang.NullPointerException: java.lang.NullPointerException
          
          	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
          	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
          	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
          	at org.apache.hadoop.yarn.ipc.RPCUtil.instantiateException(RPCUtil.java:53)
          	at org.apache.hadoop.yarn.ipc.RPCUtil.instantiateRuntimeException(RPCUtil.java:85)
          	at org.apache.hadoop.yarn.ipc.RPCUtil.unwrapAndThrowException(RPCUtil.java:122)
          	at org.apache.hadoop.yarn.api.impl.pb.client.ApplicationHistoryProtocolPBClientImpl.getApplicationReport(ApplicationHistoryProtocolPBClientImpl.java:111)
          	at org.apache.hadoop.yarn.client.api.impl.AHSClientImpl.getApplicationReport(AHSClientImpl.java:102)
          	at org.apache.hadoop.yarn.client.api.impl.YarnClientImpl.getApplicationReport(YarnClientImpl.java:486)
          	at org.apache.hadoop.yarn.client.cli.ApplicationCLI.printApplicationReport(ApplicationCLI.java:588)
          	at org.apache.hadoop.yarn.client.cli.ApplicationCLI.run(ApplicationCLI.java:188)
          	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
          	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90)
          	at org.apache.hadoop.yarn.client.cli.ApplicationCLI.main(ApplicationCLI.java:93)
          Caused by: org.apache.hadoop.ipc.RemoteException(java.lang.NullPointerException): java.lang.NullPointerException
          
          	at org.apache.hadoop.ipc.Client.getRpcResponse(Client.java:1464)
          	at org.apache.hadoop.ipc.Client.call(Client.java:1410)
          	at org.apache.hadoop.ipc.Client.call(Client.java:1320)
          	at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:228)
          	at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:117)
          	at com.sun.proxy.$Proxy9.getApplicationReport(Unknown Source)
          	at org.apache.hadoop.yarn.api.impl.pb.client.ApplicationHistoryProtocolPBClientImpl.getApplicationReport(ApplicationHistoryProtocolPBClientImpl.java:108)
          	... 7 more
          
          Show
          jlowe Jason Lowe added a comment - Sample stacktrace on the timelineserver side: java.lang.NullPointerException at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.convertToApplicationReport(ApplicationHistoryManagerOnTimelineStore.java:339) at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.generateApplicationReport(ApplicationHistoryManagerOnTimelineStore.java:646) at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryManagerOnTimelineStore.getApplications(ApplicationHistoryManagerOnTimelineStore.java:127) at org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryClientService.getApplications(ApplicationHistoryClientService.java:195) at org.apache.hadoop.yarn.server.webapp.WebServices$1.run(WebServices.java:163) at org.apache.hadoop.yarn.server.webapp.WebServices$1.run(WebServices.java:160) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1936) at org.apache.hadoop.yarn.server.webapp.WebServices.getApps(WebServices.java:159) at org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.AHSWebServices.getApps(AHSWebServices.java:96) at org.apache.hadoop.yarn.server.applicationhistoryservice.webapp.AHSWebServices.get(AHSWebServices.java:74) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185) at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288) at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469) at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400) at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349) at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339) at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416) at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537) at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:886) at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:834) at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:795) at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163) at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58) at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118) at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at com.yahoo.hadoop.HadoopBouncerFilter.doFilter(HadoopBouncerFilter.java:98) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:636) at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticationFilter.doFilter(DelegationTokenAuthenticationFilter.java:294) at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:588) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.apache.hadoop.security.http.CrossOriginFilter.doFilter(CrossOriginFilter.java:95) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:78) at com.yahoo.hadoop.GzipFilter.doFilter(GzipFilter.java:188) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.apache.hadoop.http.HttpServer2$QuotingInputFilter.doFilter(HttpServer2.java:1350) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) When clients try to query the RM for the app history and end up redirecting to the AHS for one of these jobs they get a different stacktrace. For example, an output from yarn application -status on a pre-2.8 job results in this: Exception in thread "main" java.lang.NullPointerException: java.lang.NullPointerException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.apache.hadoop.yarn.ipc.RPCUtil.instantiateException(RPCUtil.java:53) at org.apache.hadoop.yarn.ipc.RPCUtil.instantiateRuntimeException(RPCUtil.java:85) at org.apache.hadoop.yarn.ipc.RPCUtil.unwrapAndThrowException(RPCUtil.java:122) at org.apache.hadoop.yarn.api.impl.pb.client.ApplicationHistoryProtocolPBClientImpl.getApplicationReport(ApplicationHistoryProtocolPBClientImpl.java:111) at org.apache.hadoop.yarn.client.api.impl.AHSClientImpl.getApplicationReport(AHSClientImpl.java:102) at org.apache.hadoop.yarn.client.api.impl.YarnClientImpl.getApplicationReport(YarnClientImpl.java:486) at org.apache.hadoop.yarn.client.cli.ApplicationCLI.printApplicationReport(ApplicationCLI.java:588) at org.apache.hadoop.yarn.client.cli.ApplicationCLI.run(ApplicationCLI.java:188) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90) at org.apache.hadoop.yarn.client.cli.ApplicationCLI.main(ApplicationCLI.java:93) Caused by: org.apache.hadoop.ipc.RemoteException(java.lang.NullPointerException): java.lang.NullPointerException at org.apache.hadoop.ipc.Client.getRpcResponse(Client.java:1464) at org.apache.hadoop.ipc.Client.call(Client.java:1410) at org.apache.hadoop.ipc.Client.call(Client.java:1320) at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:228) at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:117) at com.sun.proxy.$Proxy9.getApplicationReport(Unknown Source) at org.apache.hadoop.yarn.api.impl.pb.client.ApplicationHistoryProtocolPBClientImpl.getApplicationReport(ApplicationHistoryProtocolPBClientImpl.java:108) ... 7 more
          Hide
          jlowe Jason Lowe added a comment -

          This was broken by YARN-4218 when the preemption metrics went in. The metrics were assumed to be there without checking if they're missing, and they will be missing for any job that was run prior to the upgrade to 2.8.

          Show
          jlowe Jason Lowe added a comment - This was broken by YARN-4218 when the preemption metrics went in. The metrics were assumed to be there without checking if they're missing, and they will be missing for any job that was run prior to the upgrade to 2.8.
          Hide
          jlowe Jason Lowe added a comment -

          Patch that checks for preemption metrics entity presence and defaults to zero values if the entities are missing.

          Show
          jlowe Jason Lowe added a comment - Patch that checks for preemption metrics entity presence and defaults to zero values if the entities are missing.
          Hide
          jeagles Jonathan Eagles added a comment -

          Good catch Jason Lowe. We should exhaustively check the Enum.valueOf to ensure backwards compatibility in those cases as well. I think think we have been good about maintaining those without removing them, but since this code relies on parsing them, we should check.

          Show
          jeagles Jonathan Eagles added a comment - Good catch Jason Lowe . We should exhaustively check the Enum.valueOf to ensure backwards compatibility in those cases as well. I think think we have been good about maintaining those without removing them, but since this code relies on parsing them, we should check.
          Hide
          hadoopqa Hadoop QA added a comment -
          +1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 23s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 1 new or modified test files.
          +1 mvninstall 14m 45s trunk passed
          +1 compile 0m 23s trunk passed
          +1 checkstyle 0m 15s trunk passed
          +1 mvnsite 0m 22s trunk passed
          +1 mvneclipse 0m 16s trunk passed
          +1 findbugs 0m 34s trunk passed
          +1 javadoc 0m 15s trunk passed
          +1 mvninstall 0m 19s the patch passed
          +1 compile 0m 17s the patch passed
          +1 javac 0m 17s the patch passed
          -0 checkstyle 0m 13s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice: The patch generated 1 new + 88 unchanged - 3 fixed = 89 total (was 91)
          +1 mvnsite 0m 21s the patch passed
          +1 mvneclipse 0m 14s the patch passed
          +1 whitespace 0m 0s The patch has no whitespace issues.
          +1 findbugs 0m 40s the patch passed
          +1 javadoc 0m 13s the patch passed
          +1 unit 2m 45s hadoop-yarn-server-applicationhistoryservice in the patch passed.
          +1 asflicense 0m 17s The patch does not generate ASF License warnings.
          23m 53s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:14b5c93
          JIRA Issue YARN-6598
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12867860/YARN-6598.001.patch
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux 4d467faad1d6 3.13.0-106-generic #153-Ubuntu SMP Tue Dec 6 15:44:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision trunk / 7bc2172
          Default Java 1.8.0_121
          findbugs v3.1.0-RC1
          checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/15919/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-applicationhistoryservice.txt
          Test Results https://builds.apache.org/job/PreCommit-YARN-Build/15919/testReport/
          modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice
          Console output https://builds.apache.org/job/PreCommit-YARN-Build/15919/console
          Powered by Apache Yetus 0.5.0-SNAPSHOT http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - +1 overall Vote Subsystem Runtime Comment 0 reexec 0m 23s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 1 new or modified test files. +1 mvninstall 14m 45s trunk passed +1 compile 0m 23s trunk passed +1 checkstyle 0m 15s trunk passed +1 mvnsite 0m 22s trunk passed +1 mvneclipse 0m 16s trunk passed +1 findbugs 0m 34s trunk passed +1 javadoc 0m 15s trunk passed +1 mvninstall 0m 19s the patch passed +1 compile 0m 17s the patch passed +1 javac 0m 17s the patch passed -0 checkstyle 0m 13s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice: The patch generated 1 new + 88 unchanged - 3 fixed = 89 total (was 91) +1 mvnsite 0m 21s the patch passed +1 mvneclipse 0m 14s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 0m 40s the patch passed +1 javadoc 0m 13s the patch passed +1 unit 2m 45s hadoop-yarn-server-applicationhistoryservice in the patch passed. +1 asflicense 0m 17s The patch does not generate ASF License warnings. 23m 53s Subsystem Report/Notes Docker Image:yetus/hadoop:14b5c93 JIRA Issue YARN-6598 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12867860/YARN-6598.001.patch Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 4d467faad1d6 3.13.0-106-generic #153-Ubuntu SMP Tue Dec 6 15:44:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision trunk / 7bc2172 Default Java 1.8.0_121 findbugs v3.1.0-RC1 checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/15919/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-applicationhistoryservice.txt Test Results https://builds.apache.org/job/PreCommit-YARN-Build/15919/testReport/ modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice Console output https://builds.apache.org/job/PreCommit-YARN-Build/15919/console Powered by Apache Yetus 0.5.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
          Hide
          jlowe Jason Lowe added a comment -

          We should exhaustively check the Enum.valueOf to ensure backwards compatibility in those cases as well.

          I checked all the enums referenced for valueOf (i.e.: YarnApplicationState, FinalApplicationStatus, YarnApplicationAttemptState, ). YarnApplicationAttemptState had the FINAL_SAVING enum removed in YARN-1345, but that change was committed way back in Hadoop 2.4.0 which did not support rolling upgrades. So we should be good there. ContainerState had a QUEUED state that was changed to the SCHEDULED state in YARN-4597. However this change, and YARN-2883 that added the QUEUED state originally, only went into Hadoop 2.9.0 and later, so the removed item was never in an official release. So we should be fine there as well.

          Show
          jlowe Jason Lowe added a comment - We should exhaustively check the Enum.valueOf to ensure backwards compatibility in those cases as well. I checked all the enums referenced for valueOf (i.e.: YarnApplicationState, FinalApplicationStatus, YarnApplicationAttemptState, ). YarnApplicationAttemptState had the FINAL_SAVING enum removed in YARN-1345 , but that change was committed way back in Hadoop 2.4.0 which did not support rolling upgrades. So we should be good there. ContainerState had a QUEUED state that was changed to the SCHEDULED state in YARN-4597 . However this change, and YARN-2883 that added the QUEUED state originally, only went into Hadoop 2.9.0 and later, so the removed item was never in an official release. So we should be fine there as well.
          Hide
          jeagles Jonathan Eagles added a comment -

          +1. Thanks for verifying this extra compatibility, Jason Lowe.

          Show
          jeagles Jonathan Eagles added a comment - +1. Thanks for verifying this extra compatibility, Jason Lowe .
          Hide
          jeagles Jonathan Eagles added a comment -

          Jason Lowe, can you provide a patch that will work with branch-2.8 and branch-2.8.1. There is a conflict that is more than trivial.

          Show
          jeagles Jonathan Eagles added a comment - Jason Lowe , can you provide a patch that will work with branch-2.8 and branch-2.8.1. There is a conflict that is more than trivial.
          Hide
          hudson Hudson added a comment -

          SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #11734 (See https://builds.apache.org/job/Hadoop-trunk-Commit/11734/)
          YARN-6598. History server getApplicationReport NPE when fetching report (jeagles: rev c48f2976a3de60b95c4a5ada4f0131c4cdde177a)

          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
          Show
          hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #11734 (See https://builds.apache.org/job/Hadoop-trunk-Commit/11734/ ) YARN-6598 . History server getApplicationReport NPE when fetching report (jeagles: rev c48f2976a3de60b95c4a5ada4f0131c4cdde177a) (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
          Hide
          jlowe Jason Lowe added a comment -

          Thanks, Jon! Here's an equivalent patch for branch-2.8.

          Show
          jlowe Jason Lowe added a comment - Thanks, Jon! Here's an equivalent patch for branch-2.8.
          Hide
          jeagles Jonathan Eagles added a comment -

          Thanks, Jason Lowe. Committed this to trunk, branch-2, branch-2.8, and branch-2.8.1.

          Show
          jeagles Jonathan Eagles added a comment - Thanks, Jason Lowe . Committed this to trunk, branch-2, branch-2.8, and branch-2.8.1.
          Hide
          hadoopqa Hadoop QA added a comment -
          +1 overall



          Vote Subsystem Runtime Comment
          0 reexec 14m 6s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 1 new or modified test files.
          +1 mvninstall 9m 29s branch-2.8 passed
          +1 compile 0m 18s branch-2.8 passed with JDK v1.8.0_131
          +1 compile 0m 21s branch-2.8 passed with JDK v1.7.0_121
          +1 checkstyle 0m 17s branch-2.8 passed
          +1 mvnsite 0m 27s branch-2.8 passed
          +1 mvneclipse 0m 27s branch-2.8 passed
          +1 findbugs 0m 43s branch-2.8 passed
          +1 javadoc 0m 14s branch-2.8 passed with JDK v1.8.0_131
          +1 javadoc 0m 18s branch-2.8 passed with JDK v1.7.0_121
          +1 mvninstall 0m 19s the patch passed
          +1 compile 0m 16s the patch passed with JDK v1.8.0_131
          +1 javac 0m 16s the patch passed
          +1 compile 0m 18s the patch passed with JDK v1.7.0_121
          +1 javac 0m 18s the patch passed
          -0 checkstyle 0m 14s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice: The patch generated 1 new + 46 unchanged - 1 fixed = 47 total (was 47)
          +1 mvnsite 0m 23s the patch passed
          +1 mvneclipse 0m 14s the patch passed
          +1 whitespace 0m 0s The patch has no whitespace issues.
          +1 findbugs 0m 49s the patch passed
          +1 javadoc 0m 11s the patch passed with JDK v1.8.0_131
          +1 javadoc 0m 16s the patch passed with JDK v1.7.0_121
          +1 unit 3m 11s hadoop-yarn-server-applicationhistoryservice in the patch passed with JDK v1.7.0_121.
          +1 asflicense 0m 19s The patch does not generate ASF License warnings.
          37m 59s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:5970e82
          JIRA Issue YARN-6598
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12868101/YARN-6598-branch-2.8.001.patch
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux ffdbb32b73e3 3.13.0-107-generic #154-Ubuntu SMP Tue Dec 20 09:57:27 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision branch-2.8 / f42222a
          Default Java 1.7.0_121
          Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_131 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_121
          findbugs v3.0.0
          checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/15928/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-applicationhistoryservice.txt
          JDK v1.7.0_121 Test Results https://builds.apache.org/job/PreCommit-YARN-Build/15928/testReport/
          modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice
          Console output https://builds.apache.org/job/PreCommit-YARN-Build/15928/console
          Powered by Apache Yetus 0.5.0-SNAPSHOT http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - +1 overall Vote Subsystem Runtime Comment 0 reexec 14m 6s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 1 new or modified test files. +1 mvninstall 9m 29s branch-2.8 passed +1 compile 0m 18s branch-2.8 passed with JDK v1.8.0_131 +1 compile 0m 21s branch-2.8 passed with JDK v1.7.0_121 +1 checkstyle 0m 17s branch-2.8 passed +1 mvnsite 0m 27s branch-2.8 passed +1 mvneclipse 0m 27s branch-2.8 passed +1 findbugs 0m 43s branch-2.8 passed +1 javadoc 0m 14s branch-2.8 passed with JDK v1.8.0_131 +1 javadoc 0m 18s branch-2.8 passed with JDK v1.7.0_121 +1 mvninstall 0m 19s the patch passed +1 compile 0m 16s the patch passed with JDK v1.8.0_131 +1 javac 0m 16s the patch passed +1 compile 0m 18s the patch passed with JDK v1.7.0_121 +1 javac 0m 18s the patch passed -0 checkstyle 0m 14s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice: The patch generated 1 new + 46 unchanged - 1 fixed = 47 total (was 47) +1 mvnsite 0m 23s the patch passed +1 mvneclipse 0m 14s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 0m 49s the patch passed +1 javadoc 0m 11s the patch passed with JDK v1.8.0_131 +1 javadoc 0m 16s the patch passed with JDK v1.7.0_121 +1 unit 3m 11s hadoop-yarn-server-applicationhistoryservice in the patch passed with JDK v1.7.0_121. +1 asflicense 0m 19s The patch does not generate ASF License warnings. 37m 59s Subsystem Report/Notes Docker Image:yetus/hadoop:5970e82 JIRA Issue YARN-6598 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12868101/YARN-6598-branch-2.8.001.patch Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux ffdbb32b73e3 3.13.0-107-generic #154-Ubuntu SMP Tue Dec 20 09:57:27 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision branch-2.8 / f42222a Default Java 1.7.0_121 Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_131 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_121 findbugs v3.0.0 checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/15928/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-applicationhistoryservice.txt JDK v1.7.0_121 Test Results https://builds.apache.org/job/PreCommit-YARN-Build/15928/testReport/ modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice Console output https://builds.apache.org/job/PreCommit-YARN-Build/15928/console Powered by Apache Yetus 0.5.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
          Hide
          vinodkv Vinod Kumar Vavilapalli added a comment -

          2.8.1 became a security release. Moving fix-version to 2.8.2 after the fact.

          Show
          vinodkv Vinod Kumar Vavilapalli added a comment - 2.8.1 became a security release. Moving fix-version to 2.8.2 after the fact.

            People

            • Assignee:
              jlowe Jason Lowe
              Reporter:
              jlowe Jason Lowe
            • Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development