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

Naveen Gangam commented on HIVE-12184:
--------------------------------------


[~leftylev] I am glad to have contributed to the hive docs :) 
The changes to the Hive2.0+ section look great. Thanks for editing it.

The syntax for the old section is, unfortunately, correct grammatically 
speaking. Except, like Xuefu mentioned, it cannot accept a DOT-separated DB and 
a DOT-separated TABLE.COLUMN in the same command. It is either or. When the DB 
is specified, the COLUMN has to be SPACE-separated. Thats what made the old 
syntax so confusing. To clarify this, we could 
a) add more verbiage in this section about this caveat or
b) separate the syntax for each usecase. Something like this

If DB is specified
DESCRIBE [EXTENDED|FORMATTED] 
  [db_name.]table_name[ col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | 
[.'$value$'] )* ];

If DB is not specified
DESCRIBE [EXTENDED|FORMATTED] 
  table_name[.col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | 
[.'$value$'] )* ];

Hope this helps.



> DESCRIBE of fully qualified table fails when db and table name match and 
> non-default database is in use
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-12184
>                 URL: https://issues.apache.org/jira/browse/HIVE-12184
>             Project: Hive
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 1.2.1
>            Reporter: Lenni Kuff
>            Assignee: Naveen Gangam
>             Fix For: 2.0.0
>
>         Attachments: HIVE-12184.10.patch, HIVE-12184.10.patch, 
> HIVE-12184.2.patch, HIVE-12184.3.patch, HIVE-12184.4.patch, 
> HIVE-12184.5.patch, HIVE-12184.6.patch, HIVE-12184.7.patch, 
> HIVE-12184.8.patch, HIVE-12184.9.patch, HIVE-12184.patch
>
>
> DESCRIBE of fully qualified table fails when db and table name match and 
> non-default database is in use.
> Repro:
> {code}
> : jdbc:hive2://localhost:10000/default> create database foo;
> No rows affected (0.116 seconds)
> 0: jdbc:hive2://localhost:10000/default> create table foo.foo(i int);
> 0: jdbc:hive2://localhost:10000/default> describe foo.foo;
> +-----------+------------+----------+--+
> | col_name  | data_type  | comment  |
> +-----------+------------+----------+--+
> | i         | int        |          |
> +-----------+------------+----------+--+
> 1 row selected (0.049 seconds)
> 0: jdbc:hive2://localhost:10000/default> use foo;
> 0: jdbc:hive2://localhost:10000/default> describe foo.foo;
> Error: Error while processing statement: FAILED: Execution Error, return code 
> 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Error in getting fields from 
> serde.Invalid Field foo (state=08S01,code=1)
> {code}



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

Reply via email to