[
https://issues.apache.org/jira/browse/PHOENIX-4424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16274689#comment-16274689
]
ASF GitHub Bot commented on PHOENIX-4424:
-----------------------------------------
Github user karanmehta93 commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/284#discussion_r154406035
--- Diff:
phoenix-core/src/main/java/org/apache/phoenix/schema/MetaDataClient.java ---
@@ -4125,7 +4125,7 @@ public MutationState
createSchema(CreateSchemaStatement create) throws SQLExcept
private void validateSchema(String schemaName) throws SQLException {
if (SchemaUtil.NOT_ALLOWED_SCHEMA_LIST.contains(
- schemaName.toUpperCase())) { throw new
SQLExceptionInfo.Builder(SQLExceptionCode.SCHEMA_NOT_ALLOWED)
--- End diff --
@ankitsinghal
You are correct, the schema gets normalized when we try to create a
`PSchema` object and we use `PSchema.getSchemaName()` method which returns the
correct schema name. Thanks for pointing it out.
However, the issue is that the normalization doesn't happen before checking
the validity of the schema. As of now, the schema is uppercased even before
checking if its without quotes or with quotes. This leads to issue when you try
to create schema with the names DEFAULT or HBASE, which is the focus for this
JIRA.
I will update the patch accordingly.
> Allow users to create "DEFAULT" and "HBASE" Schema (Uppercase Schema Names)
> ---------------------------------------------------------------------------
>
> Key: PHOENIX-4424
> URL: https://issues.apache.org/jira/browse/PHOENIX-4424
> Project: Phoenix
> Issue Type: Bug
> Reporter: Karan Mehta
> Assignee: Karan Mehta
> Attachments: PHOENIX-4424.001.patch
>
>
> We currently block users to create "DEFAULT" and "HBASE" schema, however it
> should be actually "default" and "hbase" since hbase namespace is case
> sensitive. Hence we should update it and allow is users want to create
> schema's with those names.
> If user wants to access the schema names with capital letters, they can pass
> it in directly (Phoenix will automatically upper-case it) or pass it in
> uppercase letters with double-quotes.
> FYI.
> [[email protected]]
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)