924060929 commented on code in PR #69983:
URL: https://github.com/apache/doris/pull/69983#discussion_r4448464860


##########
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/IcebergUtils.java:
##########
@@ -2320,25 +2326,38 @@ public static IcebergPartitionInfo 
loadPartitionInfo(ExternalTable dorisTable, T
     static IcebergPartitionInfo loadPartitionInfo(ExternalTable dorisTable, 
Table table, long snapshotId,
             long schemaId, ExecutionAuthenticator authenticator,
             boolean enableMappingVarbinary, boolean enableMappingTimestampTz) 
throws AnalysisException {
+        String displayName = dorisTable.getCatalog().getName() + "." + 
dorisTable.getDbName()
+                + "." + dorisTable.getName();
+        return loadPartitionInfo(displayName, table, snapshotId, schemaId, 
authenticator,
+                enableMappingVarbinary, enableMappingTimestampTz);
+    }
+
+    static IcebergPartitionInfo loadPartitionInfo(String displayName, Table 
table,
+            long snapshotId, long schemaId, ExecutionAuthenticator 
authenticator,
+            boolean enableMappingVarbinary, boolean enableMappingTimestampTz) 
throws AnalysisException {
         if (snapshotId == IcebergUtils.UNKNOWN_SNAPSHOT_ID) {
             return IcebergPartitionInfo.empty();
         }
         List<IcebergPartition> icebergPartitions;
+        List<Column> partitionColumns;
         try {
             icebergPartitions = authenticator.execute(() -> 
loadIcebergPartition(table, snapshotId));
+            // A retained projection may outlive its catalog cache group. Its 
columns and ranges
+            // must use the same frozen table/schema, without looking up a new 
catalog generation.

Review Comment:
   Fixed in 5d3cb7503ef874a03170ae1fa2b49231b7a5dcff. The retained-table 
partition loader now applies SchemaCacheValue.validateSchema() immediately 
after parsing and before deriving partition columns, following the existing 
retained schema-display pattern. It stays inside the captured authenticator and 
existing AnalysisException wrapper; no live catalog/schema-cache lookup is 
reintroduced. Two real HadoopTables metadata tests reproduced ambiguous dt/DT 
schemas being accepted before the fix, for both active and retired catalog 
projections. They now verify rejection, table/snapshot error context, and no 
new authenticator lookup. Existing reset/session success cases remain covered. 
All 173 related FE tests and full FE packaging/Checkstyle pass locally.



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