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]