hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Patrick Duin (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-15249) HIve 2.1.0 is throwing InvalidObjectException(message:Invalid column type name is too long
Date Wed, 01 Mar 2017 10:41:45 GMT

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

Patrick Duin commented on HIVE-15249:
-------------------------------------

[~ngangam] 
Thanks for addressing this.
I've look through the patch (haven't applied it) but it doesn't touch any java code. In order
to fix this this check needs to be addressed. 
https://github.com/apache/hive/blob/master/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java#L696
Used here:
https://github.com/apache/hive/blob/master/metastore/src/java/org/apache/hadoop/hive/metastore/MetaStoreUtils.java#L708

I can confirm that changing the COLUMNS_V2.COLUMN TYPE_NAME as done in the patch fixes the
DB issue but a create/alter table will still fail due to the error described in this ticket.

> HIve 2.1.0 is throwing InvalidObjectException(message:Invalid column type name is too
long
> ------------------------------------------------------------------------------------------
>
>                 Key: HIVE-15249
>                 URL: https://issues.apache.org/jira/browse/HIVE-15249
>             Project: Hive
>          Issue Type: Bug
>          Components: Hive
>            Reporter: vishal.rajan
>
> HIve 2.1.0 is throwing InvalidObjectException(message:Invalid column type name is too
long
>  If you go through MetaStoreUtils.java you can see MAX_MS_TYPENAME_LENGTH is hard coded
to 2000, but this can be set to higher value in mysql.Table create doesn't happen , for tables
with higher type length. Different users can change this variable based on different use cases/metastore
if this can be a config variable.
>   public static final int MAX_MS_TYPENAME_LENGTH = 2000;
>   public static final String TYPE_FROM_DESERIALIZER = "<derived from deserializer>";
>   /**
>    * validate column type
>    *
>    * if it is predefined, yes. otherwise no
>    * @param name
>    * @return
>    */
>   static public String validateColumnType(String type) {
>     if (type.equals(TYPE_FROM_DESERIALIZER)) return null;
>     if (type.length() > MAX_MS_TYPENAME_LENGTH) {
>       return "type name is too long: " + type;
>     }



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message