[
https://issues.apache.org/jira/browse/AMBARI-139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
vitthal (Suhas) Gogate reassigned AMBARI-139:
---------------------------------------------
Assignee: Devaraj Das
> State machine generates null pointer exception when it does not find
> component plugin for one of the active services mentioned in cluster
> definition
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: AMBARI-139
> URL: https://issues.apache.org/jira/browse/AMBARI-139
> Project: Ambari
> Issue Type: Bug
> Components: controller
> Reporter: vitthal (Suhas) Gogate
> Assignee: Devaraj Das
>
> Scenario:
> 1. User defines a cluster w/ a stack that has only common and hdfs components
> defined in it.
> 2. User specifies active services as "mapred" and "hdfs", where "mapred"
> component is not in the stack.
> 3. State machine gets null pointer when loading the component plugin for
> "mapred" as one of the active services.
> ** this may not be the case as we may have all the components defined as part
> of our default stack, but at least we have to make sure
> that if user specifies some absurd name as part of active services in the
> cluster definition, we should not be looking for the its component definition
> and if plugin pointer is null we should not operate further on this.
> public ServiceImpl(Cluster cluster, ClusterFSM clusterFsm, String
> serviceName)
> throws IOException {
> this.clusterFsm = clusterFsm;
> this.serviceName = serviceName;
> //load plugin and get the roles and create them
> this.plugin = cluster.getComponentDefinition(serviceName); *** CHECK if
> plugin is not null?? **
> String[] roles = this.plugin.getActiveRoles(); ** NULL pointer exception
> here for "mapred" component ***
> for (String role : roles) {
> RoleImpl roleImpl = new RoleImpl(this, role);
> serviceRoles.add(roleImpl);
> }
>
> stateMachine = stateMachineFactory.make(this);
> }
>
> java.lang.NullPointerException
> at
> org.apache.ambari.resource.statemachine.ServiceImpl.<init>(ServiceImpl.java:128)
> at
> org.apache.ambari.resource.statemachine.ClusterImpl.<init>(ClusterImpl.java:121)
> at
> org.apache.ambari.resource.statemachine.StateMachineInvoker.createCluster(StateMachineInvoker.java:81)
> at org.apache.ambari.controller.Clusters.addCluster(Clusters.java:498)
> at org.apache.ambari.controller.Clusters.<init>(Clusters.java:139)
> at org.apache.ambari.controller.Clusters.getInstance(Clusters.java:151)
> at org.apache.ambari.controller.Controller.run(Controller.java:110)
> at org.apache.ambari.controller.Controller.main(Controller.java:143)
> 2011-11-26 17:14:09.392:INFO::jetty-6.1.26
> Nov 26, 2011 5:14:09 PM com.sun.jersey.api.core.PackagesResourceConfig in
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira