Harshavardhana
77a192a7b5
Implement CopyObjectPart API ( #3663 )
...
This API is implemented to allow copying data from an
existing source object to an ongoing multipart operation
http://docs.aws.amazon.com/AmazonS3/latest/API/mpUploadUploadPartCopy.html
Fixes #3662
8 years ago
Harshavardhana
62f8343879
Add constants for commonly used values. ( #3588 )
...
This is a consolidation effort, avoiding usage
of naked strings in codebase. Whenever possible
use constants which can be repurposed elsewhere.
This also fixes `goconst ./...` reported issues.
8 years ago
Harshavardhana
98a6a2bcab
obj: Return objectInfo for CompleteMultipartUpload(). ( #3587 )
...
This patch avoids doing GetObjectInfo() in similar way
how we did for PutOject().
8 years ago
Harshavardhana
1c699d8d3f
fs: Re-implement object layer to remember the fd ( #3509 )
...
This patch re-writes FS backend to support shared backend sharing locks for safe concurrent access across multiple servers.
8 years ago
Bala FA
825000bc34
Use humanize constants for KiB, MiB and GiB units. ( #3322 )
8 years ago
Bala FA
bef0a50bc1
Cleanup and fixes ( #3273 )
...
* newRequestID() (previously generateUploadID()) returns string than byte array.
* Remove unclear comments and added appropriate comments.
* SHA-256, MD5 Hash functions return Hex/Base64 encoded string than byte array.
* Remove duplicate MD5 hasher functions.
* Rename listObjectsValidateArgs() into validateListObjectsArgs()
* Remove repeated auth check code in all bucket request handlers.
* Remove abbreviated names in bucket-metadata
* Avoid nested if in bucketPolicyMatchStatement()
* Use ioutil.ReadFile() instead of os.Open() and ioutil.ReadAll()
* Set crossDomainXML as constant.
8 years ago
Harshavardhana
51d1e6f75b
Fix missing CompleteMultipartUpload Etag. ( #3227 )
...
Fixes #3224
8 years ago
Bala FA
36639b65a9
rename completeMultipartMD5() into getCompleteMultipartMD5(). ( #3051 )
8 years ago
Anis Elleuch
41f9ab1c69
Translate storage access denied error to S3 Access Denied response ( #3015 )
8 years ago
Krishna Srinivas
61a18ed48f
sha256: Verify sha256 along with md5sum, signature is verified on the request early. ( #2813 )
8 years ago
Harshavardhana
5ecba587f7
api: Relax object name validation. ( #2814 )
...
Fixes #2812
8 years ago
Anis Elleuch
b89a1cd482
tests: Implemented more tests for fs-v1*.go ( #2686 )
8 years ago
Karthic Rao
1ce339abeb
Fixing ineffssaign errors ( #2608 )
8 years ago
Krishna Srinivas
9358ee011b
logging: Print stack trace in case of errors.
...
fixes #1827
8 years ago
Harshavardhana
bccf549463
server: Move all the top level files into cmd folder. ( #2490 )
...
This change brings a change which was done for the 'mc'
package to allow for clean repo and have a cleaner
github drop in experience.
8 years ago
Harshavardhana
76d56c6ff2
typo: Fix typos across the codebase. ( #2442 )
8 years ago
Harshavardhana
2f7358a8a6
XL: erasure Index should have its corresponding distribution order. ( #2300 )
8 years ago
karthic rao
0eaf684777
Remove consuming benchmarks, clean up closures, correct Get and PutObject Parallel benchmarks ( #2258 )
8 years ago
Harshavardhana
cef26fd6ea
XL: Refactor usage of reduceErrs and consistent behavior. ( #2240 )
...
This refactor is also needed in lieu of our quorum
requirement change for the newly understood logic behind
klauspost/reedsolom implementation.
8 years ago
Krishnan Parthasarathi
5cc9e4e214
fs/XL: Return IncompleteBody{} error for short writes ( #2228 )
8 years ago
karthic rao
3341fe9b28
organizing the benchmarks in the right test files ( #2154 )
9 years ago
karthic rao
2c837128ef
Object layer tests revamp for individual execution ( #2134 )
9 years ago
Harshavardhana
8a028a9efb
handler/PUT: Handle signature verification through a custom reader. ( #2066 )
...
Change brings in a new signVerifyReader which provides a io.Reader
compatible reader, additionally implements Verify() function.
Verify() function validates the signature present in the incoming
request. This approach is choosen to avoid complexities involved
in using io.Pipe().
Thanks to Krishna for his inputs on this.
Fixes #2058
Fixes #2054
Fixes #2087
9 years ago
Harshavardhana
ae936a0147
XL: Relax write quorum further to N/2 + 1. ( #2018 )
...
This changes behavior in some parts of the code
as well address it.
Fixes #2016
9 years ago
Krishnan Parthasarathi
b6b9e88e47
Added unit-tests for treeWalkPool ( #1969 )
...
* Added unit-tests for treeWalkPool
* Added unit tests for tree-walk-fs
* Added period at the end of all comments.
* FS/XL: Unified tree walk tests for both backends
* Added disk failure related tests for treewalk
Replaced removeRandomDisks with removeDiskN. There is no need to
randomize disks that fail while the distribution of chunks in XL during
erasure coding data is random.
9 years ago
Harshavardhana
748dc80047
API: add writePartTooSmallErrorResponse to extend standard error responses. ( #2005 )
...
This function is added to extend the standard error responses.
Which is needed in some cases for example CompleteMultipartUpload
should respond with ErrPartTooSmall error when parts uploaded are
lesser than 5MB (i.e minimum allowed size per part).
Fixes #1536
9 years ago
karthic rao
76f6533f8d
Adding detailed comments for server_xl_test. ( #2011 )
9 years ago
Harshavardhana
2e1f66c37d
XL: Handle quorum situations properly for write operations. ( #1986 )
...
Adds two test cases one for
- PutObject when write quorum is not available.
- PutObjectPart when write quorum is not available.
Fixes #1951
9 years ago
karthic rao
276282957e
Test for Complete Multipart Upload. ( #1888 )
9 years ago
Harshavardhana
1cf1532ca3
XL: Implement ListObjects channel and pool management.
9 years ago
karthic rao
ffc2b3c304
Test for ListObjectParts. ( #1802 )
9 years ago
Harshavardhana
feb337098d
XL: bring in new storage API. ( #1780 )
...
Fixes #1771
9 years ago
Krishna Srinivas
3487b3c095
Multipart: Disable FS tests and certain test cases for list-incomplete-uploads.
9 years ago
Karthic Rao
1f51af6f37
Listmultipart tests.
9 years ago
Harshavardhana
7d6ed50fc2
objects: Save all the incoming metadata properly. ( #1688 )
...
For both multipart and single put operation
9 years ago
Harshavardhana
a56d5ef415
xl/fs: isFunctions should only return boolean. ( #1525 )
...
log the unrecognize errors.
9 years ago
karthic rao
20ca65c793
Cleanup: mispell fixes
9 years ago
karthic rao
0b4bbe6d9e
Adding XL Object layer validation for existing unit tests of single node ( #1499 )
...
object layer.
Adding isBucketExist check for GetObjectInfo in the XL layer.
9 years ago
Harshavardhana
4e34e03dd4
xl/fs: Split object layer into interface. ( #1415 )
9 years ago
karthic rao
1813e9c070
Cleanup - Comments and readability fixes ( #1386 )
9 years ago
Harshavardhana
bf8a9702a4
tests: Fix a bug in TestObjectAPIIsUploadIDExists. ( #1375 )
...
The following code crashes when upload ID does not
exist, since we are setting err == nil when we find
err == errFileNotFound.
```
if e == nil {
t.Fatal(e.Error())
```
Fix it.
9 years ago
karthic rao
6e372f83b4
Tests: object api multipart tests and bug fixes.
9 years ago