Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16273 )
Change subject: IMPALA-9990: Support SET OWNER for Kudu tables ...................................................................... Patch Set 6: (1 comment) http://gerrit.cloudera.org:8080/#/c/16273/6/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java File fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java: http://gerrit.cloudera.org:8080/#/c/16273/6/fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java@3779 PS6, Line 3779: if (isSynchronizedKuduTable) { > Thanks Vihang for the feedback! Thinking through the options, a few come to mind: 1. Return an error 2. Change the Kudu table's owner _and_ the HMS external table's owner 3. Just change the HMS external table's owner So here's some food for thought: Is the ownership of a table meant to be consistent across all references to that table (i.e. all external tables)? I think the answer is no. Take the case in which we have multiple, separate Impala clusters pointing at a Kudu table in our local cluster via external tables. If one of those Impala clusters sets a different owner for its external table, the metadata change wouldn't be reflected on all of the other clusters' HMSs' external tables, since none of the HMS tables are synchronized. In that regard, I think it would be weird if the ownership change of an external table resulted in a change in ownership of the underlying Kudu table, since the ownership change may not be reflected by all of its references (including the external table that we just changed the ownership of!). Based on this, I would lean away from option 2. Digging into the other two options, I'm trying to better understand what ownership is in the context of an external table. Is it meant to be used as the owner of the underlying table? Or the owner of the HMS metadata entry (e.g. the owner of a symlink)? Also, are external tables even able to have owners that are not the owner of the underlying table? I would think the answer is yes, and that "ownership" refers to ownership of the external table only, in which case I would lean towards option 3, especially if that's allowed behavior today. -- To view, visit http://gerrit.cloudera.org:8080/16273 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I29d641efc8db314964bc5ee9828a86d4a44ae95c Gerrit-Change-Number: 16273 Gerrit-PatchSet: 6 Gerrit-Owner: Fang-Yu Rao <fangyu....@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Attila Bukor <abu...@apache.org> Gerrit-Reviewer: Fang-Yu Rao <fangyu....@cloudera.com> Gerrit-Reviewer: Grant Henke <granthe...@apache.org> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Gerrit-Reviewer: Vihang Karajgaonkar <vih...@cloudera.com> Gerrit-Comment-Date: Thu, 22 Oct 2020 20:25:52 +0000 Gerrit-HasComments: Yes