Let's say I have 4 servers (1,2,3,4) that are operating in embedded mode with near caches enabled. Each server is running one hazelcast member jvm along with one hazelcast client jvm. The member jvm on each server defines a group name of A with cluster members defined as 1,2,3,4. The client jvm on each server defines the same group name of A with the same cluster members defined as 1,2,3,4. So the config looks something like this:
server 1 - member group A - client group A - cluster members 1,2,3,4 server 2 - member group A - client group A - cluster members 1,2,3,4 server 3 - member group A - client group A - cluster members 1,2,3,4 server 4 - member group A - client group A - cluster members 1,2,3,4
Now, let's say I stop the member jvm on server 1, change the group name in the member config to B and start the member jvm again. First question, will the client jvm ignore this member and still contact the member jvms that are still in its group? The config would now look something like this:
server 1 - member group B - client group A - cluster members 1,2,3,4 server 2 - member group A - client group A - cluster members 1,2,3,4 server 3 - member group A - client group A - cluster members 1,2,3,4 server 4 - member group A - client group A - cluster members 1,2,3,4
Then, let's say I stop the client jvm on server 1, change the group name in the client config to B and start the client jvm again. Second question, will the client jvm now only talk to the member that resides within group B? What happens now that the following configuration exists?
server 1 - member group B - client group B - cluster members 1,2,3,4 server 2 - member group A - client group A - cluster members 1,2,3,4 server 3 - member group A - client group A - cluster members 1,2,3,4 server 4 - member group A - client group A - cluster members 1,2,3,4
My biggest question is what happens now that cluster members 1,2,3,4 now reside in two different groups?