HADOOP-14609. NPE in AzureNativeFileSystemStore.checkContainer() if StorageException lacks an error code. Contributed by Steve Loughran
This commit is contained in:
parent
e9d8bdfdf5
commit
990aa34de2
|
@ -1194,8 +1194,8 @@ public class AzureNativeFileSystemStore implements NativeFileSystemStore {
|
|||
container.downloadAttributes(getInstrumentedContext());
|
||||
currentKnownContainerState = ContainerState.Unknown;
|
||||
} catch (StorageException ex) {
|
||||
if (ex.getErrorCode().equals(
|
||||
StorageErrorCode.RESOURCE_NOT_FOUND.toString())) {
|
||||
if (StorageErrorCode.RESOURCE_NOT_FOUND.toString()
|
||||
.equals(ex.getErrorCode())) {
|
||||
currentKnownContainerState = ContainerState.DoesntExist;
|
||||
} else {
|
||||
throw ex;
|
||||
|
@ -1596,7 +1596,7 @@ public class AzureNativeFileSystemStore implements NativeFileSystemStore {
|
|||
if (t != null && t instanceof StorageException) {
|
||||
StorageException se = (StorageException) t;
|
||||
// If we got this exception, the blob should have already been created
|
||||
if (!se.getErrorCode().equals("LeaseIdMissing")) {
|
||||
if (!"LeaseIdMissing".equals(se.getErrorCode())) {
|
||||
throw new AzureException(e);
|
||||
}
|
||||
} else {
|
||||
|
@ -2427,7 +2427,7 @@ public class AzureNativeFileSystemStore implements NativeFileSystemStore {
|
|||
// 2. It got there after one-or-more retries THEN
|
||||
// we swallow the exception.
|
||||
if (e.getErrorCode() != null &&
|
||||
e.getErrorCode().equals("BlobNotFound") &&
|
||||
"BlobNotFound".equals(e.getErrorCode()) &&
|
||||
operationContext.getRequestResults().size() > 1 &&
|
||||
operationContext.getRequestResults().get(0).getException() != null) {
|
||||
LOG.debug("Swallowing delete exception on retry: {}", e.getMessage());
|
||||
|
@ -2478,7 +2478,7 @@ public class AzureNativeFileSystemStore implements NativeFileSystemStore {
|
|||
Throwable t = e.getCause();
|
||||
if(t != null && t instanceof StorageException) {
|
||||
StorageException se = (StorageException) t;
|
||||
if(se.getErrorCode().equals(("LeaseIdMissing"))){
|
||||
if ("LeaseIdMissing".equals(se.getErrorCode())){
|
||||
SelfRenewingLease lease = null;
|
||||
try {
|
||||
lease = acquireLease(key);
|
||||
|
|
|
@ -82,7 +82,7 @@ public class SelfRenewingLease {
|
|||
// Throw again if we don't want to keep waiting.
|
||||
// We expect it to be that the lease is already present,
|
||||
// or in some cases that the blob does not exist.
|
||||
if (!e.getErrorCode().equals("LeaseAlreadyPresent")) {
|
||||
if (!"LeaseAlreadyPresent".equals(e.getErrorCode())) {
|
||||
LOG.info(
|
||||
"Caught exception when trying to get lease on blob "
|
||||
+ blobWrapper.getUri().toString() + ". " + e.getMessage());
|
||||
|
@ -119,7 +119,7 @@ public class SelfRenewingLease {
|
|||
try {
|
||||
blobWrapper.getBlob().releaseLease(accessCondition);
|
||||
} catch (StorageException e) {
|
||||
if (e.getErrorCode().equals("BlobNotFound")) {
|
||||
if ("BlobNotFound".equals(e.getErrorCode())) {
|
||||
|
||||
// Don't do anything -- it's okay to free a lease
|
||||
// on a deleted file. The delete freed the lease
|
||||
|
|
|
@ -20,9 +20,9 @@ package org.apache.hadoop.fs.azure;
|
|||
|
||||
import static org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.KEY_CHECK_BLOCK_MD5;
|
||||
import static org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.KEY_STORE_BLOB_MD5;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.junit.Assume.assumeNotNull;
|
||||
|
||||
|
@ -130,8 +130,8 @@ public class TestBlobDataValidation {
|
|||
}
|
||||
StorageException cause = (StorageException)ex.getCause();
|
||||
assertNotNull(cause);
|
||||
assertTrue("Unexpected cause: " + cause,
|
||||
cause.getErrorCode().equals(StorageErrorCodeStrings.INVALID_MD5));
|
||||
assertEquals("Unexpected cause: " + cause,
|
||||
StorageErrorCodeStrings.INVALID_MD5, cause.getErrorCode());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue