[
https://issues.apache.org/jira/browse/GEODE-7971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17110050#comment-17110050
]
ASF GitHub Bot commented on GEODE-7971:
---------------------------------------
albertogpz commented on pull request #4928:
URL: https://github.com/apache/geode/pull/4928#issuecomment-630039797
> I've reviewed the doc components and I have some changes to propose. Most
are concerned with grammar and format. The only technical one is to replace
references to the `is-parallel` property with the `parallel` property.
> I'm not sure how best to submit these, as it would be good to have them
reviewed before checking them in. The most convenient method for me is the
output of a `git diff`, so here goes. If you'd like me to incorporate the
material in some other way (e.g. push my local commit to the feature branch)
please let me know.
>
> diff --git a/geode-docs/reference/topics/cache_xml.html.md.erb
b/geode-docs/reference/topics/cache_xml.html.md.erb
> index 4d9e859550..39e3d66962 100644
> --- a/geode-docs/reference/topics/cache_xml.html.md.erb
> +++ b/geode-docs/reference/topics/cache_xml.html.md.erb
> @@ -298,8 +298,8 @@ Configures a gateway sender to distribute region
events to another <%=vars.produ
> group-transaction-events Boolean value to ensure that all the events of a
transaction are sent in the same batch, i.e., they are never spread across
different batches. -
>
> Only allowed to be set on gateway senders with `is-parallel` attribute set
to false and `dispatcher-threads` attribute equal to 1 or on gatewaysenders
with `is-parallel` attribute set to true.
> -
>
> Note that in order to work for a transaction, the regions to which the
transaction events belong must be replicated by the same set of senders with
this flag enabled.
> +
>
> Only allowed to be set on gateway senders with the `parallel` attribute
set to false and `dispatcher-threads` attribute equal to 1, or on gateway
senders with the `parallel` attribute set to true.
> +
>
> Note: In order to work for a transaction, the regions to which the
transaction events belong must be replicated by the same set of senders with
this flag enabled.
> false diff --git
a/geode-docs/tools_modules/gfsh/command-pages/create.html.md.erb
b/geode-docs/tools_modules/gfsh/command-pages/create.html.md.erb index
6140c6f79c..771412a96d 100644 ---
a/geode-docs/tools_modules/gfsh/command-pages/create.html.md.erb +++
b/geode-docs/tools_modules/gfsh/command-pages/create.html.md.erb @@ -635,8
+635,8 @@ create gateway-sender --id=value --remote-distributed-system-id=value
\-\-group-transaction-events Boolean value to ensure that all the events of a
transaction are sent in the same batch, i.e., they are never spread across
different batches. -
>
> Only allowed to be set on gateway senders with `is-parallel` attribute set
to false and `dispatcher-threads` attribute equal to 1 or on gatewaysenders
with `is-parallel` attribute set to true.
> -
>
> Note that in order to work for a transaction, the regions to which the
transaction events belong must be replicated by the same set of senders with
this flag enabled.
> +
>
> Only allowed to be set on gateway senders with the `parallel` attribute
set to false and `dispatcher-threads` attribute equal to 1, or on
gatewaysenders with the `parallel` attribute set to true.
> +
>
> Note: In order to work for a transaction, the regions to which the
transaction events belong must be replicated by the same set of senders with
this flag enabled.
> false diff --git
a/geode-docs/topologies_and_comm/multi_site_configuration/setting_up_a_multisite_system.html.md.erb
b/geode-docs/topologies_and_comm/multi_site_configuration/setting_up_a_multisite_system.html.md.erb
index 64a129009f..be8dfafeb9 100644 ---
a/geode-docs/topologies_and_comm/multi_site_configuration/setting_up_a_multisite_system.html.md.erb
+++
b/geode-docs/topologies_and_comm/multi_site_configuration/setting_up_a_multisite_system.html.md.erb
@@ -171,7 +171,7 @@ When using a multi-site configuration, you choose which
data regions to share be
>
> * Regions using the same parallel gateway sender ID must be colocated.
>
>
> -- If any gateway sender configured for the region has the
`group-transaction-events` flag set to true, then the regions involved in
transactions must all have the same gateway senders with this flag set to true
configured. This requires careful configuration of regions with gateway-senders
according to the transactions expected in the system.
> +- If any gateway sender configured for the region has the
`group-transaction-events` flag set to true, then the regions involved in
transactions must all have the same gateway senders configured with this flag
set to true. This requires careful configuration of regions with gateway
senders according to the transactions expected in the system.
>
> ```
> **Example**:
> Assuming the following scenario:
> ```
>
> @@ -185,14 +185,21 @@ When using a multi-site configuration, you choose
which data regions to share be
>
> ```
> - Regions:
> ```
>
> * ```
> - region1: gateway-sender-ids=sender1,sender2,sender4 type:
partition, colocated-with: region2,region3
> ```
>
> * ```
> - region2: gateway-sender-ids=sender1,sender2 type:
partition, colocated with: region1,region3
> ```
>
> * ```
> - region3: gateway-sender-ids=sender3 type:
partition, colocated with: region1,region2
> ```
>
> * ```
> - region4: gateway-sender-ids=sender4 type:
replicated
> ```
>
>
> * ```
> - region1: gateway-sender-ids=sender1,sender2,sender4<br />
> ```
>
> * ```
> type: partition<br />
> ```
>
> * ```
> colocated-with: region2,region3
> ```
>
> * ```
> - region2: gateway-sender-ids=sender1,sender2<br />
> ```
>
> * ```
> type: partition<br />
> ```
>
> * ```
> colocated with: region1,region3
> ```
>
> * ```
> - region3: gateway-sender-ids=sender3<br />
> ```
>
> * ```
> type: partition<br />
> ```
>
> * ```
> colocated with: region1,region2
> ```
>
> * ```
> - region4: gateway-sender-ids=sender4<br />
> ```
>
> * ```
> type: replicated
> ```
>
>
>
> * Events for the same transaction will be guaranteed to be sent in
the same batch depending on the events involved in the transaction:
>
>
> * ```
> - For transactions containing events for region1 and region2, it
will be guaranteed that events for those transactions will be delivered in the
same batch by senders1 and sender2.
> ```
>
>
> * ```
> - For transactions containing events for region1 and region2, it
will be guaranteed that events for those transactions will be delivered in the
same batch by sender1 and sender2.
> - For transactions containing events for region1, region2 and
region3, it will NOT be guaranteed that events for those transactions will be
delivered in the same batch .
> - For transactions containing events for region3, it will be
guaranteed that events for those transactions will be delivered in the same
batch.
> - For transactions containing events for region4, it will NOT be
guaranteed that events for those transactions will be delivered in the same
batch.
> ```
>
>
> diff --git
a/geode-docs/topologies_and_comm/topology_concepts/multisite_overview.html.md.erb
b/geode-docs/topologies_and_comm/topology_concepts/multisite_overview.html.md.erb
> index 018715c84a..42044e1e91 100644
> ---
a/geode-docs/topologies_and_comm/topology_concepts/multisite_overview.html.md.erb
> +++
b/geode-docs/topologies_and_comm/topology_concepts/multisite_overview.html.md.erb
> @@ -33,7 +33,12 @@ Gateway senders and receivers are defined at startup in
the member caches. A sit
>
> Geode ensures that all copies of a region eventually reach a consistent
state on all members and clients that host the region, including Geode members
that distribute region events across a WAN.
>
> -Events are sent over batches from gateway senders to receivers. In order
to avoid possible long lasting inconsistencies due to a partial reception of
the events belonging to a transaction after a network split, it is possible to
configure gateway senders to prevent events belonging to the same transaction
to be spread across different batches. It must be noted though, that this
setting is only supported on serial senders with just one dispatcher thread or
on parallel ones. Besides, the regions to which the transaction events belong
must be replicated by the same set of gateway senders that have this setting
enabled.
> +Events are sent in batches from gateway senders to receivers. In order to
avoid inconsistencies due
> +to partial reception of the events belonging to a transaction, you can
configure gateway senders to
> +ensure that events belonging to the same transaction are sent together in
the same batch.
> +Note: This setting is supported only on serial senders with just one
dispatcher
> +thread, or on parallel senders. In addition, the regions to which the
transaction events belong must
> +be replicated by the same set of gateway senders that also have this
setting enabled.
@davebarnes97 Thanks for the comments. In the pasted diff it is hard to get
what the changes are. I would appreciate if you either send me the diff
attached or if you prefer, that you push your changes to the feature branch.
----------------------------------------------------------------
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:
[email protected]
> 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)