[ 
https://issues.apache.org/jira/browse/HIVE-20057?focusedWorklogId=210634&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-210634
 ]

ASF GitHub Bot logged work on HIVE-20057:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 10/Mar/19 04:38
            Start Date: 10/Mar/19 04:38
    Worklog Time Spent: 10m 
      Work Description: animenon commented on pull request #388: HIVE-20057: 
Fix Hive table conversion DESCRIBE table bug
URL: https://github.com/apache/hive/pull/388#discussion_r264023163
 
 

 ##########
 File path: 
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
 ##########
 @@ -1802,12 +1802,12 @@ private MTable convertToMTable(Table tbl) throws 
InvalidObjectException,
     // accordingly
     String tableType = tbl.getTableType();
     boolean isExternal = 
Boolean.parseBoolean(tbl.getParameters().get("EXTERNAL"));
-    if (TableType.MANAGED_TABLE.toString().equals(tableType)) {
+    if (TableType.MANAGED_TABLE.toString().equalsIgnoreCase(tableType)) {
 
 Review comment:
   Yes the `Boolean.parseBoolean` would ignore case and give correct 
`isExternal` value, but the thing is you wouldn't reach there.. 
   
   `TableType.EXTERNAL_TABLE equals tableType` is checked before `if 
(!isExternal)`  that would fail.  
[ref](https://github.com/apache/hive/blob/e4d60e29910ec709d432fd85819cb6b6d097d689/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java#L1811)
   
   Like you pointed out rightly, `isExternal` ignores case but the flow 
wouldn't goto that condition because the condition before that fails.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 210634)
    Time Spent: 2.5h  (was: 2h 20m)

> For ALTER TABLE t SET TBLPROPERTIES ('EXTERNAL'='TRUE'); `TBL_TYPE` attribute 
> change not reflecting for non-CAPS
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-20057
>                 URL: https://issues.apache.org/jira/browse/HIVE-20057
>             Project: Hive
>          Issue Type: Bug
>          Components: Standalone Metastore
>    Affects Versions: All Versions
>            Reporter: Anirudh
>            Assignee: Anirudh
>            Priority: Minor
>              Labels: pull-request-available
>             Fix For: 3.1.0
>
>         Attachments: hive20057.patch
>
>          Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> Hive EXTERNAL table shown as MANAGED after conversion using 
> {code} ALTER TABLE t SET TBLPROPERTIES ('EXTERNAL'='True')
> {code}
>  
> The DESCRIBE FORMATTED shows:
> {code}
> Table Type:            MANAGED_TABLE
> Table Parameters:
>                                EXTERNAL           True
> {code}
>  
> This is actually a External table but is shown wrongly, as 'True' was used in 
> place of 'TRUE' in the ALTER statement.
> Issue explained here: 
> [StakOverflow - Hive Table is MANAGED or 
> EXTERNAL|https://stackoverflow.com/questions/51103317/hive-table-is-managed-or-external/51142873#51142873]
>  



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

Reply via email to