minio/cmd
Harshavardhana 12f67d47f1 Fix a possible race during PutObject() (#5376)
Under any concurrent removeObjects in progress
might have removed the parents of the same prefix
for which there is an ongoing putObject request.
An inconsistent situation may arise as explained
below even under sufficient locking.

PutObject is almost successful at the last stage when
a temporary file is renamed to its actual namespace
at `a/b/c/object1`. Concurrently a RemoveObject is
also in progress at the same prefix for an `a/b/c/object2`.

To create the object1 at location `a/b/c` PutObject has
to create all the parents recursively.

```
a/b/c - os.MkdirAll loops through has now created
        'a/' and 'b/' about to create 'c/'
a/b/c/object2 - at this point 'c/' and 'object2'
        are deleted about to delete b/
```

Now for os.MkdirAll loop the expected situation is
that top level parent 'a/b/' exists which it created
, such that it can create 'c/' - since removeObject
and putObject do not compete for lock due to holding
locks at different resources. removeObject proceeds
to delete parent 'b/' since 'c/' is not yet present,
once deleted 'os.MkdirAll' would receive an error as
syscall.ENOENT which would fail the putObject request.

This PR tries to address this issue by implementing
a safer/guarded approach where we would retry an operation
such as `os.MkdirAll` and `os.Rename` if both operations
observe syscall.ENOENT.

Fixes #5254
2018-01-13 22:43:02 +05:30
..
gateway Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
admin-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
admin-handlers_test.go Remove healing of incomplete multipart uploads (#5390) 2018-01-11 15:07:43 -08:00
admin-router.go Remove healing of incomplete multipart uploads (#5390) 2018-01-11 15:07:43 -08:00
admin-rpc-client.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
admin-rpc-client_test.go server: Fix CI build complaints (#4119) 2017-04-14 08:00:04 -07:00
admin-rpc-server.go ReInitDisk RPC handler should use retryStorage (#5310) 2017-12-21 12:28:01 +05:30
admin-rpc-server_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
api-datatypes.go
api-errors.go Update error response when heal is not implemented (#5383) 2018-01-11 10:21:41 -08:00
api-errors_test.go add SSE-C support for HEAD, GET, PUT (#4894) 2017-11-07 15:18:59 -08:00
api-headers.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
api-headers_test.go Add UTCNow() function. (#3931) 2017-03-18 11:28:41 -07:00
api-resources.go
api-resources_test.go
api-response-multipart.go
api-response.go Limit number of connections upto system maxlimit (#5109) 2017-12-20 13:30:14 +05:30
api-response_test.go api/PostPolicy: Allow location header fully qualified URL (#4926) 2017-09-24 16:43:21 -07:00
api-router.go Handle Path validation inside the PostPolicy handler (#5192) 2017-11-15 14:10:45 -08:00
auth-handler.go Allow x-amz-content-sha256 to be optional for PutObject() (#5340) 2018-01-09 12:49:50 +05:30
auth-handler_test.go Allow x-amz-content-sha256 to be optional for PutObject() (#5340) 2018-01-09 12:49:50 +05:30
auth-rpc-client.go [security] rpc: Do not transfer access/secret key. (#4857) 2017-09-19 12:37:56 -07:00
auth-rpc-client_test.go
auth-rpc-server.go [security] rpc: Do not transfer access/secret key. (#4857) 2017-09-19 12:37:56 -07:00
auth-rpc-server_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
benchmark-utils_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
browser-flag.go browser-flag: wrapped bool type denotes browser on/off flag. (#3963) 2017-03-26 12:00:27 -07:00
browser-flag_test.go browser-flag: wrapped bool type denotes browser on/off flag. (#3963) 2017-03-26 12:00:27 -07:00
browser-peer-rpc.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
browser-peer-rpc_test.go move credentials as separate package (#5115) 2017-10-31 11:54:32 -07:00
browser-rpc-router.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
bucket-handlers-listobjects.go Remove unnecessary errors printed on the console (#5386) 2018-01-11 11:42:05 -08:00
bucket-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
bucket-handlers_test.go move credentials as separate package (#5115) 2017-10-31 11:54:32 -07:00
bucket-metadata.go
bucket-notification-datatypes.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
bucket-notification-handlers.go Remove unnecessary errors printed on the console (#5386) 2018-01-11 11:42:05 -08:00
bucket-notification-handlers_test.go Fix ListenBucketNotification deadlock (#5028) 2017-11-16 10:56:06 -08:00
bucket-notification-utils.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
bucket-notification-utils_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
bucket-policy-handlers.go Remove unnecessary errors printed on the console (#5386) 2018-01-11 11:42:05 -08:00
bucket-policy-handlers_test.go move credentials as separate package (#5115) 2017-10-31 11:54:32 -07:00
bucket-policy-parser.go Support conditions for ListMultipartUploads and ListParts (#5130) 2017-11-02 11:39:48 -07:00
bucket-policy-parser_test.go Bucket policies should use minio-go/pkg/policy instead. (#5090) 2017-10-27 16:14:06 -07:00
bucket-policy.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
build-constants.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
certs.go add support for encrypted TLS private keys (#5308) 2018-01-05 13:18:08 +05:30
certs_test.go add support for encrypted TLS private keys (#5308) 2018-01-05 13:18:08 +05:30
common-main.go Save http trace to a file (#5300) 2018-01-05 11:24:31 -08:00
config-current.go Refactor storage class parsing for Gateway mode (#5331) 2018-01-08 22:26:13 -08:00
config-current_test.go Remove "logger" field from config.json (#5268) 2017-12-06 12:48:29 +05:30
config-dir.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
config-migrate.go Add x-amz-storage-class support (#5295) 2017-12-22 16:58:13 +05:30
config-migrate_test.go Remove "logger" field from config.json (#5268) 2017-12-06 12:48:29 +05:30
config-versions.go Add x-amz-storage-class support (#5295) 2017-12-22 16:58:13 +05:30
console-logger.go Refactor logger (#3924) 2017-03-23 16:36:00 -07:00
copy-part-range.go api: CopyObjectPart was copying wrong offsets due to shadowing. (#3838) 2017-03-03 16:32:04 -08:00
copy-part-range_test.go api: CopyObjectPart was copying wrong offsets due to shadowing. (#3838) 2017-03-03 16:32:04 -08:00
crossdomain-xml-handler.go
crossdomain-xml-handler_test.go
dynamic-timeouts.go Change average from int to int64 in order to support 32-bit systems. (#4921) 2017-09-14 10:23:23 -07:00
dynamic-timeouts_test.go Add support for timeouts for locks (#4377) 2017-08-31 14:43:59 -07:00
encryption-v1.go return AWS compliant error if SSE-C key is wrong (#5203) 2017-11-20 14:04:10 -08:00
encryption-v1_test.go replace SSE-C key derivation scheme (#5168) 2017-11-10 17:21:23 -08:00
endpoint.go Check if SSL is configured to validate input arguments (#5252) 2017-12-04 12:17:12 +05:30
endpoint_test.go S3 peers should be initialized properly (#5024) 2017-10-08 20:23:42 -07:00
erasure-createfile.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
erasure-createfile_test.go Automatically set goroutines based on shardSize (#5346) 2018-01-03 13:47:22 -08:00
erasure-healfile.go fix: Restore empty files when healing (#5257) 2017-12-22 14:57:57 -08:00
erasure-healfile_test.go Automatically set goroutines based on shardSize (#5346) 2018-01-03 13:47:22 -08:00
erasure-readfile.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
erasure-readfile_test.go Automatically set goroutines based on shardSize (#5346) 2018-01-03 13:47:22 -08:00
erasure-utils.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
erasure-utils_test.go erasure: simplify XL backend operations (#4649) (#4758) 2017-08-14 18:08:42 -07:00
erasure.go Automatically set goroutines based on shardSize (#5346) 2018-01-03 13:47:22 -08:00
erasure_test.go Automatically set goroutines based on shardSize (#5346) 2018-01-03 13:47:22 -08:00
event-notifier.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
event-notifier_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
fallocate.go
fallocate_linux.go
fallocate_linux_test.go
file-logger.go Refactor logger (#3924) 2017-03-23 16:36:00 -07:00
format-fs.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
format-fs_test.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
format-meta.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
format-xl.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
format-xl_test.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
fs-v1-background-append.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
fs-v1-helpers.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
fs-v1-helpers_test.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
fs-v1-metadata.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
fs-v1-metadata_test.go Simplify data verification with HashReader. (#5071) 2017-10-22 11:00:34 +05:30
fs-v1-multipart.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
fs-v1-multipart_test.go erasure: Support cleaning up of stale multipart objects (#5250) 2017-11-30 18:11:42 -08:00
fs-v1-rwpool.go fs: Convert repeated code in rwpool.Open() into a single function. (#4864) 2017-08-30 09:48:19 -07:00
fs-v1-rwpool_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
fs-v1.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
fs-v1_test.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
gateway-common.go Convert gateways into respective packages (#5200) 2017-12-05 17:58:09 -08:00
gateway-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
gateway-main.go Set maxResources appropriately for gateway like server (#5321) 2017-12-24 20:09:30 +05:30
gateway-main_test.go Convert gateways into respective packages (#5200) 2017-12-05 17:58:09 -08:00
gateway-router.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
gateway-startup-msg.go Honor browser enabled config value in startup message (#5313) 2018-01-04 11:00:52 +05:30
gateway-startup-msg_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
gateway-unsupported.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
generic-handlers.go Remove duplicate http constants (#5367) 2018-01-08 10:17:48 +05:30
generic-handlers_test.go replace SSE-C key derivation scheme (#5168) 2017-11-10 17:21:23 -08:00
globals.go Save http trace to a file (#5300) 2018-01-05 11:24:31 -08:00
handler-utils.go Save http trace to a file (#5300) 2018-01-05 11:24:31 -08:00
handler-utils_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
hasher.go
http-stats.go admin: ServerInfo() returns info for each node (#4150) 2017-04-21 07:15:53 -07:00
httprange.go
httprange_test.go
jwt.go Remove requirement for issued at JWT claims (#5364) 2018-01-10 10:34:00 -08:00
jwt_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
leak-detect_test.go Add UTCNow() function. (#3931) 2017-03-18 11:28:41 -07:00
lock-instrument.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
lock-instrument_test.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
lock-rpc-client.go
lock-rpc-client_test.go lock/rpc: change rpcPath to be called serviceEndpoint. (#4088) 2017-04-11 10:25:21 -07:00
lock-rpc-server-common.go Bypass network in lock requests to local server (#4465) 2017-06-05 12:25:04 -07:00
lock-rpc-server-common_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
lock-rpc-server.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
lock-rpc-server_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
lock-stat.go Add support for timeouts for locks (#4377) 2017-08-31 14:43:59 -07:00
lockinfo-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
lockinfo-handlers_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
logger.go Remove "logger" field from config.json (#5268) 2017-12-06 12:48:29 +05:30
logger_test.go Refactor logger (#3924) 2017-03-23 16:36:00 -07:00
main.go Help message should prioritize gateway after server (#5153) 2017-11-08 13:38:53 -08:00
namespace-lock.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
namespace-lock_test.go Add support for timeouts for locks (#4377) 2017-08-31 14:43:59 -07:00
naughty-disk_test.go remove ReadFileWithVerify from StorageAPI (#4947) 2017-09-25 11:32:56 -07:00
net-rpc-client.go
net.go api/PostPolicy: Allow location header fully qualified URL (#4926) 2017-09-24 16:43:21 -07:00
net_test.go tests: Remove dependency on check.v1 (#5034) 2017-10-10 02:14:42 -07:00
notifier-config.go [security] rpc: Do not transfer access/secret key. (#4857) 2017-09-19 12:37:56 -07:00
notifier-config_test.go config: setter/getter for Notifier and Logger into its own struct. (#3721) 2017-02-09 15:20:54 -08:00
notifiers.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notifiers_test.go
notify-amqp.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-amqp_test.go Implement proper reConnect logic for amqp notification target. (#4867) 2017-09-04 17:45:30 -07:00
notify-elasticsearch.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-kafka.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-listener.go
notify-mqtt.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-mysql.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-nats.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-postgresql.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-redis.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-webhook.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
notify-webhook_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
object-api-common.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
object-api-common_test.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
object-api-datatypes.go Update madmin package to return storage class parity (#5387) 2018-01-12 07:52:52 +05:30
object-api-errors.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-api-getobject_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-api-getobjectinfo_test.go Simplify data verification with HashReader. (#5071) 2017-10-22 11:00:34 +05:30
object-api-input-checks.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
object-api-interface.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-api-listobjects_test.go Simplify data verification with HashReader. (#5071) 2017-10-22 11:00:34 +05:30
object-api-multipart-common.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-api-multipart_test.go Add x-amz-storage-class support (#5295) 2017-12-22 16:58:13 +05:30
object-api-putobject_test.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
object-api-utils.go Fix storage class related issues (#5338) 2018-01-04 11:44:45 +05:30
object-api-utils_test.go Fix storage class related issues (#5338) 2018-01-04 11:44:45 +05:30
object-handlers-common.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object-handlers_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
object_api_suite_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
os-reliable.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
os-reliable_test.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
posix-dirent-fileno.go
posix-dirent-ino.go
posix-errors.go Fail to start server if detected cross-device mounts. (#4807) 2017-08-15 15:10:50 -07:00
posix-errors_test.go
posix-list-dir-nix.go Remove go1.9 specific code for windows (#5033) 2017-10-13 15:31:15 +05:30
posix-list-dir-others.go Remove go1.9 specific code for windows (#5033) 2017-10-13 15:31:15 +05:30
posix-list-dir_test.go all/windows: Be case in-sensitive about pattern matching. (#3682) 2017-02-03 23:27:50 -08:00
posix-utils_nix.go Remove go1.9 specific code for windows (#5033) 2017-10-13 15:31:15 +05:30
posix-utils_nix_test.go Remove go1.9 specific code for windows (#5033) 2017-10-13 15:31:15 +05:30
posix-utils_test.go
posix-utils_windows.go Remove go1.9 specific code for windows (#5033) 2017-10-13 15:31:15 +05:30
posix-utils_windows_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
posix.go Fix a possible race during PutObject() (#5376) 2018-01-13 22:43:02 +05:30
posix_test.go fix build failure for go1.9 (#4872) 2017-10-06 17:00:15 -07:00
post-policy_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
postpolicyform.go Name return values to prevent the need (and unnecessary code bloat) (#4576) 2017-06-21 19:53:09 -07:00
postpolicyform_test.go Fix PostPolicy form tests without hardcoded dates (#5337) 2018-01-01 07:28:10 +05:30
prepare-storage-msg.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
prepare-storage-msg_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
prepare-storage.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
prepare-storage_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
retry-storage.go Add more delays on distributed startup for slow network (#5240) 2017-12-16 08:25:29 -08:00
retry-storage_test.go remove ReadFileWithVerify from StorageAPI (#4947) 2017-09-25 11:32:56 -07:00
retry.go Add UTCNow() function. (#3931) 2017-03-18 11:28:41 -07:00
retry_test.go auth/rpc: Make auth rpc client retry configurable. (#3695) 2017-02-07 02:16:29 -08:00
routers.go Limit number of connections upto system maxlimit (#5109) 2017-12-20 13:30:14 +05:30
rpc-common.go [security] rpc: Do not transfer access/secret key. (#4857) 2017-09-19 12:37:56 -07:00
rpc-server.go rpc: Do not use read/write deadlines for rpc connections. (#4647) 2017-07-18 09:30:46 -07:00
rpc-server_test.go rpc: Do not use read/write deadlines for rpc connections. (#4647) 2017-07-18 09:30:46 -07:00
s3-peer-client.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
s3-peer-client_test.go S3 peers should be initialized properly (#5024) 2017-10-08 20:23:42 -07:00
s3-peer-router.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
s3-peer-rpc-handlers.go
s3-peer-rpc-handlers_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
server-main.go Support in-place upgrades of new minio binary and releases. (#4961) 2017-12-15 12:33:42 -08:00
server-main_test.go Add extensive endpoints validation (#4019) 2017-04-11 15:44:27 -07:00
server-rlimit.go Push max threads to little less than kernel limit (#5001) 2017-10-03 10:37:45 -07:00
server-rlimit_test.go cache: Increasing caching GC percent from 20 to 50. (#4041) 2017-04-15 02:16:49 -07:00
server-startup-msg.go Update madmin package to return storage class parity (#5387) 2018-01-12 07:52:52 +05:30
server-startup-msg_test.go Update madmin package to return storage class parity (#5387) 2018-01-12 07:52:52 +05:30
server_test.go Fix ListenBucketNotification deadlock (#5028) 2017-11-16 10:56:06 -08:00
service.go Refactor HTTP server to address bugs (#4636) 2017-07-12 16:33:21 -07:00
setup-type.go Add extensive endpoints validation (#4019) 2017-04-11 15:44:27 -07:00
signals.go Save http trace to a file (#5300) 2018-01-05 11:24:31 -08:00
signature-v2.go Remove unnecessary errors printed on the console (#5386) 2018-01-11 11:42:05 -08:00
signature-v2_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
signature-v4-parser.go Check for value > 7 days in X-Amz-Expires header. (#5163) 2017-11-13 12:54:03 -08:00
signature-v4-parser_test.go fix timing oracle attack against signature V2/V4 verification (#5335) 2018-01-02 12:00:02 +05:30
signature-v4-utils.go Allow x-amz-content-sha256 to be optional for PutObject() (#5340) 2018-01-09 12:49:50 +05:30
signature-v4-utils_test.go Allow x-amz-content-sha256 to be optional for PutObject() (#5340) 2018-01-09 12:49:50 +05:30
signature-v4.go fix timing oracle attack against signature V2/V4 verification (#5335) 2018-01-02 12:00:02 +05:30
signature-v4_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
storage-class.go Assume standard storage class if not set in metadata (#5370) 2018-01-11 14:58:12 +05:30
storage-class_test.go Assume standard storage class if not set in metadata (#5370) 2018-01-11 14:58:12 +05:30
storage-datatypes.go
storage-errors.go Convert gateways into respective packages (#5200) 2017-12-05 17:58:09 -08:00
storage-interface.go remove ReadFileWithVerify from StorageAPI (#4947) 2017-09-25 11:32:56 -07:00
storage-rpc-client.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
storage-rpc-client_test.go tests: Remove dependency on check.v1 (#5034) 2017-10-10 02:14:42 -07:00
storage-rpc-server-datatypes.go remove ReadFileWithVerify from StorageAPI (#4947) 2017-09-25 11:32:56 -07:00
storage-rpc-server.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
storage-rpc-server_test.go Simplify the steps to make changes to config.json (#5186) 2017-11-29 13:12:47 -08:00
streaming-signature-v4.go Remove unnecessary errors printed on the console (#5386) 2018-01-11 11:42:05 -08:00
streaming-signature-v4_test.go
test-utils_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
tree-walk-pool.go
tree-walk-pool_test.go
tree-walk.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
tree-walk_test.go posix: Deprecate custom removeAll/mkdirAll implementations. (#4808) 2017-08-12 19:25:43 -07:00
typed-errors.go Simplify data verification with HashReader. (#5071) 2017-10-22 11:00:34 +05:30
update-main.go Exitcode with '1' when update is available (#5354) 2018-01-04 21:26:43 +05:30
update-main_test.go Support in-place upgrades of new minio binary and releases. (#4961) 2017-12-15 12:33:42 -08:00
update-notifier.go Support in-place upgrades of new minio binary and releases. (#4961) 2017-12-15 12:33:42 -08:00
update-notifier_test.go Support in-place upgrades of new minio binary and releases. (#4961) 2017-12-15 12:33:42 -08:00
utils.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
utils_test.go Separate the codebase for XL and FS format.json related code (#5317) 2018-01-08 14:30:55 -08:00
version-main.go cli: Make sure to add --help flag for subcommands. (#3773) 2017-02-19 20:46:06 -08:00
version_test.go tests: Remove dependency on check.v1 (#5034) 2017-10-10 02:14:42 -07:00
web-handlers.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
web-handlers_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
web-router.go browser: Remove hardcoding of minioBrowserPrefix=/minio (#5048) 2017-11-06 15:59:37 -08:00
xl-v1-bucket.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-common.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
xl-v1-common_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
xl-v1-errors.go Remove dead unused errs and constants. (#4627) 2017-07-07 14:31:42 -07:00
xl-v1-healing-common.go Add x-amz-storage-class support (#5295) 2017-12-22 16:58:13 +05:30
xl-v1-healing-common_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
xl-v1-healing.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-healing_test.go Add x-amz-storage-class support (#5295) 2017-12-22 16:58:13 +05:30
xl-v1-list-objects-heal.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-list-objects-heal_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
xl-v1-list-objects.go Convert errors tracer into a separate package (#5221) 2017-11-25 11:58:29 -08:00
xl-v1-metadata.go Add validation of xlMeta ErasureInfo field (#5389) 2018-01-12 18:16:30 +05:30
xl-v1-metadata_test.go Add validation of xlMeta ErasureInfo field (#5389) 2018-01-12 18:16:30 +05:30
xl-v1-multipart.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-multipart_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30
xl-v1-object.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-object_test.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1-utils.go Add validation of xlMeta ErasureInfo field (#5389) 2018-01-12 18:16:30 +05:30
xl-v1-utils_test.go Fix hash order to generate more even distribution (#5247) 2017-11-30 12:57:03 -08:00
xl-v1.go Move nslocking from s3 layer to object layer (#5382) 2018-01-13 10:04:52 +05:30
xl-v1_test.go fix: Better printing of XL config init error (#5284) 2017-12-28 23:02:48 +05:30