[ 
https://issues.apache.org/jira/browse/GEODE-7971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17108391#comment-17108391
 ] 

ASF GitHub Bot commented on GEODE-7971:
---------------------------------------

albertogpz commented on a change in pull request #4928:
URL: https://github.com/apache/geode/pull/4928#discussion_r425869823



##########
File path: 
geode-gfsh/src/main/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommand.java
##########
@@ -75,6 +75,11 @@ public ResultModel createGatewaySender(
           mandatory = true,
           help = 
CliStrings.CREATE_GATEWAYSENDER__REMOTEDISTRIBUTEDSYSTEMID__HELP) Integer 
remoteDistributedSystemId,
 
+      @CliOption(key = CliStrings.CREATE_GATEWAYSENDER__GROUPTRANSACTIONEVENTS,
+          specifiedDefaultValue = "true",
+          unspecifiedDefaultValue = "false",
+          help = 
CliStrings.CREATE_GATEWAYSENDER__GROUPTRANSACTIONEVENTS__HELP) boolean 
groupTransactionEvents,
+

Review comment:
       > Note that the GatewaySender can be configured via the Java API ... not 
just through gfsh. This is where I was hoping to get that check to ensure the 
user is configuring a valid GatewaySender (Serial GatewaySender).
   > 
   > Also, during internal testing with HA (killing servers) we've noticed data 
inconsistency between WAN Sites with groupTransactionEvents enabled. In 
addition, I've seen the primary Serial GatewaySender AEQ not drain (again, with 
this attribute enabled).
   > 
   > Do you have any DUnit Tests with HA (to verify that we still have 
consistency between wan sites and queues being drained when 
groupTransactionEvents is enabled)?
   > 
   > We are still investigating this and will update this PR as we narrow in on 
the root cause.
   
   I think I found the problem. There was a bug in the handling of events that 
had to be added to the batch in order to complete a transaction that under high 
load and concurrency situations caused that some events were not propagated.
   I have added DUnit tests with HA for the serial and gateway senders. The one 
for the SerialGatewaySender was failing before my fix.
   
   Please, let me know if the new commit fixes the problem you encountered.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Gateway sender to deliver transaction events atomically to gateway receivers
> ----------------------------------------------------------------------------
>
>                 Key: GEODE-7971
>                 URL: https://issues.apache.org/jira/browse/GEODE-7971
>             Project: Geode
>          Issue Type: Improvement
>          Components: wan
>            Reporter: Alberto Gomez
>            Assignee: Alberto Gomez
>            Priority: Major
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> The goal of this ticket is to implement the necessary changes in the gateway 
> sender to prevent that events belonging to the same transaction are spread 
> across different batches. In other words, to ensure that events from the same 
> transaction are sent inside the same batch.
> This will be an optional feature on gateway senders to be enabled via a new 
> parameter (--group-transaction-events) and will be restricted to serial 
> gateway senders with just one dispatcher thread or to parallel gateway 
> senders.
> Apart from the above restriction, grouping of events for a transaction inside 
> the same batch may only be attained if the regions to which the events belong 
> are replicated by the same set of gateway senders with the 
> --group-transaction-events flag enabled. If this condition is not met, the 
> events will be correctly delivered by the gateway senders but it will not be 
> guaranteed that all events will always be sent inside the same batch.
> For more details see: 
> [https://cwiki.apache.org/confluence/display/GEODE/Gw+sender+to+deliver+transaction+events+atomically+to+receivers]
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to