BusinessEvents engine throws java.lang.NullPointerException com.tangosol.coherence.component.net.TcpRing.ensureSelector

BusinessEvents engine throws java.lang.NullPointerException com.tangosol.coherence.component.net.TcpRing.ensureSelector

book

Article ID: KB0085110

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition -
Not Applicable -

Description

Resolution:
Description:
===========
While starting another instance of Inference or cache engine which uses Coherence as its cache-manager, a NullPointerException is thrown.

Environment:
==========
TIBCO BusinessEvents 4.x,5.x
Operating System(s): All

Symptoms:
========
In the engine log, you will see the following exception:

Initializing Coherence failed
java.lang.NullPointerException
    at com.tangosol.coherence.component.net.TcpRing.ensureSelector(TcpRing.CDB:7)
    at com.tangosol.coherence.component.net.TcpRing.setServerSocketChannel(TcpRing.CDB:20)
    at com.tangosol.coherence.component.net.Cluster.onStart(Cluster.CDB:510)
    at com.tangosol.coherence.component.net.Cluster.start(Cluster.CDB:11)
    at com.tangosol.coherence.component.util.SafeCluster.startCluster(SafeCluster.CDB:3)
    at om.tangosol.coherence.component.util.SafeCluster.restartCluster(SafeCluster.CDB:7)
    at com.tangosol.coherence.component.util.SafeCluster.ensureRunningCluster(SafeCluster.CDB:26)
    at com.tangosol.coherence.component.util.SafeCluster.start(SafeCluster.CDB:2)
    at com.tangosol.net.CacheFactory.ensureCluster(CacheFactory.java:998)
    2011 Mar 14 17:43:59:831 GMT -4 DCPM_BATCHCONTROLLER-DCPM_BATCHCONTROLLER-Inference Debug [main] - [runtime.session] Error performing initAll()
    java.lang.RuntimeException: java.lang.NullPointerException
    at com.tibco.cep.runtime.service.om.coherence.cluster.CacheCluster.initCoherence(CacheCluster.java:905)
    at com.tibco.cep.runtime.service.om.coherence.cluster.CacheCluster.initialize(CacheCluster.java:1000)
    at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.initCluster(RuleServiceProviderImpl.java:871)
    at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.configure(RuleServiceProviderImpl.java:238)
    at com.tibco.cep.container.standalone.BEMain.jumpStart(BEMain.java:130)
    at com.tibco.cep.container.standalone.BEMain.main(BEMain.java:52)
    Caused by: java.lang.NullPointerException
    at com.tangosol.coherence.component.net.TcpRing.ensureSelector(TcpRing.CDB:7)
    at com.tangosol.coherence.component.net.TcpRing.setServerSocketChannel(TcpRing.CDB:20)
    at com.tangosol.coherence.component.net.Cluster.onStart(Cluster.CDB:510)
    at com.tangosol.coherence.component.net.Cluster.start(Cluster.CDB:11)
        ... 5 more

Cause:
======
Having the property "tangosol.coherence.localport.adjust" set to false in either be-engine.tra or the project cdd file.

Resolution:
=========
Commenting the property "tangosol.coherence.localport.adjust" or setting it to true will resolve the issue.

Issue/Introduction

BusinessEvents engine throws java.lang.NullPointerException com.tangosol.coherence.component.net.TcpRing.ensureSelector