[ 
https://issues.apache.org/jira/browse/AMBARI-11665?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Siddharth Wagle updated AMBARI-11665:
-------------------------------------
    Description: 
IllegalArgumentException when calling host API that includes host with no 
cluster association.

{code}
http://c6401.ambari.apache.org:8080/api/v1/hosts/c6403.ambari.apache.org

{
  "status" : 400,
  "message" : "Invalid Request: Invalid arguments, cluster name should not be 
null"
}
{code}

The agent is running on {{c6403.ambari.apache.org}}, but it has not been added 
to the cluster.

In the stack trace ...

{code}
java.lang.IllegalArgumentException: Invalid arguments, cluster name should not 
be null
        at 
org.apache.ambari.server.controller.AmbariManagementControllerImpl.getConfigurations(AmbariManagementControllerImpl.java:1076)
        at 
org.apache.ambari.server.controller.AmbariManagementControllerImpl.getConfigurations(AmbariManagementControllerImpl.java:2683)
        at 
org.apache.ambari.server.controller.internal.ConfigurationResourceProvider$2.invoke(ConfigurationResourceProvider.java:154)
        at 
org.apache.ambari.server.controller.internal.ConfigurationResourceProvider$2.invoke(ConfigurationResourceProvider.java:151)
        at 
org.apache.ambari.server.controller.internal.AbstractResourceProvider.getResources(AbstractResourceProvider.java:302)
        at 
org.apache.ambari.server.controller.internal.ConfigurationResourceProvider.getResources(ConfigurationResourceProvider.java:151)
        at 
org.apache.ambari.server.controller.internal.AbstractProviderModule.getDesiredConfigMap(AbstractProviderModule.java:800)
        at 
org.apache.ambari.server.controller.internal.AbstractProviderModule.getCollectorPortName(AbstractProviderModule.java:287)
        at 
org.apache.ambari.server.controller.metrics.timeline.AMSPropertyProvider.getMetricsRequests(AMSPropertyProvider.java:411)
        at 
org.apache.ambari.server.controller.metrics.timeline.AMSPropertyProvider.populateResourcesWithProperties(AMSPropertyProvider.java:345)
        at 
org.apache.ambari.server.controller.metrics.MetricsPropertyProvider.populateResources(MetricsPropertyProvider.java:127)
        at 
org.apache.ambari.server.controller.metrics.MetricsPropertyProviderProxy.populateResources(MetricsPropertyProviderProxy.java:170)
{code}

... it looks like the AMS is trying to populate the metrics for the host and it 
calls an internal method that expects the host to be associated with a cluster.

STR :

# Create a cluster with AMS.
# Install ambari-agent on host that is not currently in cluster and set 
hostname in its /etc/ambari-agent/conf/ambari-agent.ini
# call API to get hosts at root level 
{{http://c6401.ambari.apache.org:8080/api/v1/hosts/c6403.ambari.apache.org}}

  was:
After upgrading Ambari from 1.7 to 2.0.1 , ambari server fails to start. HDP 
upgrade was from HDP 2.1.7 to HDP 2.2.4.

with this error.
{code}
30 May 2015 11:17:51,492  INFO [main] AmbariManagementControllerImpl:256 - 
Initializing the AmbariManagementControllerImpl
30 May 2015 11:17:51,557  INFO [main] DatabaseChecker:152 - Checking DB store 
version
30 May 2015 11:17:51,559  INFO [main] DatabaseChecker:178 - DB store version is 
compatible
30 May 2015 11:17:51,560  INFO [main] DatabaseChecker:55 - Checking DB 
consistency
30 May 2015 11:17:51,896 ERROR [main] AmbariServer:667 - Failed to run the 
Ambari Server
org.apache.ambari.server.StackAccessException: Stack data, stackName=HDP, 
stackVersion=2.2, serviceName=STORM, componentName=STORM_REST_API
        at 
org.apache.ambari.server.api.services.AmbariMetaInfo.getComponent(AmbariMetaInfo.java:268)
        at 
org.apache.ambari.server.controller.utilities.DatabaseChecker.checkDBConsistency(DatabaseChecker.java:96)
        at 
org.apache.ambari.server.controller.AmbariServer.run(AmbariServer.java:217)
        at 
org.apache.ambari.server.controller.AmbariServer.main(AmbariServer.java:665)
{code}


> AMS : IllegalArgumentException populating metrics for host with no cluster 
> association
> --------------------------------------------------------------------------------------
>
>                 Key: AMBARI-11665
>                 URL: https://issues.apache.org/jira/browse/AMBARI-11665
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.0.0
>            Reporter: Siddharth Wagle
>            Assignee: Siddharth Wagle
>            Priority: Critical
>             Fix For: 2.1.0
>
>         Attachments: AMBARI-11665.patch
>
>
> IllegalArgumentException when calling host API that includes host with no 
> cluster association.
> {code}
> http://c6401.ambari.apache.org:8080/api/v1/hosts/c6403.ambari.apache.org
> {
>   "status" : 400,
>   "message" : "Invalid Request: Invalid arguments, cluster name should not be 
> null"
> }
> {code}
> The agent is running on {{c6403.ambari.apache.org}}, but it has not been 
> added to the cluster.
> In the stack trace ...
> {code}
> java.lang.IllegalArgumentException: Invalid arguments, cluster name should 
> not be null
>         at 
> org.apache.ambari.server.controller.AmbariManagementControllerImpl.getConfigurations(AmbariManagementControllerImpl.java:1076)
>         at 
> org.apache.ambari.server.controller.AmbariManagementControllerImpl.getConfigurations(AmbariManagementControllerImpl.java:2683)
>         at 
> org.apache.ambari.server.controller.internal.ConfigurationResourceProvider$2.invoke(ConfigurationResourceProvider.java:154)
>         at 
> org.apache.ambari.server.controller.internal.ConfigurationResourceProvider$2.invoke(ConfigurationResourceProvider.java:151)
>         at 
> org.apache.ambari.server.controller.internal.AbstractResourceProvider.getResources(AbstractResourceProvider.java:302)
>         at 
> org.apache.ambari.server.controller.internal.ConfigurationResourceProvider.getResources(ConfigurationResourceProvider.java:151)
>         at 
> org.apache.ambari.server.controller.internal.AbstractProviderModule.getDesiredConfigMap(AbstractProviderModule.java:800)
>         at 
> org.apache.ambari.server.controller.internal.AbstractProviderModule.getCollectorPortName(AbstractProviderModule.java:287)
>         at 
> org.apache.ambari.server.controller.metrics.timeline.AMSPropertyProvider.getMetricsRequests(AMSPropertyProvider.java:411)
>         at 
> org.apache.ambari.server.controller.metrics.timeline.AMSPropertyProvider.populateResourcesWithProperties(AMSPropertyProvider.java:345)
>         at 
> org.apache.ambari.server.controller.metrics.MetricsPropertyProvider.populateResources(MetricsPropertyProvider.java:127)
>         at 
> org.apache.ambari.server.controller.metrics.MetricsPropertyProviderProxy.populateResources(MetricsPropertyProviderProxy.java:170)
> {code}
> ... it looks like the AMS is trying to populate the metrics for the host and 
> it calls an internal method that expects the host to be associated with a 
> cluster.
> STR :
> # Create a cluster with AMS.
> # Install ambari-agent on host that is not currently in cluster and set 
> hostname in its /etc/ambari-agent/conf/ambari-agent.ini
> # call API to get hosts at root level 
> {{http://c6401.ambari.apache.org:8080/api/v1/hosts/c6403.ambari.apache.org}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to