voonhous opened a new issue, #19958: URL: https://github.com/apache/hudi/issues/19958
hudi-trino's unit tests run on Hudi's dependency versions, while the plugin that ships runs on Trino's. A connector bug that only shows up on Trino's versions passes the connector CI. `hudi-trino` inherits the root pom, whose `dependencyManagement` pins 223 artifacts. Maven lets those inherited entries win over the imported `trino-root` BOM. The plugin itself is assembled by `docker/trino/shim`, whose parent is `trino-root`, so it bundles Trino's versions. | Library | hudi-trino tests | Shipped plugin (Trino at `40b70400a8a6`) | |---|---|---| | Avro | 1.11.4 (root pom) | 1.12.2 | | Parquet | 1.15.2 (pinned in hudi-trino) | 1.18.0 | #19957 is an example: Avro 1.12.2 rejects Hudi's generated classes inside Trino, but a hudi-trino unit test for it passes on 1.11.4, so only the Trino E2E suite catches it. Pinning each version in `hudi-trino/pom.xml` does not scale and already drifts: the Parquet pin dates from #18837. Options: 1. Make `trino-root` the parent of `hudi-trino`, as the shim does, so tests use exactly the shipped versions. 2. Have the pin-advance job copy selected versions from `trino-root` into `hudi-trino`. 3. Pass Trino's versions to the hudi-trino test run in CI (e.g. `-Davro.version`). 4. Add a CI check that reports where hudi-trino's resolved versions differ from `trino-root`. -- 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]
