hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eugene Koifman (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-8711) DB deadlocks not handled in TxnHandler for Postgres, Oracle, and SQLServer
Date Wed, 05 Nov 2014 01:43:33 GMT

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

Eugene Koifman commented on HIVE-8711:
--------------------------------------

1. TxnHandler.detectDeadlock() - I think it makes sense to implement it like getDbTime() so
that checks only what is expected for a given DB type.  For example, if Oracle throws 40001,
current code will assume it's a deadlock.
2. DeadLockCreator - it seems that it can easily guarantee deadlock by calling updateTxns(conn1),
updateLocks(conn2), updateLocks(conn1).  It could then be enabled permanently.
3. Nit: why are constants in TxnHandler, such as LOCK_ACQUIRED 'protected'  They are only
used in test code which is the same package as TxnHandler.
4. This not related to this bug, but MetaStoreThread.BooleanPointer() has multiple threads
reading/writing a boolean variable which is not volatile or AtomicBoolean...  this looks like
a recipe for trouble

> DB deadlocks not handled in TxnHandler for Postgres, Oracle, and SQLServer
> --------------------------------------------------------------------------
>
>                 Key: HIVE-8711
>                 URL: https://issues.apache.org/jira/browse/HIVE-8711
>             Project: Hive
>          Issue Type: Bug
>          Components: Transactions
>    Affects Versions: 0.14.0
>            Reporter: Alan Gates
>            Assignee: Alan Gates
>            Priority: Critical
>             Fix For: 0.14.0
>
>         Attachments: HIVE-8711.patch
>
>
> TxnHandler.detectDeadlock has code to catch deadlocks in MySQL and Derby.  But it does
not detect a deadlock for Postgres, Oracle, or SQLServer



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

Mime
View raw message