deardeng commented on code in PR #66191:
URL: https://github.com/apache/doris/pull/66191#discussion_r3851736352


##########
fe/fe-core/src/main/java/org/apache/doris/clone/TabletScheduler.java:
##########
@@ -756,9 +787,13 @@ private void handleReplicaMissing(TabletSchedCtx 
tabletCtx, AgentBatchTask batch
         // find proper tag
         Tag tag = chooseProperTag(tabletCtx, true);
         // find an available dest backend and path
-        RootPathLoadStatistic destPath = chooseAvailableDestPath(tabletCtx, 
tag, false /* not for colocate */);
+        RootPathLoadStatistic destPath = 
chooseBasePreferredDestPath(tabletCtx, tag);
+        if (destPath == null) {
+            destPath = chooseAvailableDestPath(tabletCtx, tag, false /* not 
for colocate */);
+        }
         Preconditions.checkNotNull(destPath);
         tabletCtx.setDest(destPath.getBeId(), destPath.getPathHash());
+        tabletCtx.setStorageMedium(destPath.getStorageMedium());

Review Comment:
   Overriding the context with the selected path’s actual storage medium is 
necessary so that the BE can honor dest_path_hash. However, this also allows a 
repaired base/row-binlog pair to be placed on a medium different from the 
partition’s configured medium. Since this PR disables independent 
storage-medium migration for paired tablets, how will such a mismatch be 
corrected, especially for existing tablets after upgrade? Please clarify the 
intended precedence and add a mixed-medium repair/upgrade test.



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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to