[ https://issues.apache.org/jira/browse/HIVE-13725?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15359599#comment-15359599 ]
Vaibhav Gumashta commented on HIVE-13725: ----------------------------------------- [~jcamachorodriguez] Can this be committed to the 2.1 branch? It's an important fix and will be good to have in the next 2.1 maint release. > ACID: Streaming API should synchronize calls when multiple threads use the > same endpoint > ---------------------------------------------------------------------------------------- > > Key: HIVE-13725 > URL: https://issues.apache.org/jira/browse/HIVE-13725 > Project: Hive > Issue Type: Bug > Components: HCatalog, Metastore, Transactions > Affects Versions: 1.2.1, 2.0.0 > Reporter: Vaibhav Gumashta > Assignee: Vaibhav Gumashta > Priority: Critical > Labels: ACID, Streaming > Fix For: 1.3.0, 2.2.0 > > Attachments: HIVE-13725.1.patch, HIVE-13725.2.patch, > HIVE-13725.3.patch, HIVE-13725.4.patch, HIVE-13725.5.patch, addendum.txt > > > Currently, the streaming endpoint creates a metastore client which gets used > for RPC. The client itself is not internally thread safe. Therefore, the API > methods should provide the relevant synchronization so that the methods can > be called from different threads. A sample use case is as follows: > 1. Thread 1 creates a streaming endpoint and opens a txn batch. > 2. Thread 2 heartbeats the txn batch. > With the current impl, this can result in an "out of sequence response", > since the response of the calls in thread1 might end up going to thread2 and > vice-versa. -- This message was sent by Atlassian JIRA (v6.3.4#6332)