boolean hasFailed = Dispatcher.waitForMoveCompletion(storages.targets .values()); Dispatcher.checkForBlockPinningFailures(excludedPinnedBlocks,
/** * @return whether there is still remaining migration work for the next * round */ private boolean processNamespace() throws IOException { getSnapshottableDirs(); boolean hasRemaining = false; for (Path target : targetPaths) { hasRemaining |= processPath(target.toUri().getPath()); } // wait for pending move to finish and retry the failed migration boolean hasFailed = Dispatcher.waitForMoveCompletion(storages.targets .values()); if (hasFailed) { if (retryCount.get() == retryMaxAttempts) { throw new IOException("Failed to move some block's after " + retryMaxAttempts + " retries."); } else { retryCount.incrementAndGet(); } } else { // Reset retry count if no failure. retryCount.set(0); } hasRemaining |= hasFailed; return hasRemaining; }
/** * @return whether there is still remaining migration work for the next * round */ private boolean processNamespace() throws IOException { getSnapshottableDirs(); boolean hasRemaining = false; for (Path target : targetPaths) { hasRemaining |= processPath(target.toUri().getPath()); } // wait for pending move to finish and retry the failed migration boolean hasFailed = Dispatcher.waitForMoveCompletion(storages.targets .values()); if (hasFailed) { if (retryCount.get() == retryMaxAttempts) { throw new IOException("Failed to move some block's after " + retryMaxAttempts + " retries."); } else { retryCount.incrementAndGet(); } } else { // Reset retry count if no failure. retryCount.set(0); } hasRemaining |= hasFailed; return hasRemaining; }