Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-13345 S3Guard: Improved Consistency for S3A
  3. HADOOP-14215

DynamoDB client should waitForActive on existing tables

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • None
    • HADOOP-13345
    • fs/s3
    • None
    • Reviewed

    Description

      I saw a case where 2 separate applications tried to use the same non-pre-existing table with table.create = true at about the same time. One failed with a ResourceInUse exception. If a table does not exist, we attempt to create it and then wait for it to enter the active state. If another jumps in in the middle of that, the table may exist, thus bypassing our call to waitForActive(), and then try to use the table immediately.

      While we're at it, let's also make sure that the race condition where a table might get created between checking if it exists and attempting to create it is handled gracefully.

      Attachments

        1. HADOOP-14215-HADOOP-13345.000.patch
          4 kB
          Mingliang Liu
        2. HADOOP-14215-HADOOP-13345.001.patch
          6 kB
          Mingliang Liu
        3. HADOOP-14215-HADOOP-13345.002.patch
          11 kB
          Sean Mackrory

        Issue Links

          Activity

            People

              mackrorysd Sean Mackrory
              mackrorysd Sean Mackrory
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: