tchivs opened a new pull request, #6653: URL: https://github.com/apache/paimon/pull/6653
## Purpose This PR introduces interface segregation to the CatalogContext class to eliminate the Hadoop dependency for non-Hadoop environments. ## Changes - **Introduce `ICatalogContext` interface**: Core catalog context interface without Hadoop dependencies - **Add `HadoopAware` interface**: Isolates Hadoop-specific functionality - **Add `CatalogHadoopContext` class**: Implements HadoopAware for Hadoop environments - **Update FileIO and related classes**: Use ICatalogContext instead of CatalogContext - **Simplify CatalogContext factory methods**: Reduce code duplication ## Benefits 1. **Hadoop-free environments**: Components like LocalFileIO can work without Hadoop dependencies 2. **Better separation of concerns**: Hadoop functionality is isolated to HadoopAware interface 3. **Cleaner architecture**: Follows interface segregation principle ## Affected Modules - paimon-common - paimon-core - paimon-hive - paimon-spark ## Testing - All existing unit tests pass - Tested with FileIOTest and ResolvingFileIOTest - No behavior changes for existing functionality -- 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]
