Skip to content

Conversation

@rionmonster
Copy link
Contributor

@rionmonster rionmonster commented Sep 24, 2025

Purpose

Linked Issue: Closes #1745

Per Issue #1745, this pull request updates the handling of custom properties during Flink-based table creation, which previously would include all properties as custom instead non-Fluss related properties.

Brief change log

Updated the FlinkConversions.toFlussTable(...) function to identify any properties found within the configuration that were not explicitly related to Fluss tables to properly distinguish between Fluss and non-Fluss (i.e. custom) properties.

Tests

Added a new FlinkConversionsTest.testTableConversionForCustomProperties test case from the original issue that reproduced the issue and verified successful identification of both Fluss and custom properties (thanks to @luoyuxia for the original repro/test case).

API and Format

N/A

Documentation

N/A

…ation

[flink] Improved Handling of Custom Properties During Fluss Table Creation

[flink] Improved Handling of Custom Properties During Fluss Table Creation
@rionmonster
Copy link
Contributor Author

Alternative Consideration

It's probably worth mentioning that I considered a few options prior to issuing this PR but the primary alternative felt a bit heavy-handed, but I'm open to changing things. The alternative consisted of introducing a private static class that would be responsible for performing a single pass over the configuration keys and identify each category during that iteration.

Something like the following along with a corresponding static function responsible for the extraction of those categories (e.g. extractPropertyCategories(Configuration options)) that would then expose each specific category:

private static class PropertyCategories {
    // allProperties probably not necessary here as the table only consumes table and custom properties
    final Map<String, String> allProperties;
    final Map<String, String> tableProperties;
    final Map<String, String> customProperties;
   
    ...
}

This would remove the key-wise comparison between all of the current properties with the table properties (which should be fairly inexpensive on its own).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Flink create table will make all table options be custom properties

1 participant