github-actions[bot] commented on code in PR #69554:
URL: https://github.com/apache/doris/pull/69554#discussion_r4367374261


##########
fe/fe-core/src/main/java/org/apache/doris/planner/OlapTableSink.java:
##########
@@ -1246,13 +1246,13 @@ private TOlapTableLocationParam createLocation(long 
dbId, OlapTable table) throw
                                     tablet.getId(), baseTabletId, 
partition.getId());
                             bePathsMap = 
getChangelogColocatedReplicaBackendPathMap(baseTablet, tablet);
                         } else {
-                            bePathsMap = 
tablet.getNormalReplicaBackendPathMap();
+                            bePathsMap = tablet.getLoadReplicaBackendPathMap();

Review Comment:
   [P1] Account for filtered replicas in write-failure handling
   
   This initial-plan path also loses rows for existing partitions, beyond the 
dynamic RPC instance in thread 4366121929. Use replication_num=3, 
min_load_replica_num=1 and the legacy writer 
(enable_memtable_on_sink_node=false), with one-bucket partitions A on 
BEs{1,2,3} and B on{1,4,5}. Mark alive BEs2/3 disable_load: this call reduces A 
to{1}, which passes the following required=1 check. If BE1's tablet-writer-open 
RPC fails after planning, IndexChannel counts one failed node against 
total3-required1=2; excluded BEs2/3 never consume that allowance. Repeated 
write/close failures add the same node to a set, so the writer can return OK 
with no A commit infos while B succeeds through4/5. 
DatabaseTransactionMgr.checkCommitStatus() infers involved partitions solely 
from successful commit infos and therefore checks B but never A. The load can 
report success with every A row missing; previously alive BEs2/3 remained 
destinations and could receive those rows.
   
   Count filtered replicas in failure handling, or otherwise require successful 
participation of every touched partition before success. Checking only nonempty 
or size>=loadRequiredReplicaNum is insufficient here. Add a mixed-partition 
regression with a real selected-target failure; the new destination-list tests 
do not cover it.



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