Jonathan Hurley created AMBARI-23919:
----------------------------------------

             Summary: Stack upgrade from 2.6.5 to 3.0.0 fails because WebHCat 
component doesn't exist
                 Key: AMBARI-23919
                 URL: https://issues.apache.org/jira/browse/AMBARI-23919
             Project: Ambari
          Issue Type: Bug
          Components: ambari-server
    Affects Versions: 2.7.0
            Reporter: Jonathan Hurley
            Assignee: Jonathan Hurley
             Fix For: 2.7.0


When upgrading from one stack to another where the target stack is missing 
services or components, we hit the following NPE:

{code}
2018-05-21 14:27:59,197  WARN [ambari-client-thread-153] HttpChannel:507 - 
/api/v1/clusters/fff/upgrades
java.lang.NullPointerException
  at 
org.apache.ambari.server.state.UpgradeHelper.setDisplayNames(UpgradeHelper.java:838)
  at 
org.apache.ambari.server.state.UpgradeHelper.createSequence(UpgradeHelper.java:467)
  at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.createUpgrade(UpgradeResourceProvider.java:721)
  at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider$1.invoke(UpgradeResourceProvider.java:348)
  at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider$1.invoke(UpgradeResourceProvider.java:340)
  at 
org.apache.ambari.server.controller.internal.AbstractResourceProvider.invokeWithRetry(AbstractResourceProvider.java:465)
  at 
org.apache.ambari.server.controller.internal.AbstractResourceProvider.createResources(AbstractResourceProvider.java:288)
  at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.createResources(UpgradeResourceProvider.java:340)
  at 
org.apache.ambari.server.controller.internal.ClusterControllerImpl.createResources(ClusterControllerImpl.java:296)
  at 
org.apache.ambari.server.api.services.persistence.PersistenceManagerImpl.create(PersistenceManagerImpl.java:97)
  at 
org.apache.ambari.server.api.handlers.CreateHandler.persist(CreateHandler.java:50)
  at 
org.apache.ambari.server.api.handlers.BaseManagementHandler.handleRequest(BaseManagementHandler.java:68)
  at 
org.apache.ambari.server.api.services.BaseRequest.process(BaseRequest.java:144)
  at 
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:163)
  at 
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:127)
  at 
org.apache.ambari.server.api.services.UpgradeService.createUpgrade(UpgradeService.java:59)
  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)
{code}
I've tried to check component info for null and return from method but was 
faced with new issue:
{code}
2018-05-21 17:55:55,426  WARN [ambari-client-thread-38] HttpChannel:507 - 
/api/v1/clusters/fff/upgrades
java.lang.NullPointerException
        at 
org.apache.ambari.server.state.ConfigHelper.getPropertyValuesWithPropertyType(ConfigHelper.java:873)
        at 
org.apache.ambari.server.state.ConfigHelper.getPropertyValuesWithPropertyType(ConfigHelper.java:846)
        at 
org.apache.ambari.server.controller.AmbariCustomCommandExecutionHelper.addCustomCommandAction(AmbariCustomCommandExecutionHelper.java:408)
        at 
org.apache.ambari.server.controller.AmbariCustomCommandExecutionHelper.addExecutionCommandsToStage(AmbariCustomCommandExecutionHelper.java:1200)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.makeCommandStage(UpgradeResourceProvider.java:1157)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.createStage(UpgradeResourceProvider.java:932)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.createUpgrade(UpgradeResourceProvider.java:835)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider$1.invoke(UpgradeResourceProvider.java:348)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider$1.invoke(UpgradeResourceProvider.java:340)
        at 
org.apache.ambari.server.controller.internal.AbstractResourceProvider.invokeWithRetry(AbstractResourceProvider.java:465)
        at 
org.apache.ambari.server.controller.internal.AbstractResourceProvider.createResources(AbstractResourceProvider.java:288)
        at 
org.apache.ambari.server.controller.internal.UpgradeResourceProvider.createResources(UpgradeResourceProvider.java:340)
        at 
org.apache.ambari.server.controller.internal.ClusterControllerImpl.createResources(ClusterControllerImpl.java:296)
        at 
org.apache.ambari.server.api.services.persistence.PersistenceManagerImpl.create(PersistenceManagerImpl.java:97)
        at 
org.apache.ambari.server.api.handlers.CreateHandler.persist(CreateHandler.java:50)
        at 
org.apache.ambari.server.api.handlers.BaseManagementHandler.handleRequest(BaseManagementHandler.java:68)
        at 
org.apache.ambari.server.api.services.BaseRequest.process(BaseRequest.java:144)
        at 
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:163)
        at 
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:127)
        at 
org.apache.ambari.server.api.services.UpgradeService.createUpgrade(UpgradeService.java:59)
        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)
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to