My Oracle Support Banner

Coherence Service is abruptly restarted and attempted to be accessed via a MapListener throws IllegalStateException: Service can not be restarted on a thread owned by the service (Doc ID 2333843.1)

Last updated on MAY 03, 2018

Applies to:

Oracle Coherence - Version 12.2.1.0.0 and later
Information in this document applies to any platform.

Symptoms

Customer reported the below error in a 12.2.1.x.x coherence cluster, Customer has an extended Proxy cluster data grid and the extend client is failing with the below exception with use of a MemberListener. However, the same error could happen with the use of MapListener as well.

Oracle Coherence GE 12.2.1.1.0 <Info> (thread=RemoteCache:TcpInitiator:EventDispatcher, member=n/a): Member left: MemberEvent{Member=0 LEFT com.tangosol.coherence.component.util.safeService.SafeCacheService}
Oracle Coherence GE 12.2.1.1.0 <Error> (thread=RemoteCache:TcpInitiator:EventDispatcher, member=n/a): An exception occurred while dispatching the following event:

DispatchEvent: ConnectionEvent{ERROR TcpConnection(Id=0x0000015F4AD886F50A95E8B95F9E16EE31848A2524778F6CC15E41FC37849FBE, Open=false, Member(Id=0, Timestamp=2017-10-23 16:07:04.46, Address=10.xx.xx.xx:0, MachineId=0, Location=site:us.oracle.com,machine:xx-mac,process:3771, Role=ExtendMemberListenerTestExtendMemberListenerTest), LocalAddress=10.xx.xx.xx:58941, RemoteAddress=10.xx.xx.xx:58914.61852) com.tangosol.net.messaging.ConnectionException: TcpConnection(Id=0x0000015F4AD886F50A95E8B95F9E16EE31848A2524778F6CC15E41FC37849FBE, Open=true, Member(Id=0, Timestamp=2017-10-23 16:07:04.46, Address=10.xx.xx.xx:0, MachineId=0, Location=site:us.oracle.com,machine:xx-mac,process:3771, Role=ExtendMemberListenerTestExtendMemberListenerTest), LocalAddress=10.xx.xx.xx:58941, RemoteAddress=10.xx.xx.xx:58914.61852)}

Oracle Coherence GE 12.2.1.1.0 <Error> (thread=RemoteCache:TcpInitiator:EventDispatcher, member=n/a): The following exception was caught by the event dispatcher:
Oracle Coherence GE 12.2.1.1.0 <Error> (thread=RemoteCache:TcpInitiator:EventDispatcher, member=n/a):
java.lang.IllegalStateException: Service can not be restarted on a thread owned by the service
at com.tangosol.coherence.component.util.SafeNamedCache.ensureRunningNamedCache(SafeNamedCache.CDB:16)
at com.tangosol.coherence.component.util.SafeNamedCache.getRunningNamedCache(SafeNamedCache.CDB:7)
at com.tangosol.coherence.component.util.SafeNamedCache.size(SafeNamedCache.CDB:1)
at ExtendMemberListenerTest$1.memberLeft(ExtendMemberListenerTest.java:32)
at com.tangosol.net.MemberEvent.dispatch(MemberEvent.java:116)
at com.tangosol.net.MemberEvent.dispatch(MemberEvent.java:87)
at com.tangosol.coherence.component.util.SafeService.translateEvent(SafeService.CDB:28)
at com.tangosol.coherence.component.util.SafeService.memberLeft(SafeService.CDB:1)
at com.tangosol.net.MemberEvent.dispatch(MemberEvent.java:116)
at com.tangosol.net.MemberEvent.dispatch(MemberEvent.java:87)
at com.tangosol.coherence.component.net.extend.RemoteService.dispatchMemberEvent(RemoteService.CDB:7)
at com.tangosol.coherence.component.net.extend.RemoteService.connectionError(RemoteService.CDB:6)
at com.tangosol.coherence.component.net.extend.remoteService.RemoteCacheService.connectionError(RemoteCacheService.CDB:2)
at com.tangosol.net.messaging.ConnectionEvent.dispatch(ConnectionEvent.java:125)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Peer$DispatchEvent.run(Peer.CDB:7)
at com.tangosol.coherence.component.util.daemon.queueProcessor.Service$EventDispatcher.onNotify(Service.CDB:22)
at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:54)
at java.lang.Thread.run(Thread.java:748)

 

<Error> <com.oracle.coherence> <xxx> <xxx> <Logger@9237753 12.2.1.0.0> <> <> <8d21e3f9-4290-4e5c-81ce-dae23f583689-00000003> <1488384735040> <[severity-value: 8] [rid: 0:8] [partition-id: 0] [partition-name: DOMAIN]><BEA-000000> <2017-03-01 09:12:15.040/523929.705 Oracle Coherence GE 12.2.1.0.0 <Error>
(thread=ReplicatedCache:SOAReplicatedCache:EventDispatcher, member=3):
java.lang.IllegalStateException: Service can not be restarted on a thread owned by the service
at com.tangosol.coherence.component.util.SafeNamedCache.ensureRunningNamedCache(SafeNamedCache.CDB:16)
at com.tangosol.coherence.component.util.SafeNamedCache.getRunningNamedCache(SafeNamedCache.CDB:7)
at com.tangosol.coherence.component.util.SafeNamedCache.put(SafeNamedCache.CDB:1)
at oracle.integration.platform.blocks.deploy.CoherenceCompositeDeploymentCoordinatorImpl.storeError(CoherenceCompositeDeploymentCoordinatorImpl.java:1421)
at oracle.integration.platform.blocks.deploy.CoherenceCompositeDeploymentCoordinatorImpl.handleNewDeploymentCommand(CoherenceCompositeDeploymentCoordinatorImpl.java:1072)
at oracle.integration.platform.blocks.deploy.CoherenceCompositeDeploymentCoordinatorImpl.access$200(CoherenceCompositeDeploymentCoordinatorImpl.java:57)
at oracle.integration.platform.blocks.deploy.CoherenceCompositeDeploymentCoordinatorImpl$2.entryInserted(CoherenceCompositeDeploymentCoordinatorImpl.java:197)
at com.tangosol.util.MapEvent.dispatch(MapEvent.java:270)
at com.tangosol.util.MapEvent.dispatch(MapEvent.java:230)
at com.tangosol.util.MapListenerSupport.fireEvent(MapListenerSupport.java:577)
at com.tangosol.coherence.component.util.SafeNamedCache.translateMapEvent(SafeNamedCache.CDB:7)
at com.tangosol.coherence.component.util.SafeNamedCache.entryInserted(SafeNamedCache.CDB:1)
at com.tangosol.util.MapEvent.dispatch(MapEvent.java:270)
at com.tangosol.coherence.component.util.CacheEvent.run(CacheEvent.CDB:18)
at com.tangosol.coherence.component.util.daemon.queueProcessor.Service$EventDispatcher.onNotify(Service.CDB:22)
at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:45)
at java.lang.Thread.run(Thread.java:745)

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.