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


##########
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/action/IcebergRewriteDataFilesAction.java:
##########
@@ -75,8 +76,8 @@ public class IcebergRewriteDataFilesAction extends 
BaseIcebergAction {
 
     public IcebergRewriteDataFilesAction(Map<String, String> properties,
             Optional<PartitionNamesInfo> partitionNamesInfo,
-            Optional<Expression> whereCondition) {
-        super("rewrite_data_files", properties, partitionNamesInfo, 
whereCondition);
+            Optional<Expression> whereCondition, IcebergMetadataOps 
metadataOps) {
+        super("rewrite_data_files", properties, partitionNamesInfo, 
whereCondition, metadataOps);

Review Comment:
   [P1] Keep `rewrite_data_files` on the captured generation
   
   This is the one mutating action that never consumes the generation fence 
added by this constructor: `executeAction` still uses the ordinary cached 
`IcebergUtils.getIcebergTable`, and `RewriteDataFileExecutor` later reads 
`catalog.getTransactionManager()` twice. If a reset occurs after dispatch 
captures ops/authenticator A, the rewrite can plan or create its transaction 
from generation B while the command's outer `doAs` is still A; a reset between 
the manager reads can also lose the newly allocated transaction. Its final 
`transaction.commitTransaction()` therefore retains the cross-generation 
authentication problem this PR is fixing, and its broad catch prevents a 
pre-mutation generation sentinel from reaching the retry loop. Please carry the 
captured ops/table/transaction manager through the rewrite end-to-end, with the 
fence outside the catch, and add a deterministic reset test. This is distinct 
from the earlier command thread because that fix relies on fenced writable 
acquisitio
 n, which this action bypasses.



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