[
https://issues.apache.org/jira/browse/GEODE-736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Deppe updated GEODE-736:
-----------------------------
Component/s: (was: management)
rest (admin)
> REST admin API logs exceptions for invalid requests to
> /members/{name}/[locator|server]
> ---------------------------------------------------------------------------------------
>
> Key: GEODE-736
> URL: https://issues.apache.org/jira/browse/GEODE-736
> Project: Geode
> Issue Type: Improvement
> Components: rest (admin)
> Reporter: Jens Deppe
>
> When making an admin REST call to {{/members/\{name\}/\[server|locator\]}}
> with the name of a member which is not currently available, the following
> exception is thrown and logged:
> {noformat}
> [severe 2015/05/01 20:49:23.231 UTC locator0 <qtp127515622-97> tid=0x61]
> java.lang.IllegalStateException: No MemberMXBean with ObjectName
> (GemFire:type=Member,*) based on Query (((Name) = ('cacheserver0')) or ((Id)
> = ('cacheserver0'))) was found in the Platform MBeanServer for member
> (cacheserver0)!
> at
> com.gemstone.gemfire.management.internal.web.controllers.AbstractCommandsController.assertState(AbstractCommandsController.java:118)
> at
> com.gemstone.gemfire.management.internal.web.controllers.AbstractCommandsController.getMemberMXBean(AbstractCommandsController.java:362)
> at
> com.gemstone.gemfire.management.internal.web.controllers.LauncherLifecycleCommandsController.statusServer(LauncherLifecycleCommandsController.java:43)
> 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
> org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
> at
> org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
> at
> org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
> at
> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)
> at
> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:685)
> at
> org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
> at
> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:919)
> at
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:851)
> at
> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
> at
> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
> at
> org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
> at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:769)
> at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1667)
> at
> org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:88)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:106)
> at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1650)
> at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:583)
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
> at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
> at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1125)
> at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
> at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1059)
> at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
> at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> at org.eclipse.jetty.server.Server.handle(Server.java:497)
> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
> at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:248)
> at
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:610)
> at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:539)
> at java.lang.Thread.run(Thread.java:745)
> {noformat}
> In the Cloud Foundry GemFire? service, one of our workflows is to shut down
> the cluster, apply config and wait for all members to start up again. While
> waiting, we poll this endpoint which produces the exception when members are
> not yet available. Having the exception appear in the logs seems unnecessary
> and may cause concern for customers if they see it.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)