albertogpz commented on a change in pull request #6659:
URL: https://github.com/apache/geode/pull/6659#discussion_r660847406
##########
File path:
geode-core/src/main/java/org/apache/geode/internal/cache/TXCommitMessage.java
##########
@@ -733,7 +733,9 @@ void firePendingCallbacks(List<EntryEventImpl> callbacks) {
try {
lastTransactionEvent = getLastTransactionEvent(callbacks);
} catch (ServiceConfigurationError ex) {
- logger.error(ex.getMessage());
+ if
(!ex.getMessage().startsWith(TXLastEventInTransactionUtils.NO_INFORMATION_FOR_SENDER_ID))
{
+ logger.error(ex.getMessage());
+ }
Review comment:
There could be several senders for the same region configured in
different servers.
If you opt for returning null in `getLastTransactionEvent` when one of the
senders is not configured, I suggest, you
also change `TXCommitMessage` and `TXState` so that when
`getLastTransactionEvent` returns null, it considers that all events for the
transaction are the last event for the transaction:
`boolean isLastTransactionEvent = isConfigError || lastTransactionEvent ==
null || ee.equals(lastTransactionEvent);`
The reason for it is that if another sender is configured and has
group-transaction-events set to true, it will not try to get the last event
from each transaction in vain delaying unnecessarily the delivery of batches.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]