Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-2140

Race conditions between client operations and upgrade

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Not A Problem
    • None
    • None
    • None
    • None

    Description

      While the master is upgrading, it also has a thread that is responding to client requests. Since the upgrade renames tables and puts them in namespaces, there is a short period of time where table existence checks that rely on the new zookeeper schema for tables are failing to provide the correct answer.

      Example: when the tracer starts, it tries to create a "trace" table, if it doesn't exist. The existence check returns false, so it creates a new trace table in the default namespace, even though there exists an old one that has not yet been moved into the default namespace during the upgrade. This results in two tables with the same name.

      An easy solution would be to fail to respond to client requests until after the upgrade is complete. (eg. wait to start up the MasterClientServiceHandler thread).

      Attachments

        Issue Links

          Activity

            People

              ctubbsii Christopher Tubbs
              ctubbsii Christopher Tubbs
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: