Create only 1 WAN receiver per member
search cancel

Create only 1 WAN receiver per member

book

Article ID: 294022

calendar_today

Updated On:

Products

VMware Tanzu Gemfire

Issue/Introduction

In GemFire versions older than 9.3.0, you can deploy gateway receiver configurations to multiple GemFire members as needed for high availability and load balancing, but you have to make sure to host only one gateway receiver per member.

Currently, GemFire does not enforce how many receivers you have created per member, even though the documentation states that you must have only one WAN gateway receiver configured per member.


Symptoms:

With the cluster configuration service enabled,  receivers that are manually created via gfsh will be saved to the cluster configuration, and this incorrect configuration on the member will cause some unforeseen problems like WAN replication is not working correctly, persistent files grow too large, can't restart the server, etc.

Cause

Currently, you can create extra Gateway receivers on a member, either planned or by mistake, and then think it is OK because you only see one Gateway receiver active using the 'list gateways"  command, as shown here:

Cluster-1 gfsh>create gateway-receiver --member=server1
Member | Status
----------- | -------------------------------------------------------------------------------
server1   | GatewayReceiver created on member "server1" and will listen on the port "5,449"

Cluster-1 gfsh>create gateway-receiver --member=server1
Member | Status
----------- | -------------------------------------------------------------------------------
server1   | GatewayReceiver created on member "server1" and will listen on the port "5,479"

Cluster-1 gfsh>create gateway-receiver --member=server1
Member | Status
----------- | -------------------------------------------------------------------------------
server1   | GatewayReceiver created on member "server1" and will listen on the port "5,099"

Notice that even though a number of gateway-receivers have been created for the same member above, only one is listed below as a gateway receiver for that member.  See that the port number doesn't match any of the created receivers above, as the one being used is still the initial gateway receiver that existed prior to these commands where additional receivers were added:

Cluster-1 gfsh>list gateways
Gateways

GatewayReceiver

 Member | Port | Sender Count | Sender's Connected
 ------------------------------------------------------------- | ---------   | ----------------------   | ------------------
10.91.52.21(server1:262129)<v1>:1024                 | 5194        | 0                                  | []

Resolution

Step1) Delete and cleanup the additional Gateway receiver tags in the cluster.xml shown below leaving only the corrrect gateway receiver definition:

<gateway-receiver/>
<gateway-receiver/>
<gateway-receiver/>

Step2) Restart the cluster.   You have to use the --load-cluster-configuration-from-dir parameter when starting up the locator in order to load the updated cluster.xml file into the cluster.

Finally, if you upgrade to  v9.3.0 release which includes the GEM-1811 fix for this issue, GemFire now prevent the creation of more than one receiver per member -->release_notes