Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-15726

Removing unknown host from cluster throws NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.4.0
    • 2.4.0
    • ambari-server
    • None

    Description

      Removing unknown host from cluster throws NPE exception:
      API call:

      curl -u admin:admin  -H 'X-Requested-By: ambari' -X DELETE  http://c6401.ambari.apache.org:8080/api/v1/clusters/a/hosts/c6402.ambari.apache.org
      {
        "status": 500,
        "message": "Server Error"
      }
      

      stack trace:

      06 Apr 2016 01:12:34,724  WARN [qtp-ambari-client-95] ServletHandler:628 - /api/v1/clusters/a/hosts/c6402.ambari.apache.org
      java.lang.NullPointerException
              at java.util.HashSet.<init>(HashSet.java:118)
              at org.apache.ambari.server.state.cluster.ClustersImpl.deleteHost(ClustersImpl.java:843)
              at org.apache.ambari.server.controller.internal.HostResourceProvider.deleteHosts(HostResourceProvider.java:889)
              at org.apache.ambari.server.orm.AmbariJpaLocalTxnInterceptor.invoke(AmbariJpaLocalTxnInterceptor.java:128)
              at org.apache.ambari.server.controller.internal.HostResourceProvider$4.invoke(HostResourceProvider.java:344)
              at org.apache.ambari.server.controller.internal.HostResourceProvider$4.invoke(HostResourceProvider.java:341)
              at org.apache.ambari.server.controller.internal.AbstractResourceProvider.invokeWithRetry(AbstractResourceProvider.java:451)
              at org.apache.ambari.server.controller.internal.AbstractResourceProvider.modifyResources(AbstractResourceProvider.java:332)
              at org.apache.ambari.server.controller.internal.HostResourceProvider.deleteResourcesAuthorized(HostResourceProvider.java:341)
              at org.apache.ambari.server.controller.internal.AbstractAuthorizedResourceProvider.deleteResources(AbstractAuthorizedResourceProvider.java:332)
              at org.apache.ambari.server.controller.internal.ClusterControllerImpl.deleteResources(ClusterControllerImpl.java:330)
              at org.apache.ambari.server.api.services.persistence.PersistenceManagerImpl.delete(PersistenceManagerImpl.java:132)
              at org.apache.ambari.server.api.handlers.DeleteHandler.persist(DeleteHandler.java:45)
              at org.apache.ambari.server.api.handlers.BaseManagementHandler.handleRequest(BaseManagementHandler.java:72)
              at org.apache.ambari.server.api.services.BaseRequest.process(BaseRequest.java:145)
              at org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:119)
              at org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:83)
              at org.apache.ambari.server.api.services.HostService.deleteHost(HostService.java:194)
      

      API should return 404 NoSuchResourceException.

      Attachments

        1. rb45785.patch
          0.8 kB
          Ajit Kumar

        Issue Links

          Activity

            People

              ajit.kumar Ajit Kumar
              ajit.kumar Ajit Kumar
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: