flink
flink copied to clipboard
[FLINK-33784][table] Support Configuring CatalogStoreFactory via StreamExecutionEnvironment
What is the purpose of the change
The initialization of CatalogStore is currently before flink-conf.yaml and StreamTableEnvironment, which causes the configuration in flink-conf.yaml to not take effect. We should move the initialization of CatalogStore after the configuration merging.
Brief change log
- Postponed the discovery of CatalogStoreFactory until the final configuration is merged.
- Using map type options for get CatalogStore confs
Verifying this change
Add unit test case in org.apache.flink.table.api.EnvironmentTest. Add CatalogStore Configuration in EnviromentSetting to verify if the discovery logic of CatalogStore can work properly, and whether other Enviroments can share the Catalog.
Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (no)
- The public API, i.e., is any changed class annotated with
@Public(Evolving): (no) - The serializers: (no)
- The runtime per-record code paths (performance sensitive): (no)
- Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
- The S3 file system connector: (no)
Documentation
- Does this pull request introduce a new feature? (no)
- If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
CI report:
- 49989e5491f40e6de8e6f48aa67fa5f3e418c990 Azure: SUCCESS
Bot commands
The @flinkbot bot supports the following commands:@flinkbot run azurere-run the last Azure build
@twalthr @fsk119 Please help review when you have time, thank you.