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

Vihang Karajgaonkar commented on HIVE-16555:
--------------------------------------------

Thanks [~alangates] for the review. The {{createDbGuidAndPersist}} method also 
is in a transaction block and there is a unique key constraint on column 
{{PROPERTY_KEY}} in the backing table of this API. In the above case if there 
was another call to createDbGuidAndPersist from a 2nd server between the the 
get and create of the 1st server the createDbGuidAndPersist call from the 1st 
server will throw a unique key constraint violation exception which is caught 
and logged as a warning. It then retrieves the UUID set by the 2nd server and 
returns to the client. Do you still see a race condition happening given that 
database will prevent adding the same key twice? I added a test case in the 
patch which calls this API from multiple clients in parallel and makes sure 
that all the clients retrieve the same UUID.

regarding {{MetastoreDBProperty}} let me update the patch after removing the 
structure. Thanks for catching that!

> Add a new thrift API call for get_metastore_uuid
> ------------------------------------------------
>
>                 Key: HIVE-16555
>                 URL: https://issues.apache.org/jira/browse/HIVE-16555
>             Project: Hive
>          Issue Type: Sub-task
>          Components: Metastore
>            Reporter: Vihang Karajgaonkar
>            Assignee: Vihang Karajgaonkar
>         Attachments: HIVE-16555.01.patch, HIVE-16555.02.patch, 
> HIVE-16555.03.patch, HIVE-16555.04.patch, HIVE-16555.05.patch, 
> HIVE-16555.06.patch, HIVE-16555.07.patch
>
>
> Sub-task of the main JIRA to add the new thrift API



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

Reply via email to