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

jackie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git


The following commit(s) were added to refs/heads/master by this push:
     new 18cd7767b3 validate schemaName must not have double underscore (#14511)
18cd7767b3 is described below

commit 18cd7767b35149c02d5014e44fb2f431a0e8da46
Author: rohit <[email protected]>
AuthorDate: Fri Nov 22 00:04:23 2024 +0530

    validate schemaName must not have double underscore (#14511)
---
 .../pinot/controller/api/resources/PinotSchemaRestletResource.java     | 3 +++
 .../src/main/java/org/apache/pinot/spi/config/table/TableConfig.java   | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git 
a/pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotSchemaRestletResource.java
 
b/pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotSchemaRestletResource.java
index d2f997cf61..8c85f6d355 100644
--- 
a/pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotSchemaRestletResource.java
+++ 
b/pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotSchemaRestletResource.java
@@ -392,6 +392,9 @@ public class PinotSchemaRestletResource {
       throw new ControllerApplicationException(LOGGER,
           "Invalid schema. Reason: 'schemaName' should not be null or empty", 
Response.Status.BAD_REQUEST);
     }
+    if 
(schema.getSchemaName().contains(TableConfig.TABLE_NAME_FORBIDDEN_SUBSTRING)) {
+      throw new IllegalStateException("'schemaName' cannot contain double 
underscore ('__')");
+    }
   }
 
   private void validateSchemaInternal(Schema schema) {
diff --git 
a/pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TableConfig.java 
b/pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TableConfig.java
index e5e11b0bd9..7eba79f6d8 100644
--- a/pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TableConfig.java
+++ b/pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TableConfig.java
@@ -60,7 +60,7 @@ public class TableConfig extends BaseJsonConfig {
   public static final String TIER_OVERWRITES_KEY = "tierOverwrites";
 
   // Double underscore is reserved for real-time segment name delimiter
-  private static final String TABLE_NAME_FORBIDDEN_SUBSTRING = "__";
+  public static final String TABLE_NAME_FORBIDDEN_SUBSTRING = "__";
 
   /* MANDATORY FIELDS */
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to