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

Acquire locks before generating valid transaction list for some operations

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0.0
    • 3.1.0, 4.0.0-alpha-1
    • Transactions
    • None

    Description

      To ensure correctness, in particular for operations that require exclusive (INSERT OVERWRITE) and semishared (UPDATE/DELETE) locks.

      This is a temporary fix till lock acquisition is moved before analyze in HIVE-18948.

      With this fix, system proceed as follows. The driver will acquire the snapshot, compile the query wrt that snapshot, and then, it will acquire locks. If snapshot is still valid, it will continue as usual. But if snapshot is not valid anymore, it will recompile the query.

      This is easier to implement than full solution described in HIVE-18948 because we do not need to move the logic to extract the read/write entities from a query before compilation (actually while parsing).

      Attachments

        1. HIVE-19382.01.patch
          19 kB
          jcamachorodriguez
        2. HIVE-19382.02.patch
          19 kB
          jcamachorodriguez
        3. HIVE-19382.03.patch
          19 kB
          jcamachorodriguez
        4. HIVE-19382.04.patch
          19 kB
          jcamachorodriguez
        5. HIVE-19382.05.patch
          16 kB
          jcamachorodriguez
        6. HIVE-19382.patch
          19 kB
          jcamachorodriguez

        Issue Links

          Activity

            People

              jcamacho Jesús Camacho Rodríguez
              jcamacho Jesús Camacho Rodríguez
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: