bharos opened a new issue, #10837:
URL: https://github.com/apache/gravitino/issues/10837
### Version
main branch
### Describe what's wrong
In the web-v2 UI, editing a catalog that has optional (non-required)
properties like warehouse causes those properties to be silently removed. This
results in a 400 error from the backend when warehouse is required for the
catalog to function correctly.
The root cause is in CreateCatalogDialog.js. During edit mode, the
isHidden() function's default case hides all non-required properties that
aren't region or location. The getSubmitData() function then filters out hidden
props via .filter(item => !isHidden(item)), so they are excluded from the
submitted data. When genUpdates() compares the original catalog properties
against the submitted properties, it generates a removeProperty("warehouse")
update, which the backend rejects with a 400 error.
### Error message and/or stacktrace
Backend returns HTTP 400 when attempting to save the edited catalog. The
warehouse property is removed from the update payload even though the user did
not change or remove it.
### How to reproduce
How to reproduce:
Start Gravitino server and web-v2 UI on main branch
Create a lakehouse-iceberg catalog with hive backend, setting uri and
warehouse properties
Click edit on the catalog
Change only the comment field (or any visible field)
Click submit
Observe 400 error — the warehouse property was removed from the update
request
### Additional context
https://github.com/user-attachments/assets/a1ecbf84-5a7e-4a55-8e44-82db2b16ca03
--
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]