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


##########
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/IcebergSnapshotCacheValue.java:
##########
@@ -222,7 +233,7 @@ public Optional<Map<Integer, List<String>>> 
getNameMapping() {
     }
 
     IcebergSnapshotCacheValue withoutRetainedTable() {

Review Comment:
   [P2] Memoize the lazy partition view for repeated dictionary checks
   
   `getPartitionInfo()` now invokes `partitionInfoLoader` directly whenever the 
contextual partition entry is disabled, weight-rejected, absent, or retired. 
`IcebergExternalTable.getNewestUpdateVersionOrTime()` reaches this through 
`getLatestSnapshotCacheValue(...).withoutRetainedTable()`, and 
`Dictionary.hasNewerSourceVersion()` / `checkBaseDataValid()` call it on every 
freshness check. Each check therefore reruns `PartitionsTable.planFiles()` and 
rebuilds the full partition maps; before this lazy split, the snapshot 
projection retained one loaded view. The earlier MTMV bulk fix only reuses the 
view within one bulk operation. Keep a generation-scoped or local memoized view 
for this consumer (or compute the max update time from a lightweight cached 
value) while preserving the bounded partition-entry policy.



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