Previously with GCS and its maximum 32 parts, the slicing algorithm
would sliced 3.2 GB blobs into (31) 32 MB parts and (1) 2.3 GB part.
With this algorithm it creates (31) 100 MB parts and (1) smaller part.
MultipartUploadSlicingAlgorithm creates multiple equal-sized parts and
a remaining amount. BaseBlobStore.putMultipartBlob used this
interface incorrectly, which could create more parts than intended
since the remaining size could be larger than the part size. This
manifested with Google Cloud Storage which only allows 32 parts.
Previously this method only reported whether it created a container or
not and callers could not determine whether there was an error or if
the container already existed. References gaul/s3proxy#122.
Previously read returned a value between -128 and 127. -1 indicates
end of stream, causing issues for callers. Instead return values
between 0 and 255 as intended.
HTTP headers are case insensitive by nature (see RFC 2616). When addUserMetadataTo check if this is indeed a user metadata header, it must properly ignore case.
The fix make sure that both metadataPrefix and the header key are compared with toLowerCase().
This solves issue with minio metadata read
minor code improvement
Syntax fix with coding standards
- added more test coverage to NetworkApiMockTest class
- minor clean up
- minor code improvement
Previously S3, Swift, and local blobstores threw a generic
IllegalArgumentException for this uncommon error. Instead
consistently throw HttpResponseException.
This partially reverts commit
e446b5b8b4. AT&T Synaptic returns a
bogus error on with x-emc-force-overwrite:
HTTP 400, code=1012, message=There was a mismatch between the object
size and the specified extent size.
CentOS’ officially-supported AMIs are hosted on the AWS Marketplace.
This adds support for those images, recognising the AMI naming
convention and ensuring the OS metadata is parsed correctly and the
correct SSH login name is used.
There is no change to the default jclouds configuration and the
official CentOS images will not be detected by default. To use these
images, you must alter the ami-query properties to include searching
the “AWS Marketplace”, which has an owner ID of 679593333241. You must
also manually log on to the AWS Marketplace, select your chosen CentOS
image, and “subscribe” to it (you can do this by proceeding as if to
launch an image, but stopping after you have agreed to the subscription
and before launching).
Modifies OsFamily to have two tiers of known OSes, so that generic OS
names such as “Linux” cannot end up taking priority over more specific
OS names. This fixes the case where “CentOS Linux” was detected as LINUX
and not CENTOS.