The root reason is that i make install order in a loop.
But when ambari service return 500, That ambari shows success and can enter
into dashboard is so bad.
If possible, can mark this as a issue on the JIRA and fix it?
- Original Message -
From: "xiang dai"
To: dev@ambari.apache.org
Sent: Thursday, April 19, 2018 12:19:25 PM
Subject: java OOM when install services but show success
I add 30+ services in HDP stack, and install all of them, when i click next
from step8 to step9,
server error and return 500, then it shows success and click next can enter
into dashboard.
I found below info in log:
Caused by: java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:3181)
at java.util.ArrayList.grow(ArrayList.java:265)
at java.util.ArrayList.ensureExplicitCapacity(ArrayList.java:239)
at java.util.ArrayList.ensureCapacityInternal(ArrayList.java:231)
at java.util.ArrayList.add(ArrayList.java:462)
at
org.apache.ambari.server.stageplanner.RoleGraph.getStages(RoleGraph.java:185)
at
org.apache.ambari.server.controller.AmbariManagementControllerImpl.doStageCreation(AmbariManagementControllerImpl.java:3113)
at
org.apache.ambari.server.controller.AmbariManagementControllerImpl.addStages(AmbariManagementControllerImpl.java:3436)
at
org.apache.ambari.server.controller.internal.ServiceResourceProvider.updateServices(ServiceResourceProvider.java:778)
at
org.apache.ambari.server.controller.internal.ServiceResourceProvider$4.invoke(ServiceResourceProvider.java:376)
at
org.apache.ambari.server.controller.internal.ServiceResourceProvider$4.invoke(ServiceResourceProvider.java:373)
at
org.apache.ambari.server.controller.internal.AbstractResourceProvider.invokeWithRetry(AbstractResourceProvider.java:455)
at
org.apache.ambari.server.controller.internal.AbstractResourceProvider.modifyResources(AbstractResourceProvider.java:336)
at
org.apache.ambari.server.controller.internal.ServiceResourceProvider.doUpdateResources(ServiceResourceProvider.java:373)
at
org.apache.ambari.server.controller.internal.ServiceResourceProvider.updateResourcesAuthorized(ServiceResourceProvider.java:287)
at
org.apache.ambari.server.controller.internal.AbstractAuthorizedResourceProvider.updateResources(AbstractAuthorizedResourceProvider.java:301)
at
org.apache.ambari.server.controller.internal.ClusterControllerImpl.updateResources(ClusterControllerImpl.java:319)
at
org.apache.ambari.server.api.services.persistence.PersistenceManagerImpl.update(PersistenceManagerImpl.java:125)
at
org.apache.ambari.server.api.handlers.UpdateHandler.persist(UpdateHandler.java:45)
at
org.apache.ambari.server.api.handlers.BaseManagementHandler.handleRequest(BaseManagementHandler.java:73)
at
org.apache.ambari.server.api.services.BaseRequest.process(BaseRequest.java:144)
at
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:126)
at
org.apache.ambari.server.api.services.BaseService.handleRequest(BaseService.java:90)
at
org.apache.ambari.server.api.services.ServiceService.updateServices(ServiceService.java:160)
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)
at
com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
at
com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)
at
com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
at
com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
How many services can ambari install at one time?
Also, i tried to change another host with more free memory, but still failed.
Did anyone know how to debug or fix it?
Thanks