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.

        Attachments

          Activity

            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