rpuch commented on code in PR #4684:
URL: https://github.com/apache/ignite-3/pull/4684#discussion_r1832822977


##########
modules/replicator/build.gradle:
##########
@@ -37,6 +37,7 @@ dependencies {
     implementation project(':ignite-placement-driver-api')
     implementation project(':ignite-failure-handler')
     implementation project(':ignite-partition-distribution')
+    implementation project(':ignite-metastorage-api')

Review Comment:
   It actually does not depend on the MG implementation, it's MG API I added a 
dependency from. Is this still bad?
   
   Also, the idea of the fix is to look at ClusterTime (a Metastorage 
component), so replicator has to know about it. An alternative would be to do 
this check at the accepting side (`PartitionReplicaListener`), but with the 
current approach we save more resources (less objects are created). Or we could 
invert dependencies by declaring an interface like `PrimaryInfo` (probably, a 
better name is to be invented) and move `shouldAdvanceIdleSafeTime()` method to 
it. Then implement the interface in the metastorage module and so on. But the 
interface would look very artificially.



-- 
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: notifications-unsubscr...@ignite.apache.org

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

Reply via email to