You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@sentry.apache.org by "Na Li (JIRA)" <ji...@apache.org> on 2018/05/22 16:24:00 UTC

[jira] [Commented] (SENTRY-2066) DB name is not set for AlterTable

    [ https://issues.apache.org/jira/browse/SENTRY-2066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16484235#comment-16484235 ] 

Na Li commented on SENTRY-2066:
-------------------------------

SENTRY-1209 introduces the bug in HiveAuthzBindingHook.java, and under some situations, the database name is not set in alter table command. 

This jira fixes this issue from SENTRY-1209

> DB name is not set for AlterTable 
> ----------------------------------
>
>                 Key: SENTRY-2066
>                 URL: https://issues.apache.org/jira/browse/SENTRY-2066
>             Project: Sentry
>          Issue Type: Bug
>          Components: Sentry
>    Affects Versions: 2.0.0
>            Reporter: Na Li
>            Assignee: Na Li
>            Priority: Critical
>              Labels: 2.0
>             Fix For: 2.0.0
>
>         Attachments: SENTRY-2066.001.patch, SENTRY-2066.002.patch, SENTRY-2066.003.patch
>
>
> SENTRY-1087 introduced a regression: the database name is not set in alter table column command.
> SENTRY-1087 added a new case below, and it causes the currDB not set because its children are "TOK_TABNAME" and "TOK_ALTERTABLE_RENAMECOL" NONE IS "TOK_ALTERTABLE_SERIALIZER"
> {code}
> case HiveParser.TOK_ALTERTABLE:
>       
>               for (Node childNode : ast.getChildren()) {
>                 ASTNode childASTNode = (ASTNode) childNode;
>                 if ("TOK_ALTERTABLE_SERIALIZER".equals(childASTNode.getText())) {
>                   ASTNode serdeNode = (ASTNode) childASTNode.getChild(0);
>                   String serdeClassName = BaseSemanticAnalyzer.unescapeSQLString(serdeNode.getText());
>                   setSerdeURI(serdeClassName);
>                   currDB = getCanonicalDb();
>                 }
>               }
>               break;
> {code} 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)