[ 
https://issues.apache.org/jira/browse/IMPALA-8117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sahil Takiar updated IMPALA-8117:
---------------------------------
    Summary: alter table set properties on Kudu table does not validate 
existence of table on new master  (was: 
KuduCatalogOpExecutor.validateKuduTblExists does not check if Kudu table exists)

> alter table set properties on Kudu table does not validate existence of table 
> on new master
> -------------------------------------------------------------------------------------------
>
>                 Key: IMPALA-8117
>                 URL: https://issues.apache.org/jira/browse/IMPALA-8117
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Catalog
>            Reporter: Sahil Takiar
>            Assignee: Sahil Takiar
>            Priority: Major
>
> The code for {{KuduCatalogOpExecutor.validateKuduTblExists}} is:
> {code:java}
>     KuduClient kudu = KuduUtil.getKuduClient(masterHosts);
>     try {
>       kudu.tableExists(kuduTableName);
>     } catch (Exception e) {
>       // TODO: This is misleading when there are other errors, e.g. timeouts.
>       throw new ImpalaRuntimeException(String.format("Kudu table '%s' does 
> not exist " +
>           "on master '%s'", kuduTableName, masterHosts), e);
>     }
> {code}
> The issue is that {{kudu.tableExists}} returns {{true}} if the table exists, 
> {{false}} if it does not. So this method does not actually check if the table 
> exists.
> I went through the rest of the code in {{KuduCatalogOpExecutor}} and it looks 
> like all other uses of {{kudu.tableExists}} properly check the return value 
> of the method.
> Currently, the only codepath that uses this method is {{alter table ... set 
> tblproperties}}. It validates that the Kudu table is accessible after setting 
> the new properties (which could include changing the value of the Kudu table 
> or master address.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to