yuqi1129 opened a new pull request, #14521: URL: https://github.com/apache/gravitino/pull/14521
### What changes were proposed in this pull request? Preserve array element length, scale and datetime precision. Fall back to String for CHAR metadata with unknown length, and calculate datetime precision for JDBC array type names. This builds on the metadata propagation proposed in #13167 and adds source-metadata and fallback regressions. ### Why are the changes needed? A CHAR array can make its entire table unloadable, and array element metadata is lost. Copying datetime precision into an element bean is ineffective until the source column calculation recognizes array type names. Related: #13159, #13162, #13167. Enterprise tracking: https://github.com/datastrato/gravitino-enterprise/issues/3038 ### Does this PR introduce _any_ user-facing change? CHAR arrays retain known lengths and load safely when length metadata is absent. VARCHAR/NUMERIC/TIMESTAMP array element metadata is preserved, including wide NUMERIC fallback already provided on main. Multidimensional array support is not added. ### How was this patch tested? `./gradlew :catalogs:catalog-jdbc-postgresql:test -PskipITs -PskipDockerTests=false` 76 tests passed, including PostgreSQL Docker tests for CHAR/VARCHAR/NUMERIC/TIMESTAMP and wide-NUMERIC arrays. The missing-length and datetime regressions fail before the fixes. Spotless passed. Actual Spark/Trino data-read end-to-end suites were not run. -- 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]
