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 2016/12/16 23:04:58 UTC
[jira] [Comment Edited] (HIVE-15376) Improve heartbeater scheduling
for transactions
[ https://issues.apache.org/jira/browse/HIVE-15376?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15755743#comment-15755743 ]
Eugene Koifman edited comment on HIVE-15376 at 12/16/16 11:04 PM:
------------------------------------------------------------------
acquireLocksWithHeartbeatDelay() is called from DbTxnManagrer.acquireLocks() (in current code)
Regarding Case 4:
But how do you know heartbeat is being sent?
was (Author: ekoifman):
acquireLocksWithHeartbeatDelay() is called from DbTxnManagrer.acquireLocks()
Regarding Case 4:
But how do you know heartbeat is being sent?
> Improve heartbeater scheduling for transactions
> -----------------------------------------------
>
> Key: HIVE-15376
> URL: https://issues.apache.org/jira/browse/HIVE-15376
> Project: Hive
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 2.2.0
> Reporter: Wei Zheng
> Assignee: Wei Zheng
> Attachments: HIVE-15376.1.patch, HIVE-15376.2.patch, HIVE-15376.3.patch, HIVE-15376.4.patch, HIVE-15376.5.patch, HIVE-15376.6.patch, HIVE-15376.7.patch, HIVE-15376.8.patch, HIVE-15376.9.patch
>
>
> HIVE-12366 improved the heartbeater logic by bringing down the gap between the lock acquisition and first heartbeat, but that's not enough, there may still be some issue, e.g.
> Time A: a transaction is opened
> Time B: acquireLocks is called (blocking call), but it can take a long time to actually acquire the locks and return if the system is busy
> Time C: as acquireLocks returns, the first heartbeat is sent
> If hive.txn.timeout < C - A, then the transaction will be timed out and aborted, thus causing failure.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)