Skip to content

Commit

Permalink
Fix RequestIdentifier NPE in endpoints testing
Browse files Browse the repository at this point in the history
  • Loading branch information
peterxcli committed Jan 20, 2025
1 parent ef3688d commit 761bcdd
Show file tree
Hide file tree
Showing 23 changed files with 86 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import org.apache.hadoop.ozone.OzoneConsts;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;

Expand Down Expand Up @@ -58,6 +59,7 @@ public void testAbortMultipartUpload() throws Exception {
rest.setHeaders(headers);
rest.setClient(client);
rest.setOzoneConfiguration(new OzoneConfiguration());
rest.setRequestIdentifier(new RequestIdentifier());

Response response = rest.initializeMultipartUpload(bucket, key);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.client.OzoneVolume;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.security.acl.IAccessAuthorizer;

Expand Down Expand Up @@ -73,6 +74,7 @@ public void setup() throws IOException {

bucketEndpoint = new BucketEndpoint();
bucketEndpoint.setClient(client);
bucketEndpoint.setRequestIdentifier(new RequestIdentifier());
}

@AfterEach
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.apache.hadoop.ozone.client.ObjectStoreStub;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;

Expand Down Expand Up @@ -59,6 +60,7 @@ public void setup() throws Exception {
// Create HeadBucket and setClient to OzoneClientStub
bucketEndpoint = new BucketEndpoint();
bucketEndpoint.setClient(clientStub);
bucketEndpoint.setRequestIdentifier(new RequestIdentifier());


}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import org.apache.hadoop.ozone.OzoneConsts;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

import static java.net.HttpURLConnection.HTTP_NOT_FOUND;
Expand All @@ -51,6 +52,7 @@ public void setup() throws Exception {
// Create HeadBucket and setClient to OzoneClientStub
bucketEndpoint = new BucketEndpoint();
bucketEndpoint.setClient(clientStub);
bucketEndpoint.setRequestIdentifier(new RequestIdentifier());
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.apache.hadoop.ozone.client.OzoneBucket;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.commontypes.EncodingTypeObject;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;
Expand Down Expand Up @@ -54,6 +55,7 @@ public void listRoot() throws OS3Exception, IOException {
OzoneClient client = createClientWithKeys("file1", "dir1/file2");

getBucket.setClient(client);
getBucket.setRequestIdentifier(new RequestIdentifier());

ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100, "",
Expand All @@ -78,6 +80,7 @@ public void listDir() throws OS3Exception, IOException {
OzoneClient client = createClientWithKeys("dir1/file2", "dir1/dir2/file2");

getBucket.setClient(client);
getBucket.setRequestIdentifier(new RequestIdentifier());

ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100,
Expand All @@ -101,7 +104,7 @@ public void listSubDir() throws OS3Exception, IOException {
"dir1bha/file2");

getBucket.setClient(ozoneClient);

getBucket.setRequestIdentifier(new RequestIdentifier());
ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket
.get("b1", "/", null, null, 100, "dir1/", null,
Expand Down Expand Up @@ -138,6 +141,7 @@ public void listObjectOwner() throws OS3Exception, IOException {
bucket.createKey("key2", 0).close();

getBucket.setClient(client);
getBucket.setRequestIdentifier(new RequestIdentifier());
ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100,
"key", null, null, null, null, null).getEntity();
Expand All @@ -160,6 +164,7 @@ public void listWithPrefixAndDelimiter() throws OS3Exception, IOException {
"dir1bha/file2", "file2");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100,
Expand All @@ -179,6 +184,7 @@ public void listWithPrefixAndDelimiter1() throws OS3Exception, IOException {
"dir1bha/file2", "file2");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100,
Expand All @@ -200,7 +206,7 @@ public void listWithPrefixAndDelimiter2() throws OS3Exception, IOException {
"dir1bha/file2", "file2");

getBucket.setClient(ozoneClient);

getBucket.setRequestIdentifier(new RequestIdentifier());
ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "/", null, null, 100, "dir1bh",
null, "dir1/dir2/file2", null, null, null).getEntity();
Expand All @@ -219,7 +225,7 @@ public void listWithPrefixAndEmptyStrDelimiter()
"dir1/dir2/file2");

getBucket.setClient(ozoneClient);

getBucket.setRequestIdentifier(new RequestIdentifier());
// Should behave the same if delimiter is null
ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", "", null, null, 100, "dir1/",
Expand Down Expand Up @@ -248,7 +254,7 @@ public void listWithContinuationToken() throws OS3Exception, IOException {
"dir1bha/file2", "file2");

getBucket.setClient(ozoneClient);

getBucket.setRequestIdentifier(new RequestIdentifier());
int maxKeys = 2;
// As we have 5 keys, with max keys 2 we should call list 3 times.

Expand Down Expand Up @@ -299,6 +305,7 @@ public void listWithContinuationTokenDirBreak()
"test/file8");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

int maxKeys = 2;

Expand Down Expand Up @@ -342,6 +349,7 @@ public void listWithContinuationToken1() throws OS3Exception, IOException {
"dir1bha/file1", "dir0/file1", "dir2/file1");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

int maxKeys = 2;
// As we have 5 keys, with max keys 2 we should call list 3 times.
Expand Down Expand Up @@ -383,6 +391,7 @@ public void listWithContinuationTokenFail() throws IOException {
"dir1bha/file2", "dir1", "dir2", "dir3");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

OS3Exception e = assertThrows(OS3Exception.class, () -> getBucket.get("b1",
"/", null, null, 2, "dir", "random", null, null, null, null)
Expand All @@ -401,6 +410,7 @@ public void testStartAfter() throws IOException, OS3Exception {
"dir1bha/file1", "dir0/file1", "dir2/file1");

getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

ListObjectResponse getBucketResponse =
(ListObjectResponse) getBucket.get("b1", null, null, null, 1000,
Expand Down Expand Up @@ -460,6 +470,7 @@ public void testEncodingType() throws IOException, OS3Exception {
OzoneClient ozoneClient =
createClientWithKeys("data=1970", "data==1970");
getBucket.setClient(ozoneClient);
getBucket.setRequestIdentifier(new RequestIdentifier());

String delimiter = "=";
String prefix = "data=";
Expand Down Expand Up @@ -508,7 +519,7 @@ public void testEncodingTypeException() throws IOException {
OzoneClient client = new OzoneClientStub();
client.getObjectStore().createS3Bucket("b1");
getBucket.setClient(client);

getBucket.setRequestIdentifier(new RequestIdentifier());
OS3Exception e = assertThrows(OS3Exception.class, () -> getBucket.get(
"b1", null, "unSupportType", null, 1000, null,
null, null, null, null, null).getEntity());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import org.apache.hadoop.ozone.OzoneConsts;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

import static java.net.HttpURLConnection.HTTP_CONFLICT;
Expand Down Expand Up @@ -58,6 +59,7 @@ public void setup() throws Exception {
// Create HeadBucket and setClient to OzoneClientStub
bucketEndpoint = new BucketEndpoint();
bucketEndpoint.setClient(clientStub);
bucketEndpoint.setRequestIdentifier(new RequestIdentifier());
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
import org.apache.hadoop.ozone.OzoneConsts;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;

import jakarta.annotation.Nonnull;
import org.junit.jupiter.api.Test;

Expand Down Expand Up @@ -99,6 +101,7 @@ private ObjectEndpoint getObjectEndpoint(OzoneClient client,
rest.setHeaders(headers);
rest.setClient(client);
rest.setOzoneConfiguration(new OzoneConfiguration());
rest.setRequestIdentifier(new RequestIdentifier());
return rest;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@
import java.util.List;
import java.util.Map;
import java.util.UUID;

import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.endpoint.CompleteMultipartUploadRequest.Part;

import static java.nio.charset.StandardCharsets.UTF_8;
Expand Down Expand Up @@ -74,6 +76,7 @@ public static void setUp() throws Exception {
REST.setHeaders(HEADERS);
REST.setClient(CLIENT);
REST.setOzoneConfiguration(new OzoneConfiguration());
REST.setRequestIdentifier(new RequestIdentifier());
}

private String initiateMultipartUpload(String key) throws IOException,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.client.OzoneMultipartUploadPartListParts;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.endpoint.CompleteMultipartUploadRequest.Part;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;
Expand Down Expand Up @@ -127,6 +128,7 @@ public static void setUp() throws Exception {
REST.setHeaders(headers);
REST.setClient(CLIENT);
REST.setOzoneConfiguration(new OzoneConfiguration());
REST.setRequestIdentifier(new RequestIdentifier());
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import org.apache.hadoop.ozone.client.OzoneBucket;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

import org.junit.jupiter.api.Test;
Expand All @@ -48,6 +49,7 @@ public void delete() throws IOException, OS3Exception {

ObjectEndpoint rest = new ObjectEndpoint();
rest.setClient(client);
rest.setRequestIdentifier(new RequestIdentifier());
rest.setOzoneConfiguration(new OzoneConfiguration());

//WHEN
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.client.io.OzoneInputStream;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

import org.apache.commons.io.IOUtils;
Expand Down Expand Up @@ -92,6 +93,7 @@ public void init() throws OS3Exception, IOException {
rest.setOzoneConfiguration(new OzoneConfiguration());
headers = mock(HttpHeaders.class);
rest.setHeaders(headers);
rest.setRequestIdentifier(new RequestIdentifier());

ByteArrayInputStream body = new ByteArrayInputStream(CONTENT.getBytes(UTF_8));
rest.put(BUCKET_NAME, KEY_NAME, CONTENT.length(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.client.io.OzoneOutputStream;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

import static java.net.HttpURLConnection.HTTP_NOT_FOUND;
Expand Down Expand Up @@ -66,6 +67,7 @@ public void setup() throws IOException {
// Create HeadBucket and setClient to OzoneClientStub
keyEndpoint = new ObjectEndpoint();
keyEndpoint.setClient(clientStub);
keyEndpoint.setRequestIdentifier(new RequestIdentifier());
keyEndpoint.setOzoneConfiguration(new OzoneConfiguration());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.client.OzoneKey;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.endpoint.MultiDeleteRequest.DeleteObject;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;

Expand All @@ -51,6 +52,7 @@ public void delete() throws IOException, OS3Exception, JAXBException {

BucketEndpoint rest = new BucketEndpoint();
rest.setClient(client);
rest.setRequestIdentifier(new RequestIdentifier());

MultiDeleteRequest mdr = new MultiDeleteRequest();
mdr.getObjects().add(new DeleteObject("key1"));
Expand Down Expand Up @@ -82,6 +84,7 @@ public void deleteQuiet() throws IOException, OS3Exception, JAXBException {

BucketEndpoint rest = new BucketEndpoint();
rest.setClient(client);
rest.setRequestIdentifier(new RequestIdentifier());

MultiDeleteRequest mdr = new MultiDeleteRequest();
mdr.setQuiet(true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
import org.apache.hadoop.ozone.client.OzoneVolume;
import org.apache.hadoop.ozone.client.io.OzoneInputStream;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.apache.hadoop.ozone.s3.exception.S3ErrorTable;
import org.apache.http.HttpStatus;
Expand Down Expand Up @@ -134,6 +135,7 @@ void setup() throws IOException {
objectEndpoint = spy(new ObjectEndpoint());
objectEndpoint.setClient(clientStub);
objectEndpoint.setOzoneConfiguration(config);
objectEndpoint.setRequestIdentifier(new RequestIdentifier());

headers = mock(HttpHeaders.class);
objectEndpoint.setHeaders(headers);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import org.apache.hadoop.ozone.client.OzoneVolume;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
Expand Down Expand Up @@ -77,6 +78,7 @@ public void init() throws OS3Exception, IOException {
rest = new ObjectEndpoint();
rest.setClient(client);
rest.setOzoneConfiguration(config);
rest.setRequestIdentifier(new RequestIdentifier());
headers = Mockito.mock(HttpHeaders.class);
rest.setHeaders(headers);
body = new ByteArrayInputStream(CONTENT.getBytes(UTF_8));
Expand Down Expand Up @@ -137,7 +139,7 @@ public void testDeleteObjectTaggingNotImplemented() throws Exception {

ObjectEndpoint endpoint = new ObjectEndpoint();
endpoint.setClient(mockClient);

endpoint.setRequestIdentifier(new RequestIdentifier());
doThrow(new OMException("DeleteObjectTagging is not currently supported for FSO directory",
ResultCodes.NOT_SUPPORTED_OPERATION)).when(mockBucket).deleteObjectTagging("dir/");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.ozone.client.OzoneClient;
import org.apache.hadoop.ozone.client.OzoneClientStub;
import org.apache.hadoop.ozone.s3.RequestIdentifier;
import org.apache.hadoop.ozone.s3.endpoint.S3Tagging.Tag;
import org.apache.hadoop.ozone.s3.exception.OS3Exception;
import org.junit.jupiter.api.BeforeEach;
Expand Down Expand Up @@ -64,6 +65,7 @@ public void init() throws OS3Exception, IOException {
rest = new ObjectEndpoint();
rest.setClient(client);
rest.setOzoneConfiguration(config);
rest.setRequestIdentifier(new RequestIdentifier());
HttpHeaders headers = Mockito.mock(HttpHeaders.class);
rest.setHeaders(headers);
ByteArrayInputStream body = new ByteArrayInputStream(CONTENT.getBytes(UTF_8));
Expand Down
Loading

0 comments on commit 761bcdd

Please sign in to comment.