[
https://issues.apache.org/jira/browse/HIVE-15774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wei Zheng updated HIVE-15774:
-----------------------------
Description:
In pre-ACID days, users perform operations such as INSERT with either
ZooKeeperHiveLockManager or no lock manager at all. If their workflow is
designed to take advantage of no locking and they take care of the control of
concurrency, this works well with good performance.
With ACID, if users enable transactions (i.e. using DbTxnManager &
DbLockManager), then for all the operations, different types of locks will be
acquired accordingly by DbLockManager, even for non-ACID resources. This may
impact the performance of some workflows designed for pre-ACID use cases.
A viable solution would be to differentiate the locking mode for ACID and
non-ACID resources, so that DbLockManager will continue its current behavior
for ACID tables, but will be able to acquire a less strict lock type for
non-ACID resources, thus avoiding the performance loss for those workflows.
was:
In pre-ACID days, users perform operations such as INSERT with either
ZooKeeperHiveLockManager or no lock manager at all. If their workflow is
designed to take advantage of no locking and they take care of the control of
concurrency, this works well with good performance.
With ACID, if users enable transactions (i.e. using DbTxnManager &
DbLockManager), then for all the operations, different types of locks will be
acquired accordingly by DbLockManager, even for non-ACID resources. This may
impact the performance of some workflows designed for pre-ACID use cases.
A viable solution would be to differentiate the locking mode for ACID and
non-ACID resources, so that DbLockManager will continue its current behavior
for ACID tables, but will be able to acquire a less strict lock type for
non-ACID resources, thus avoiding the performance loss for those workflows.
> Ensure DbLockManager backward compatibility for non-ACID resources
> ------------------------------------------------------------------
>
> Key: HIVE-15774
> URL: https://issues.apache.org/jira/browse/HIVE-15774
> Project: Hive
> Issue Type: Bug
> Components: Hive, Transactions
> Reporter: Wei Zheng
> Assignee: Wei Zheng
>
> In pre-ACID days, users perform operations such as INSERT with either
> ZooKeeperHiveLockManager or no lock manager at all. If their workflow is
> designed to take advantage of no locking and they take care of the control of
> concurrency, this works well with good performance.
> With ACID, if users enable transactions (i.e. using DbTxnManager &
> DbLockManager), then for all the operations, different types of locks will be
> acquired accordingly by DbLockManager, even for non-ACID resources. This may
> impact the performance of some workflows designed for pre-ACID use cases.
> A viable solution would be to differentiate the locking mode for ACID and
> non-ACID resources, so that DbLockManager will continue its current behavior
> for ACID tables, but will be able to acquire a less strict lock type for
> non-ACID resources, thus avoiding the performance loss for those workflows.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)