You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Eugene Koifman (JIRA)" <ji...@apache.org> on 2015/11/18 03:10:10 UTC

[jira] [Updated] (HIVE-12421) Streaming API add TransactionBatch.beginNextTransaction(long timeout)

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

Eugene Koifman updated HIVE-12421:
----------------------------------
    Summary: Streaming API add TransactionBatch.beginNextTransaction(long timeout)  (was: Streaming API TransactionBatch.beginNextTransaction() does not wait for locks)

> Streaming API add TransactionBatch.beginNextTransaction(long timeout)
> ---------------------------------------------------------------------
>
>                 Key: HIVE-12421
>                 URL: https://issues.apache.org/jira/browse/HIVE-12421
>             Project: Hive
>          Issue Type: Improvement
>          Components: HCatalog, Transactions
>    Affects Versions: 0.14.0
>            Reporter: Eugene Koifman
>            Assignee: Eugene Koifman
>
> TransactionBatchImpl.beginNextTransactionImpl() has
> {noformat}
>         LockResponse res = msClient.lock(lockRequest);
>         if (res.getState() != LockState.ACQUIRED) {
>           throw new TransactionError("Unable to acquire lock on " + endPt);
>         }
> {noformat}
> This means that if there are any competing locks already take, this will throw an Exception to client.  This doesn't seem like the right behavior.  It should block.
> We could also add TransactionBatch.beginNextTransaction(long timeoutMs) to  give the client more control.
> cc [~alangates]  [~sriharsha]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)