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

Ensure DbLockManager backward compatibility for non-ACID resources

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.2.0
    • Hive, Transactions
    • None

    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

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

            Dates

              Created:
              Updated:
              Resolved: