Forum Stats

  • 3,815,637 Users
  • 2,259,064 Discussions
  • 7,893,194 Comments

Discussions

coherence 3 and 12 version in same machine

3495695
3495695 Member Posts: 2
edited Jul 4, 2017 10:40AM in Coherence Support

Hi,

I am using Linux machine and in same machine coherence 3 version is installed and running. I have installed coherence 12 on same machine. For both coherence 3 and 12 separate

tangosol override  file is there and cluster name is also unique for bot version. Coherence 3 is using java 6 default from Java_home and coherence 12 is using explicitly given java 1.8.

Initially bith coherence 3 and 12 were running on same machine but suddenly coherence 3 got stopped with error as

This member could not join the cluster because of a configuration mismatch between this member and the configuration being used by the rest of the cluster. This member specified a cluster name of "HOU9-HermesCluster-Production" which did not match the name of the running cluster. This indicates that there are multiple clusters on this network attempting to use overlapping network configurations. Rejected by Member(Id=1, Timestamp=2017-06-27 01:15:31.007, Address=15.102.47.4:8088, MachineId=55593, Location=site:,machine:g9t1884g,process:6963, Role=ApacheCatalinaStartupBootstrap).

2017-06-28 10:17:11.217/9.482 Oracle Coherence GE 3.7.1.0 <D5> (thread=Cluster, member=n/a): Service Cluster left the cluster

2017-06-28 10:17:11.220/9.485 Oracle Coherence GE 3.7.1.0 <Error> (thread=main, member=n/a): Error while starting cluster: java.lang.RuntimeException: Failed to start Service "Cluster" (ServiceState=SERVICE_STOPPED, STATE_JOINING)

at com.tangosol.coherence.component.util.daemon.queueProcessor.Service.start(Service.CDB:38)

at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.start(Grid.CDB:6)

at com.tangosol.coherence.component.net.Cluster.onStart(Cluster.CDB:56)

at com.tangosol.coherence.component.net.Cluster.start(Cluster.CDB:11)

at com.tangosol.coherence.component.util.SafeCluster.startCluster(SafeCluster.CDB:3)

at com.tangosol.coherence.component.util.SafeCluster.restartCluster(SafeCluster.CDB:10)

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:427)

at com.tangosol.net.DefaultConfigurableCacheFactory.ensureServiceInternal(DefaultConfigurableCacheFactory.java:968)

at com.tangosol.net.DefaultConfigurableCacheFactory.ensureService(DefaultConfigurableCacheFactory.java:937)

at com.tangosol.net.DefaultCacheServer.startServices(DefaultCacheServer.java:81)

at com.tangosol.net.DefaultCacheServer.intialStartServices(DefaultCacheServer.java:250)

at com.tangosol.net.DefaultCacheServer.startAndMonitor(DefaultCacheServer.java:55)

at com.tangosol.net.DefaultCacheServer.main(DefaultCacheServer.java:197)

3495695

Answers

  • Mfalco-Oracle
    Mfalco-Oracle Member Posts: 503
    edited Jun 30, 2017 1:15PM

    Starting with Coherence 12.2.1 Coherence allows you to run multiple clusters using overlapping IPs and ports, you only need to distinguish the cluster's with unique names.  Since you are also running an older version of Coherence you'll need to ensure that older cluster is on a distinct set of IPs and ports and ensure it doesn't overlap with the IPs and ports used by our Coherence 12.2.1 and later clusters.  If it is a multicast cluster this means you need to use a distinct multicast group address and multicast port for the Coherence 3.x cluster.  If it is WKA then please ensure that the WKA ports configured for your Coherence 3.x cluster are outside of your systems ephemeral port range and also don't step on the Coherence 12.2.1 cluster port.  Coherence 12.2.1 does't require WKA ports, or explicit port configuration beyond the cluster port which default to 7574 and need not be changed.  If you're still having troubles please post both of your override files.

    thanks,

    mark

    Oracle Coherence

    34956953495695
  • 3495695
    3495695 Member Posts: 2
    edited Jul 3, 2017 3:31AM

    Hi Mark,

      Thanks for the reply . We are not using multicast.

    We have four server(IP) out of which two IP will be configured on coh 3  overreide file and other two for coherence 12.

    Below is the override file configuration and we want to keep First IP and second IP on coherence 3 and Third IP and Fourth IP on Cohernce 12. Should we

    achieve our result with the below configuration .

    <unicast-listener>

                <well-known-addresses>

                    <socket-address id="1">

                        <address>first IP</address>

                        <port>8088</port>

                    </socket-address>

                    <socket-address id="2">

                        <address>Second IP</address>

                        <port>8088</port>  

                    </socket-address>

                   <socket-address id="3">

                        <address>Third IP</address>

                        <port>8088</port>

                    </socket-address>

                    <socket-address id="4">

                        <address>Forth IP</address>

                        <port>8088</port>

                    </socket-address>

                </well-known-addresses>

                <address system-property="tangosol.coherence.localhost">localhost</address>

                <port system-property="tangosol.coherence.localport">8088</port>

                <port-auto-adjust system-property="tangosol.coherence.localport.adjust">true</port-auto-adjust>

            </unicast-listener>

  • Mfalco-Oracle
    Mfalco-Oracle Member Posts: 503
    edited Jul 4, 2017 10:40AM

    You'll definitely run into troubles if you use the same config (with same IPs/ports) for both versions at the same time.  If you were to do this the two versions would see each other and cause the exception you're receiving.  To correct this I'd suggest creating a separate config for each cluster and have each have a wka list which doesn't include the other cluster's ports.  To make this easier I'd also suggest that the 12.2.1 config not include any ports at all, then it will use ephemeral ports.  Specifically I'm suggesting that for the 12.2.1 config you not have port elements in the well-known-addresses section, or in the unicast-listener section.

    Mark

    Oracle Coherence

This discussion has been closed.