elek opened a new pull request #549: HDDS-1213. Support plain text S3 MPU initialization request URL: https://github.com/apache/hadoop/pull/549 S3 Multi-Part-Upload (MPU) is implemented recently in the Ozone s3 gateway. We have extensive testing with using 'aws s3api' application which is passed. But it turned out that the more simple `aws s3 cp` command fails with _405 Media type not supported error_ message The root cause of this issue is the JAXRS implementation of the multipart upload method: {code} @POST @Produces(MediaType.APPLICATION_XML) public Response multipartUpload( @PathParam("bucket") String bucket, @PathParam("path") String key, @QueryParam("uploads") String uploads, @QueryParam("uploadId") @DefaultValue("") String uploadID, CompleteMultipartUploadRequest request) throws IOException, OS3Exception { if (!uploadID.equals("")) { //Complete Multipart upload request. return completeMultipartUpload(bucket, key, uploadID, request); } else { // Initiate Multipart upload request. return initiateMultipartUpload(bucket, key); } } {code} Here we have a CompleteMultipartUploadRequest parameter which is created by the JAXRS framework based on the media type and the request body. With _Content-Type: application/xml_ it's easy: the JAXRS framework uses the built-in JAXB serialization. But with plain/text content-type it's not possible as there is no serialization support for CompleteMultipartUploadRequest from plain/text. See: https://issues.apache.org/jira/browse/HDDS-1213
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
