Uploaded image for project: 'Apache Storm'
  1. Apache Storm
  2. STORM-2386

Fail-back Blob deletion also fails in BlobSynchronizer.syncBlobs

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.0, 1.1.0, 1.0.3
    • Fix Version/s: 2.0.0, 1.1.0, 1.0.4
    • Component/s: storm-core
    • Labels:
      None

      Description

      This is a bug introduced from STORM-2321.

                  for (String key : keySetToDownload) {
                      try {
                          Set<NimbusInfo> nimbusInfoSet = BlobStoreUtils.getNimbodesWithLatestSequenceNumberOfBlob(zkClient, key);
                          if (BlobStoreUtils.downloadMissingBlob(conf, blobStore, key, nimbusInfoSet)) {
                              BlobStoreUtils.createStateInZookeeper(conf, key, nimbusInfo);
                          }
                      } catch (KeyNotFoundException e) {
                          LOG.debug("Detected deletion for the key {} - deleting the blob instead", key);
                          // race condition with a delete, delete the blob in key instead
                          blobStore.deleteBlob(key, BlobStoreUtils.getNimbusSubject());
                      }
                  }
      

      'keySetToDownload' are keys which exist in Zookeeper, and do not exist in local. So deleting blob in local doesn't make sense. (Seems like I was confused at that time.)

      if downloading throws KeyNotFoundException, it means that the blob is not available neither Zookeeper nor local, so just skipping would be OK.

        Issue Links

          Activity

          There are no comments yet on this issue.

            People

            • Assignee:
              kabhwan Jungtaek Lim
              Reporter:
              kabhwan Jungtaek Lim
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 1h 10m
                1h 10m

                  Development