yuqi1129 opened a new pull request, #14287: URL: https://github.com/apache/gravitino/pull/14287
### What changes were proposed in this pull request? - `ManagedTableOperations` rejects column changes on nested fields (`fieldName.length > 1`). - `LanceTableOperations` validates every change of a request before it opens the dataset. ### Why are the changes needed? Managed tables store columns by their top-level name only. A nested `addColumn(["s", "x"])` created a bogus top-level column `s.x`. On Lance, a nested rename or drop was applied to the dataset before the metadata update failed. Lance also validated each change only when it reached it, so a request with an invalid later change had already applied its earlier changes to the dataset. In both cases, the dataset and the metadata no longer agreed. Fixes #14284 ### Does this PR introduce _any_ user-facing change? Nested column changes on managed and Lance tables, and Lance requests that contain an unsupported change, now fail before anything is changed. ### How was this patch tested? New `TestManagedTableOperations.testAlterTableRejectsNestedColumnChanges` and `TestLanceTableOperations.testHandleLanceTableChangeValidatesBeforeChangingDataset`, both fail without the fix. Both test classes pass. -- 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]
