Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-4130

Avoid server retries for mutable indexes

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.14.0, 5.0.0
    • Labels:
      None

      Description

      Had some discussions with James Taylor, Samarth Jain, and Vincent Poon, during which I suggested that we can possibly eliminate retry loops happening at the server that cause the handler threads to be stuck potentially for quite a while (at least multiple seconds to ride over common scenarios like splits).
      Instead we can do the retries at the Phoenix client that.

      So:

      1. The index updates are not retried on the server. (retries = 0)
      2. A failed index update would set the failed index timestamp but leave the index enabled.
      3. Now the handler thread is done, it throws an appropriate exception back to the client.
      4. The Phoenix client can now retry. When those retries fail the index is disabled (if the policy dictates that) and throw the exception back to its caller.

      So no more waiting is needed on the server, handler threads are freed immediately.

        Attachments

        1. PHOENIX-4130_5.x-HBase-2.0.v3.patch
          90 kB
          Vincent Poon
        2. PHOENIX-4130_5.x-HBase-2.0.v2.patch
          87 kB
          Vincent Poon
        3. PHOENIX-4130_5.x-HBase-2.0.patch
          86 kB
          Rajeshbabu Chintaguntla
        4. PHOENIX-4130.addendum.master.patch
          10 kB
          Vincent Poon
        5. PHOENIX-4130.v10.master.patch
          90 kB
          Vincent Poon
        6. PHOENIX-4130.v9.master.patch
          90 kB
          Vincent Poon
        7. PHOENIX-4130.v8.master.patch
          88 kB
          Vincent Poon
        8. PHOENIX-4130.v7.master.patch
          88 kB
          Vincent Poon
        9. PHOENIX-4130.v6.master.patch
          88 kB
          Vincent Poon
        10. PHOENIX-4130.v5.master.patch
          86 kB
          Vincent Poon
        11. PHOENIX-4130.v4.master.patch
          83 kB
          Vincent Poon
        12. PHOENIX-4130.v3.master.patch
          81 kB
          Vincent Poon
        13. PHOENIX-4130.v2.master.patch
          61 kB
          Vincent Poon
        14. PHOENIX-4130.v1.master.patch
          28 kB
          Vincent Poon

          Issue Links

            Activity

              People

              • Assignee:
                vincentpoon Vincent Poon
                Reporter:
                lhofhansl Lars Hofhansl
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: