From d696a0c6e70004adb96d4a6400e0ebac16abce6c Mon Sep 17 00:00:00 2001 From: sonika-shah <58761340+sonika-shah@users.noreply.github.com> Date: Wed, 26 Mar 2025 11:47:44 +0530 Subject: [PATCH] Minor: Add column count validation when creating table-type custom property (#20418) * Minor: Add column count validation when creating table-type custom property * Minor: Add column count validation when creating table-type custom property --- .../org/openmetadata/service/jdbi3/TypeRepository.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java index 715eda32303..2b7f6ec9e4c 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/TypeRepository.java @@ -265,6 +265,14 @@ public class TypeRepository extends EntityRepository { if (uniqueColumns.size() != columns.size()) { throw new IllegalArgumentException("Column names must be unique."); } + if (columns.size() < tableConfig.getMinColumns() + || columns.size() > tableConfig.getMaxColumns()) { + throw new IllegalArgumentException( + "Custom Property table has invalid value columns size must be between " + + tableConfig.getMinColumns() + + " and " + + tableConfig.getMaxColumns()); + } try { JsonUtils.validateJsonSchema(config.getConfig(), TableConfig.class);