github-actions[bot] commented on code in PR #63894:
URL: https://github.com/apache/doris/pull/63894#discussion_r3325215447
##########
fe/fe-core/src/main/java/org/apache/doris/datasource/doris/FeServiceClient.java:
##########
@@ -329,6 +330,24 @@ public RemoteOlapTable getOlapTable(String dbName, String
table, long tableId, L
}, msg, timeoutMs);
}
+ private TPartitionMeta buildPartitionMeta(Partition partition) {
+ TPartitionMeta meta = new TPartitionMeta();
+ meta.setId(partition.getId());
+ meta.setVisibleVersion(partition.getVisibleVersion());
+ meta.setVisibleVersionTime(partition.getVisibleVersionTime());
+ String remoteMetaChecksum = partition.getRemoteMetaChecksum();
+ if (remoteMetaChecksum != null) {
Review Comment:
This only sends a checksum after the partition was previously refreshed by a
new server and `remoteMetaChecksum` was populated. Partitions already cached
before this PR (or after talking to an older FE during rolling upgrade) have
`remoteMetaChecksum == null`, so the request omits `meta_checksum`; then
`collectPartitionChanges()` takes the `!partitionMeta.isSetMetaChecksum()`
branch and removes version-matched partitions from `updatedPartitionIds`. If a
replica relocation happened while the visible version stayed the same, that
stale cached partition is never refreshed and never gets a checksum seeded.
Please bootstrap by sending a checksum computed from the cached partition when
`remoteMetaChecksum` is null, or otherwise force one refresh for checksum-less
cached partitions.
--
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]