anton-vinogradov commented on a change in pull request #6942: IGNITE-9913
URL: https://github.com/apache/ignite/pull/6942#discussion_r333376056
 
 

 ##########
 File path: 
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ExchangeContext.java
 ##########
 @@ -58,7 +66,17 @@
     public ExchangeContext(boolean crd, GridDhtPartitionsExchangeFuture fut) {
         int protocolVer = 
exchangeProtocolVersion(fut.firstEventCache().minimumNodeVersion());
 
-        if (compatibilityNode || (crd && fut.localJoinExchange())) {
+        GridDiscoveryManager disco = fut.sharedContext().discovery();
+
+        if (protocolVer > 2 && fut.exchangeId().isLeft() && 
fut.isEventNodeInBaseline() &&
 
 Review comment:
   It still looks like code works, but disco.baselineChanged(...) can be used 
only in case of nodeFail, correct?
   Persistence were checked by 
TxPartitionCounterStateConsistencyTest#testPartitionConsistencyWithPrimaryRestart.
 
   As you told, persistence case (auto-adjust in [true, false]) on nodeLeft 
always leads to recovery instead of regular PME.
   
   I don't like the idea to have a check like persistence.enabled() here, 
because we should check the result (was baseline changed or not) instead of 
checking reasons leads to this (which, definitely, will be changed in future, 
and can be (already) overcomplicated).
   
   Could you help with writing a simple and proper "if" statement?

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


With regards,
Apache Git Services

Reply via email to