In a multi-site configuration, vFabric SQLFire distributes table DML operations between remote distributed systems, with a minimum impact on each system's performance. DML events are distributed only for the tables that you configure for replication by using a gateway receiver.
The DML event contains the originating site's distributed system ID, and the ID of each site to which it sends the event. This information ensures that no site re-forwards the event to a site that has already received the event. When a SQLFire site receives an event for a table DML operation, it forwards the event to the other sites it knows about (sites that correspond to configured gateway senders for the table), but it excludes those sites that it knows have already received the event for the table.
Because the batch is not removed from the queue until after the remote site has replied, the message cannot get lost. However, this also means that a message can be processed more than once in certain failure scenarios. If a site goes offline in the middle of processing a batch of messages, that same batch is sent again after the site is back online. See About High Availability for WAN Deployments.
The batch is configurable via the batch size and batch time interval settings, which you can specify when you create a gateway sender (see CREATE GATEWAYSENDER). A batch of messages is processed by the queue when either the batch size or the time interval is reached. In an active network, it is likely that the batch size will be reached before the time interval. In an idle network, the time interval will most likely be reached before the batch size. This may result in some network latency that corresponds to the time interval.