You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Alejandro Fernandez (JIRA)" <ji...@apache.org> on 2015/04/11 03:50:12 UTC

[jira] [Created] (AMBARI-10451) Stack Validator fails when when HBase properties hbase_master_heapsize or hbase_regionserver_heapsize are added to both hbase-env and hbase-site - returns 500 error

Alejandro Fernandez created AMBARI-10451:
--------------------------------------------

             Summary: Stack Validator fails when when HBase properties hbase_master_heapsize or hbase_regionserver_heapsize are added to both hbase-env and hbase-site - returns 500 error
                 Key: AMBARI-10451
                 URL: https://issues.apache.org/jira/browse/AMBARI-10451
             Project: Ambari
          Issue Type: Bug
          Components: ambari-server
    Affects Versions: 2.1.0
            Reporter: Alejandro Fernandez
            Assignee: Alejandro Fernandez
             Fix For: 2.1.0


In Ambari 2.0.0 with HDP 2.2.0.0, HBase has these two properties in hbase-env,
hbase_master_heapsize
hbase_regionserver_heapsize

If a user attempts to add them to hbase-site, then saving the configs will fail.
Today, the hbase-site validator checks both hbase-site and hbase-env using the recommended properties for hbase-site. This causes a failure because the properties will exist in the hbase-site configs, but not in the recommended params for it.

Further, there's another bug in which the hbase-env properties are not checked at all.

This was found while changing configs in the HDP sandbox VM.
PROBLEM: Receiving Error dialog display when trying to add service knox in Sandbox RC Build "500 status code recieved GET method for API /api/v1/stacks/HDP/versions/2.2/validations"

This eventually goes through and works, it's just the message is alarming. 

Parts of the stack: 
{code}
  validationItems = self.getConfigurationsValidationItems(services, hosts)
  File "/var/lib/ambari-server/resources/scripts/./../stacks/HDP/2.0.6/services/stack_advisor.py", line 273, in getConfigurat
ionsValidationItems
    resultItems = method(siteProperties, recommendedDefaults[siteName]["properties"], configurations, services, hosts)
  File "/var/lib/ambari-server/resources/scripts/./../stacks/HDP/2.2/services/stack_advisor.py", line 337, in validateHBASECo
nfigurations
    super(HDP22StackAdvisor, self).validateHbaseEnvConfigurations(properties, recommendedDefaults, configurations, services,
hosts)
  File "/var/lib/ambari-server/resources/scripts/./../stacks/HDP/2.0.6/services/stack_advisor.py", line 509, in validateHbase
EnvConfigurations
    validationItems = [ {"config-name": 'hbase_regionserver_heapsize', "item": self.validatorLessThenDefaultValue(properties,
 recommendedDefaults, 'hbase_regionserver_heapsize')},
  File "/var/lib/ambari-server/resources/scripts/./../stacks/HDP/2.0.6/services/stack_advisor.py", line 450, in validatorLess
ThenDefaultValue
    defaultValue = to_number(recommendedDefaults[propertyName])
KeyError: 'hbase_regionserver_heapsize'
08 Apr 2015 18:18:43,711  WARN [qtp-client-21] AbstractResourceProvider:90 - Error occurred during validation
org.apache.ambari.server.api.services.stackadvisor.StackAdvisorException: KeyError: 'hbase_regionserver_heapsize'
        at org.apache.ambari.server.api.services.stackadvisor.StackAdvisorRunner.runScript(StackAdvisorRunner.java:94)
        at org.apache.ambari.server.api.services.stackadvisor.commands.StackAdvisorCommand.invoke(StackAdvisorCommand.java:22
6)
        at org.apache.ambari.server.api.services.stackadvisor.StackAdvisorHelper.validate(StackAdvisorHelper.java:73)
        at org.apache.ambari.server.controller.internal.ValidationResourceProvider.createResources(ValidationResourceProvider
.java:85)
        at org.apache.ambari.server.controller.internal.ClusterControllerImpl.createResources(ClusterControllerImpl.java:289)
        at org.apache.ambari.server.api.services.persistence.PersistenceManagerImpl.create(PersistenceManagerImpl.java:75)
        at org.apache.ambari.server.api.handlers.CreateHandler.persist(CreateHandler.java:36)
        at org.apache.ambari.server.api.handlers.BaseManagementHandler.handleRequest(BaseManagementHandler.java:72)
        at org.apache.ambari.server.api.services.BaseRequest.process(BaseRequest.java:135)
        at org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:103)
        at org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:72)
        at org.apache.ambari.server.api.services.ValidationService.getValidation(ValidationService.java:58)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
        at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispat
ch(AbstractResourceMethodDispatchProvider.java:205)
        at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatche
r.java:75)
        at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
{code}

BUSIMPACT:  Can potentially cause confusion for the customer. 

STEPS TO REPRODUCE: 
1. Download RC build of Sandbox : 
nfs://storage.hwhq.hortonworks.com/corpshare/Robert/SandboxBuilds/ChamplainM10Ambari2.0/Sandbox_HDP_2.2.4_virtualbox_06_04_2015.ova.

2.  import sandbox image into virtualbox


3.  Start ambari-server and agent since by default sandbox does not start these services

4.  Click
Actions -> + Add service -> select Knox -> next

you should see some error prompts. you can click next and knox is actually deployed. 








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