sparsh-30 opened a new pull request, #19855: URL: https://github.com/apache/hudi/pull/19855
### Describe the issue this Pull Request addresses Closes #19841. Several schema-related utilities contain duplicated logic. Projection schema generation is implemented in both `HoodieSchemaUtils` and `HoodieRealtimeRecordReaderUtils`, while timestamp-millis detection is duplicated between `HoodieSchemaRepair` and `HoodieTableMetadataUtil`. ### Summary and Changelog - Add a shared projection schema generation overload to `HoodieSchemaUtils`. - Preserve the source schema's error flag when creating projection schemas. - Update `AbstractRealtimeRecordReader` to use the common utility. - Remove the duplicate projection schema generation method from `HoodieRealtimeRecordReaderUtils`. - Reuse `HoodieTableMetadataUtil.isTimestampMillisField` in `HoodieSchemaRepair`. - Make the timestamp-millis predicate accessible across the relevant packages. ### Impact No user-facing behavior or storage-format change is introduced. The refactoring preserves existing schema projection and timestamp-millis detection behavior while reducing duplicated implementation logic. No new public feature or configuration is added. ### Risk Level Low. The changes consolidate existing implementations and update callers to use the shared utilities. The affected schema utility, schema repair, and realtime reader test coverage will be used to verify that behavior remains unchanged. ### Documentation Update none ### Contributor's checklist - [x] Read through contributor's guide - [x] Enough context is provided in the sections above - [x] Adequate tests were added if applicable -- 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]
