Gabriel39 commented on code in PR #66247:
URL: https://github.com/apache/doris/pull/66247#discussion_r3679651544


##########
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/source/PaimonScanNode.java:
##########
@@ -995,18 +996,27 @@ private Table getProcessedTable() throws UserException {
             throw new UserException("Can not specify scan params and table 
snapshot at same time.");
         }
 
+        Table finalTable;
         if (theScanParams != null && theScanParams.incrementalRead()) {
             // System table handles are cached, so preserve query isolation by 
applying dynamic
             // options to a copied Paimon table instead of changing the shared 
handle.
-            return baseTable.copy(getIncrReadParams());
-        }
-        if (theScanParams != null && theScanParams.isOptions()) {
+            finalTable = baseTable.copy(getIncrReadParams());
+        } else if (theScanParams != null && theScanParams.isOptions()) {
             try {
-                return source.getPaimonTable(theScanParams);
+                finalTable = source.getPaimonTable(theScanParams);
             } catch (IllegalArgumentException e) {
                 throw new UserException(e.getMessage(), e);
             }
+        } else {
+            finalTable = baseTable;
+        }
+        try {
+            // This is the last common boundary before planning and 
serialization, including scans
+            // with no relation copy and incremental/system-table paths that 
bypass applyOptions.
+            
PaimonReaderOptions.validateEffectiveTableOptions(finalTable.options());

Review Comment:
   Fixed in 8ea52152291.  now recursively validates  after the applicable , so 
both independently planned children must be safe. The tests construct real 
Paimon main/fallback file-store tables and cover both hidden unsafe rejection 
and a safe relation override.



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