hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Dere (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-8579) Guaranteed NPE in DDLSemanticAnalyzer
Date Thu, 23 Oct 2014 20:44:34 GMT

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

Jason Dere commented on HIVE-8579:
----------------------------------

Thanks for catching that.
So the usage in the if clause should be ok - if (desc == null) then the condition is true
and we won't evaluate the 2nd part of the clause. But the usage of desc.getOp() in the throw
clause would be bad if desc was null.

> Guaranteed NPE in DDLSemanticAnalyzer
> -------------------------------------
>
>                 Key: HIVE-8579
>                 URL: https://issues.apache.org/jira/browse/HIVE-8579
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Lars Francke
>
> This was added by [~jdere] in HIVE-8411. I don't fully understand the code (i.e. what
it means when desc is null) but I'm sure, Jason, you can fix it without much trouble?
> {code}
> if (desc == null || !AlterTableDesc.doesAlterTableTypeSupportPartialPartitionSpec(desc.getOp()))
{
>   throw new SemanticException( ErrorMsg.ALTER_TABLE_TYPE_PARTIAL_PARTITION_SPEC_NO_SUPPORTED,
desc.getOp().name());
>         } else if (!conf.getBoolVar(HiveConf.ConfVars.DYNAMICPARTITIONING)) {
>           throw new SemanticException(ErrorMsg.DYNAMIC_PARTITION_DISABLED);
>         }
> {code}
> You check for whether {{desc}} is null but then use it to do {{desc.getOp()}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message