albertogpz commented on pull request #7083:
URL: https://github.com/apache/geode/pull/7083#issuecomment-984747290


   > @albertogpz we need to extract out the TX batching specific elements form 
the `GatewaySenderEventImpl` object. I replaced it with a implementation 
defined 
[metadata](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-core/src/main/java/org/apache/geode/internal/cache/wan/GatewaySenderEventImpl.java#L183)
 object. See 
[`TxBatchMetadata`](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-wan-txbatch/src/main/java/org/apache/geode/cache/wan/internal/txbatch/TxBatchMetadata.java)
 from my previous example on making this a module. This gets set on the event 
object when constructed via an override on 
[`AbstractGatewaySenderEventProcessor`](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySenderEventProcessor.java#L1310).
 See example 
[here](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-wan-txbatch/src/main/java/org/apache/geode/cache/wan/internal/txbatch/p
 arallel/TxBatchRemoteParallelGatewaySenderEventProcessor.java#L49).
   
    I thought about modularizing the GatewaySenderEventImpl class so that the 
specifics of the feature were taken to a TxGroupingGatewaySenderEventImpl 
subclass containing the transactionId and the isLastEventInTransaction fields. 
Nevertheless given that version 1.14 of GatewaySenderEventImpl already contains 
the changes, if we went on that direction we would break backward compatibility 
with version 1.14.
   This would have been the right move if I had implemented the feature in a 
modular way from the beginning.
   
   
   
   > @albertogpz we need to extract out the TX batching specific elements form 
the `GatewaySenderEventImpl` object. I replaced it with a implementation 
defined 
[metadata](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-core/src/main/java/org/apache/geode/internal/cache/wan/GatewaySenderEventImpl.java#L183)
 object. See 
[`TxBatchMetadata`](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-wan-txbatch/src/main/java/org/apache/geode/cache/wan/internal/txbatch/TxBatchMetadata.java)
 from my previous example on making this a module. This gets set on the event 
object when constructed via an override on 
[`AbstractGatewaySenderEventProcessor`](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySenderEventProcessor.java#L1310).
 See example 
[here](https://github.com/pivotal-jbarrett/geode/blob/wip/wan-spi/geode-wan-txbatch/src/main/java/org/apache/geode/cache/wan/internal/txbatch/p
 arallel/TxBatchRemoteParallelGatewaySenderEventProcessor.java#L49).
   
   @pivotal-jbarrett As I said in a previous e-mail, I do not think we can make 
these changes without breaking backward compatibility. The feature was 
production ready at 1.14 so we can expect that it is used by customers. So, we 
cannot just ignore those changes when interworking with 1.14 servers.
   Am I missing something?


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


Reply via email to