mxm commented on code in PR #14729:
URL: https://github.com/apache/iceberg/pull/14729#discussion_r2592071389


##########
flink/v2.1/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicIcebergSink.java:
##########
@@ -336,6 +337,15 @@ public Builder<T> inputSchemasPerTableCacheMaxSize(int 
inputSchemasPerTableCache
       return this;
     }
 
+    /**
+     * Set whether schema field name matching should be case-sensitive. The 
default is to match the
+     * field names case-sensitive.
+     */
+    public Builder<T> caseSensitive(boolean newCaseSensitive) {

Review Comment:
   >In cache, we are fine if we are insensitive - we are just adding more items 
to the cache.
   
   It's not so simple. The cache itself uses the TableIdentifier to refresh the 
table. Are we refreshing using the user-provided TableIdentifer, or are we 
using the lower case variant? IMHO We need to use whatever the user provides to 
load the correct table from the catalog. When we load the table, the only way 
to tell would be to load both case sensitive and case insensitive; if both 
return results and they are not the same table => FAIL; if it's the same table 
or we get only one result => use that table. That's the same mechanism Schema 
uses.



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