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.
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.
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 | []
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