HBase
  1. HBase
  2. HBASE-5373

Table level lock to prevent the race of multiple table level operation

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      A table level lock can guarantee that only one table operation would happen at one time for each table. The master should require and release these table locks correctly during the failover time. One proposal is to keep track of the lock and its corresponding operation in the zookeeper. If there is a master failover, the secondary should have a way to check whether these operations are succeeded nor not before releasing the lock.

        Activity

        Hide
        Todd Lipcon added a comment -

        Over in Accumulo land they have a neat framework called "FATE" (FAult Tolerant Execution or something?) Basically, they put up a znode in ZK for any master-coordinated action, and it acts as an "intent log" of the idempotent steps. If there's a failover, the new master will finish off any already-running FATE transaction.

        Show
        Todd Lipcon added a comment - Over in Accumulo land they have a neat framework called "FATE" (FAult Tolerant Execution or something?) Basically, they put up a znode in ZK for any master-coordinated action, and it acts as an "intent log" of the idempotent steps. If there's a failover, the new master will finish off any already-running FATE transaction.
        Hide
        Liyin Tang added a comment -

        Cool! Sounds like what I try to do here. I will take a look over Accumulo.

        Show
        Liyin Tang added a comment - Cool! Sounds like what I try to do here. I will take a look over Accumulo.
        Hide
        stack added a comment -

        Resolving as duplicate. Liyin, you did it first so I should be resolving HBASE-5494 as a duplicate of this but HBASE-5494 has a little bit more going on. Hope you don't mind. Are you working on this?

        Show
        stack added a comment - Resolving as duplicate. Liyin, you did it first so I should be resolving HBASE-5494 as a duplicate of this but HBASE-5494 has a little bit more going on. Hope you don't mind. Are you working on this?
        Hide
        Liyin Tang added a comment -

        Sure. I am glad that Alex is working this jira right now and I will help on the code-review.

        Show
        Liyin Tang added a comment - Sure. I am glad that Alex is working this jira right now and I will help on the code-review.

          People

          • Assignee:
            Liyin Tang
            Reporter:
            Liyin Tang
          • Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development