Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-15774

Ensure DbLockManager backward compatibility for non-ACID resources

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.2.0
    • Component/s: Hive, Transactions
    • Labels:
      None
    • Target Version/s:

      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.

        Attachments

        1. HIVE-15774.3.patch
          5 kB
          Wei Zheng
        2. HIVE-15774.2.patch
          5 kB
          Wei Zheng
        3. HIVE-15774.1.patch
          5 kB
          Wei Zheng

          Activity

            People

            • Assignee:
              wzheng Wei Zheng
              Reporter:
              wzheng Wei Zheng
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: