You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Kirk Lund (JIRA)" <ji...@apache.org> on 2017/09/01 17:39:00 UTC

[jira] [Commented] (GEODE-3191) NPE in pulse prevents locator shutdown

    [ https://issues.apache.org/jira/browse/GEODE-3191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16150898#comment-16150898 ] 

Kirk Lund commented on GEODE-3191:
----------------------------------

Here's the commit with the fix:
{noformat}
commit 31b650742d7552d12495bc10f7d7a8a88b78370d
Author: Patrick Rhomberg <pr...@pivotal.io>
Date:   Wed Mar 22 13:27:34 2017 -0700

    GEODE-1274: Migration from PulseLogWriter to Log4j standard and removal of associated classes.
    
    * To avoid dependency on geode-core, the pulse loggers are instantiated directly from LogManager, rather than canonical LogService (which itself extends LogManager).
    * Significant reduction of logging level state checks, relying on Log4j handling.
    * Significant reduction of string concatenation, relying on Log4j2 string substitutions.
    * Reduction of logging using an exception e.getMessage, favoring instead passing the exception itself for the stacktrace.
    * Multiple identical exception blocks collapsed.
    * this closes #446
{noformat}

> NPE in pulse prevents locator shutdown
> --------------------------------------
>
>                 Key: GEODE-3191
>                 URL: https://issues.apache.org/jira/browse/GEODE-3191
>             Project: Geode
>          Issue Type: Bug
>          Components: pulse
>            Reporter: Swapnil Bawaskar
>             Fix For: 1.2.0
>
>
> We found that when there is an open connection to pulse `gfsh stop locator` fails to correctly stop the locator process. In the locator logs we see:
> {noformat}
> [warning 2017/07/11 21:13:44.713 UTC locator-ced56c23-6523-413c-9b24-dadf10683b89 <Distribution Locator on 10.0.8.7> tid=0xe] Failed to stop the HTTP service because: null
> java.lang.NullPointerException
> 	at org.apache.geode.tools.pulse.internal.data.Repository.removeAllClusters(Repository.java:226)
> 	at org.apache.geode.tools.pulse.internal.PulseAppListener.contextDestroyed(PulseAppListener.java:83)
> 	at org.eclipse.jetty.server.handler.ContextHandler.callContextDestroyed(ContextHandler.java:843)
> 	at org.eclipse.jetty.servlet.ServletContextHandler.callContextDestroyed(ServletContextHandler.java:543)
> 	at org.eclipse.jetty.server.handler.ContextHandler.stopContext(ContextHandler.java:824)
> 	at org.eclipse.jetty.servlet.ServletContextHandler.stopContext(ServletContextHandler.java:353)
> 	at org.eclipse.jetty.webapp.WebAppContext.stopWebapp(WebAppContext.java:1385)
> 	at org.eclipse.jetty.webapp.WebAppContext.stopContext(WebAppContext.java:1349)
> 	at org.eclipse.jetty.server.handler.ContextHandler.doStop(ContextHandler.java:872)
> 	at org.eclipse.jetty.servlet.ServletContextHandler.doStop(ServletContextHandler.java:269)
> 	at org.eclipse.jetty.webapp.WebAppContext.doStop(WebAppContext.java:541)
> 	at org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:89)
> 	at org.eclipse.jetty.util.component.ContainerLifeCycle.stop(ContainerLifeCycle.java:143)
> 	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStop(ContainerLifeCycle.java:161)
> 	at org.eclipse.jetty.server.handler.AbstractHandler.doStop(AbstractHandler.java:73)
> 	at org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:89)
> 	at org.eclipse.jetty.util.component.ContainerLifeCycle.stop(ContainerLifeCycle.java:143)
> 	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStop(ContainerLifeCycle.java:161)
> 	at org.eclipse.jetty.server.handler.AbstractHandler.doStop(AbstractHandler.java:73)
> 	at org.eclipse.jetty.server.Server.doStop(Server.java:476)
> 	at org.eclipse.jetty.util.component.AbstractLifeCycle.stop(AbstractLifeCycle.java:89)
> 	at org.apache.geode.management.internal.ManagementAgent.stopHttpService(ManagementAgent.java:334)
> 	at org.apache.geode.management.internal.ManagementAgent.stopAgent(ManagementAgent.java:157)
> 	at org.apache.geode.management.internal.SystemManagementService.close(SystemManagementService.java:265)
> 	at org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheRemoval(ManagementAdapter.java:735)
> 	at org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:117)
> 	at org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2162)
> 	at org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:535)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:2145)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:1988)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:1984)
> 	at org.apache.geode.distributed.internal.InternalLocator.handleShutdown(InternalLocator.java:984)
> 	at org.apache.geode.distributed.internal.InternalLocator.access$500(InternalLocator.java:103)
> 	at org.apache.geode.distributed.internal.InternalLocator$PrimaryHandler.shutDown(InternalLocator.java:1359)
> 	at org.apache.geode.distributed.internal.tcpserver.TcpServer.run(TcpServer.java:324)
> 	at org.apache.geode.distributed.internal.tcpserver.TcpServer$2.run(TcpServer.java:227)
> [error 2017/07/11 21:13:44.714 UTC locator-ced56c23-6523-413c-9b24-dadf10683b89 <Distribution Locator on 10.0.8.7> tid=0xe] Failed to properly release resources held by the HTTP service: !STOPPED
> java.lang.IllegalStateException: !STOPPED
> 	at org.eclipse.jetty.server.handler.HandlerWrapper.destroy(HandlerWrapper.java:134)
> 	at org.apache.geode.management.internal.ManagementAgent.stopHttpService(ManagementAgent.java:339)
> 	at org.apache.geode.management.internal.ManagementAgent.stopAgent(ManagementAgent.java:157)
> 	at org.apache.geode.management.internal.SystemManagementService.close(SystemManagementService.java:265)
> 	at org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheRemoval(ManagementAdapter.java:735)
> 	at org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:117)
> 	at org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2162)
> 	at org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:535)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:2145)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:1988)
> 	at org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:1984)
> 	at org.apache.geode.distributed.internal.InternalLocator.handleShutdown(InternalLocator.java:984)
> 	at org.apache.geode.distributed.internal.InternalLocator.access$500(InternalLocator.java:103)
> 	at org.apache.geode.distributed.internal.InternalLocator$PrimaryHandler.shutDown(InternalLocator.java:1359)
> 	at org.apache.geode.distributed.internal.tcpserver.TcpServer.run(TcpServer.java:324)
> 	at org.apache.geode.distributed.internal.tcpserver.TcpServer$2.run(TcpServer.java:227)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)