This is an automated email from the ASF dual-hosted git repository.

jerryshao pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/main by this push:
     new 69e90539ed [#11235] fix display iceberg table bucketed table partition 
numBuckets (#11479)
69e90539ed is described below

commit 69e90539ed025e99cd5e8d19f628204cc22311ae
Author: Qian Xia <[email protected]>
AuthorDate: Tue Jun 9 15:58:30 2026 +0800

    [#11235] fix display iceberg table bucketed table partition numBuckets 
(#11479)
    
    ### What changes were proposed in this pull request?
    
    1. fix iceberg table bucketed table partition numBuckets issue
    2. fix iceberg catalog warehouse required issue
    
    <img width="2550" height="1654" alt="image"
    
src="https://github.com/user-attachments/assets/6c55b69a-a9dd-430e-9913-4631a58a69f4";
    />
    
    
    ### Why are the changes needed?
    N/A
    
    Fix: #11235
    
    ### Does this PR introduce _any_ user-facing change?
    N/A
    
    ### How was this patch tested?
    manually
---
 .../app/catalogs/rightContent/CreateCatalogDialog.js    | 17 ++++++++++-------
 .../src/app/catalogs/rightContent/CreateTableDialog.js  |  2 +-
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/web-v2/web/src/app/catalogs/rightContent/CreateCatalogDialog.js 
b/web-v2/web/src/app/catalogs/rightContent/CreateCatalogDialog.js
index 570cd1d45c..e50a93ae01 100644
--- a/web-v2/web/src/app/catalogs/rightContent/CreateCatalogDialog.js
+++ b/web-v2/web/src/app/catalogs/rightContent/CreateCatalogDialog.js
@@ -78,6 +78,13 @@ export default function CreateCatalogDialog({ ...props }) {
   const dispatch = useAppDispatch()
   const isShowTestConnect = ['fileset', 'model'].includes(catalogType) || 
currentProvider === 'lakehouse-generic'
 
+  const isRequiredField = prop => {
+    return (
+      prop.required ||
+      (prop.key === 'warehouse' && currentProvider === 'lakehouse-iceberg' && 
['hive', 'jdbc'].includes(catalogBackend))
+    )
+  }
+
   const defaultValues = {
     name: '',
     type: catalogType,
@@ -107,14 +114,14 @@ export default function CreateCatalogDialog({ ...props }) 
{
   )
 
   const isHidden = prop => {
-    const { parentField, hide, required, key } = prop
+    const { parentField, hide, key } = prop
     switch (parentField) {
       case 'catalog-backend':
         return catalogBackend && hide && hide.includes(catalogBackend)
       case 'authentication.type':
         return !authType || (hide && hide.includes(authType))
       default:
-        return !(!editCatalog || ['region', 'location'].includes(key) || 
required)
+        return !(!editCatalog || ['region', 'location'].includes(key) || 
isRequiredField(prop))
     }
   }
 
@@ -522,11 +529,7 @@ export default function CreateCatalogDialog({ ...props }) {
                             key={idx}
                             rules={[
                               {
-                                required:
-                                  prop.required ||
-                                  (prop.key === 'warehouse' &&
-                                    currentProvider === 'lakehouse-iceberg' &&
-                                    ['hive', 'jdbc'].includes(catalogBackend))
+                                required: isRequiredField(prop)
                               }
                             ]}
                             messageVariables={{ label: 
prop.label.toLowerCase() }}
diff --git a/web-v2/web/src/app/catalogs/rightContent/CreateTableDialog.js 
b/web-v2/web/src/app/catalogs/rightContent/CreateTableDialog.js
index d3c927d748..99150c7f34 100644
--- a/web-v2/web/src/app/catalogs/rightContent/CreateTableDialog.js
+++ b/web-v2/web/src/app/catalogs/rightContent/CreateTableDialog.js
@@ -417,7 +417,7 @@ export default function CreateTableDialog({ ...props }) {
                 const fields = item.fieldName || item.fieldNames.map(f => f[0])
                 form.setFieldValue(['partitions', idxPartiton, 'strategy'], 
item.strategy)
                 form.setFieldValue(['partitions', idxPartiton, 'fieldName'], 
fields)
-                form.setFieldValue(['partitions', idxPartiton, 'number'], 
item.width || item.number)
+                form.setFieldValue(['partitions', idxPartiton, 'number'], 
item.numBuckets || item.width || item.number)
                 idxPartiton++
               })
             }

Reply via email to