minio/cmd
Jorge Israel Peña 4752323e1c
Use hdfs.Readdir() to optimize HDFS directory listings (#10121)
Currently, listing directories on HDFS incurs a per-entry remote Stat() call
penalty, the cost of which can really blow up on directories with many
entries (+1,000) especially when considered in addition to peripheral
calls (such as validation) and the fact that minio is an intermediary to the
client (whereas other clients listed below can query HDFS directly).

Because listing directories this way is expensive, the Golang HDFS library
provides the [`Client.Open()`] function which creates a [`FileReader`] that is
able to batch multiple calls together through the [`Readdir()`] function.

This is substantially more efficient for very large directories.

In one case we were witnessing about +20 seconds to list a directory with 1,500
entries, admittedly large, but the Java hdfs ls utility as well as the HDFS
library sample ls utility were much faster.

Hadoop HDFS DFS (4.02s):

    λ ~/code/minio → use-readdir
    » time hdfs dfs -ls /directory/with/1500/entries/
    …
    hdfs dfs -ls   5.81s user 0.49s system 156% cpu 4.020 total

Golang HDFS library (0.47s):

    λ ~/code/hdfs → master
    » time ./hdfs ls -lh /directory/with/1500/entries/
    …
    ./hdfs ls -lh   0.13s user 0.14s system 56% cpu 0.478 total

mc and minio **without** optimization (16.96s):

    λ ~/code/minio → master
    » time mc ls myhdfs/directory/with/1500/entries/
    …
    ./mc ls   0.22s user 0.29s system 3% cpu 16.968 total

mc and minio **with** optimization (0.40s):

    λ ~/code/minio → use-readdir
    » time mc ls myhdfs/directory/with/1500/entries/
    …
    ./mc ls   0.13s user 0.28s system 102% cpu 0.403 total

[`Client.Open()`]: https://godoc.org/github.com/colinmarc/hdfs#Client.Open
[`FileReader`]: https://godoc.org/github.com/colinmarc/hdfs#FileReader
[`Readdir()`]: https://godoc.org/github.com/colinmarc/hdfs#FileReader.Readdir
2020-07-24 11:31:51 -07:00
..
config add dnsStore interface for upcoming operator webhook (#10077) 2020-07-20 12:28:48 -07:00
crypto admin: new API for creating KMS master keys (#9982) 2020-07-08 18:50:43 -07:00
gateway Use hdfs.Readdir() to optimize HDFS directory listings (#10121) 2020-07-24 11:31:51 -07:00
http Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
jwt fix: send valid claims in AuditLogs for browser requests (#9713) 2020-05-27 12:38:44 -07:00
logger Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
rest fix: make sure to use new restClient for healthcheck (#10026) 2020-07-11 22:19:38 -07:00
acl-handlers.go migrate all bucket metadata into a single file (#9586) 2020-05-19 13:53:54 -07:00
admin-bucket-handlers.go Add missing validation for replication API conditions (#10114) 2020-07-22 17:39:40 -07:00
admin-handlers-config-kv.go fix: simplify background heal and trigger heal items early (#9928) 2020-06-29 13:07:26 -07:00
admin-handlers-users.go Export bucket usage counts as part of bucket metrics (#9710) 2020-05-27 06:45:43 -07:00
admin-handlers.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
admin-handlers_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
admin-heal-ops.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
admin-router.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
admin-server-info.go fix: admin info output and improve overall performance (#10015) 2020-07-13 09:51:07 -07:00
api-datatypes.go azure: Return success when deleting non-existent object (#9981) 2020-07-10 08:30:23 -07:00
api-errors.go Add missing validation for replication API conditions (#10114) 2020-07-22 17:39:40 -07:00
api-errors_test.go Move etcd, logger, crypto into their own packages (#8366) 2019-10-08 11:17:56 +05:30
api-headers.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
api-headers_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
api-resources.go listV2: Continuation and NextContinuation tokens are encoded with base64 (#8337) 2019-10-02 01:39:29 +05:30
api-resources_test.go Increase maximum 1000 List keys to 10000 (#8444) 2019-10-28 10:36:15 -07:00
api-response.go fix: obtain correct location string with DNS style buckets (#10060) 2020-07-16 13:28:29 -07:00
api-response_test.go fix: obtain correct location string with DNS style buckets (#10060) 2020-07-16 13:28:29 -07:00
api-router.go fix: add missing response headers to CORS handler (#10124) 2020-07-24 00:46:51 -07:00
api-utils.go Make Encoding URL more compliant to S3 spec (#7360) 2019-04-12 12:02:37 -07:00
api-utils_test.go Make Encoding URL more compliant to S3 spec (#7360) 2019-04-12 12:02:37 -07:00
auth-handler.go fix: handle array policies in JWT claim (#10041) 2020-07-14 10:26:47 -07:00
auth-handler_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
background-heal-ops.go Avoid healing to be stuck with many concurrent event listeners (#10111) 2020-07-22 13:16:55 -07:00
background-newdisks-heal-ops.go fix: heal replaced drives properly (#10069) 2020-07-17 10:08:04 -07:00
benchmark-utils_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bitrot-streaming.go use GlobalContext whenever possible (#9280) 2020-04-09 09:30:02 -07:00
bitrot-whole.go use GlobalContext whenever possible (#9280) 2020-04-09 09:30:02 -07:00
bitrot.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bitrot_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bootstrap-peer-server.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
bucket-encryption-handlers.go Relax content-md5 requirement in set encryption handler (#9750) 2020-06-01 18:08:19 -07:00
bucket-encryption.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bucket-encryption_test.go Add support for bucket encryption feature (#8890) 2020-02-05 15:12:34 +05:30
bucket-handlers.go Add missing validation for replication API conditions (#10114) 2020-07-22 17:39:40 -07:00
bucket-handlers_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
bucket-lifecycle-handlers.go simplify further bucket configuration properly (#9650) 2020-05-20 10:18:15 -07:00
bucket-lifecycle-handlers_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
bucket-lifecycle.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bucket-listobjects-handlers.go support proper values for listMultipartUploads/listParts (#9970) 2020-07-03 19:27:13 -07:00
bucket-metadata-sys.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
bucket-metadata.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
bucket-metadata_gen.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
bucket-metadata_gen_test.go migrate all bucket metadata into a single file (#9586) 2020-05-19 13:53:54 -07:00
bucket-notification-handlers.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
bucket-object-lock.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bucket-policy-handlers.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
bucket-policy-handlers_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
bucket-policy.go fix: copyObject key rotation issue (#10085) 2020-07-18 17:36:32 -07:00
bucket-quota.go Enforce quota checks after crawl (#10036) 2020-07-14 18:59:05 -07:00
bucket-replication.go Add missing validation for replication API conditions (#10114) 2020-07-22 17:39:40 -07:00
bucket-versioning-handler.go fix: disallow versioning to be suspended with object lock (#9930) 2020-06-28 08:15:15 -07:00
bucket-versioning.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
build-constants.go Add support for minioreleaser a fork for goreleaser (#9890) 2020-06-22 08:26:40 -07:00
common-main.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
config-common.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
config-current.go Fix config leaks and deprecate file-based config setters in NAS gateway (#9884) 2020-06-25 15:59:28 +05:30
config-current_test.go Avoid pointer based copy, instead use Clone() (#8547) 2019-11-21 17:54:51 +05:30
config-dir.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
config-encrypted.go fix: migrate to go.etcd.io import path (#9987) 2020-07-07 19:04:29 -07:00
config-encrypted_test.go Config migration should handle plain-text (#8506) 2019-11-11 12:01:21 -08:00
config-migrate.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
config-migrate_test.go Order all keys in config (#8541) 2019-11-20 15:10:24 -08:00
config-versions.go Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
config.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
consolelogger.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
copy-part-range.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
copy-part-range_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
crossdomain-xml-handler.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
crossdomain-xml-handler_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
data-crawler.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
data-update-tracker.go add dnsStore interface for upcoming operator webhook (#10077) 2020-07-20 12:28:48 -07:00
data-update-tracker_test.go add data update tracking using bloom filter (#9208) 2020-04-27 10:06:21 -07:00
data-usage-cache.go Enforce quota checks after crawl (#10036) 2020-07-14 18:59:05 -07:00
data-usage-cache_gen.go merge object lifecycle checks into usage crawler (#9579) 2020-06-12 10:28:21 -07:00
data-usage-cache_gen_test.go merge object lifecycle checks into usage crawler (#9579) 2020-06-12 10:28:21 -07:00
data-usage.go merge object lifecycle checks into usage crawler (#9579) 2020-06-12 10:28:21 -07:00
data-usage_test.go merge object lifecycle checks into usage crawler (#9579) 2020-06-12 10:28:21 -07:00
disk-cache-backend.go fix: return Range errors after If-Matches (#10045) 2020-07-17 13:01:22 -07:00
disk-cache-check-support_other.go Use registry to check Atime support on Windows (#9741) 2020-05-30 09:47:42 -07:00
disk-cache-check-support_windows.go Use registry to check Atime support on Windows (#9741) 2020-05-30 09:47:42 -07:00
disk-cache-stats.go fix: export prometheus metrics for cache GC triggers (#9815) 2020-06-15 09:05:35 -07:00
disk-cache-utils.go Enforce quota checks after crawl (#10036) 2020-07-14 18:59:05 -07:00
disk-cache-utils_test.go Add cache eviction low and high watermarks (#8958) 2020-02-23 19:03:39 +05:30
disk-cache.go Allow optionally to disable range caching. (#9908) 2020-06-29 13:25:29 -07:00
disk-cache_test.go Remove brittle tests for cache (#9570) 2020-05-11 15:41:10 -07:00
dummy-data-generator_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
dummy-handlers.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
dynamic-timeouts.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
dynamic-timeouts_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
encryption-v1.go fix: copyObject encryption from unencrypted object (#10102) 2020-07-21 12:25:01 -07:00
encryption-v1_test.go fix: return Range errors after If-Matches (#10045) 2020-07-17 13:01:22 -07:00
endpoint-ellipses.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
endpoint-ellipses_test.go fix: throw error if symmetry cannot be obtained (#9780) 2020-06-06 22:13:48 -07:00
endpoint.go add dnsStore interface for upcoming operator webhook (#10077) 2020-07-20 12:28:48 -07:00
endpoint_test.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
erasure-bucket.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
erasure-coding.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-common.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-common_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-decode.go fix: pop entries from each drives in parallel (#9918) 2020-06-25 23:20:12 -07:00
erasure-decode_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-encode.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-encode_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-errors.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-heal_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-healing-common.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-healing-common_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-healing.go Send the lower level error directly from GetDiskID() (#10095) 2020-07-21 13:54:06 -07:00
erasure-healing_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-list-objects.go fix: make sure to honor versioning from browser UI deletes (#10016) 2020-07-10 22:21:04 -07:00
erasure-lowlevel-heal.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-metadata-utils.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-metadata-utils_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-metadata.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
erasure-metadata_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-multipart.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
erasure-object.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
erasure-object_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-sets.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
erasure-sets_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-utils.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
erasure-zones.go Usage: Reset merged info when updating (#10126) 2020-07-24 11:02:10 -07:00
erasure.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
erasure_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
etcd.go fix: migrate to go.etcd.io import path (#9987) 2020-07-07 19:04:29 -07:00
fallocate.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
fallocate_linux.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
fallocate_linux_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
fastwalk.go Forward RPC errors from crawler (#9569) 2020-05-11 20:41:38 -07:00
format-disk-cache.go Send the lower level error directly from GetDiskID() (#10095) 2020-07-21 13:54:06 -07:00
format-disk-cache_test.go Return appropriate errors API versions changes across REST APIs (#8480) 2019-11-04 09:30:59 -08:00
format-erasure.go fix: heal replaced drives properly (#10069) 2020-07-17 10:08:04 -07:00
format-erasure_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
format-fs.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
format-fs_test.go Return appropriate errors API versions changes across REST APIs (#8480) 2019-11-04 09:30:59 -08:00
format-meta.go Fix writing 'format.json' and make it atomic (#8296) 2019-09-24 18:47:26 -07:00
fs-v1-helpers.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1-helpers_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1-metadata.go Add ObjectTagging Support (#8754) 2020-01-20 08:45:59 -08:00
fs-v1-metadata_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1-multipart.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1-multipart_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1-rwpool.go use GlobalContext whenever possible (#9280) 2020-04-09 09:30:02 -07:00
fs-v1-rwpool_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
fs-v1.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
fs-v1_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
gateway-common.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
gateway-common_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
gateway-env.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
gateway-interface.go Return appropriate errors API versions changes across REST APIs (#8480) 2019-11-04 09:30:59 -08:00
gateway-main.go fix: cors handling again for not just OPTIONS request (#10025) 2020-07-12 10:56:57 -07:00
gateway-main_test.go [Bugfix] duplicating flag registration (#7853) 2019-07-03 14:31:19 -07:00
gateway-metrics.go simplify usage of mutexes and atomic constants (#9501) 2020-05-03 22:35:40 -07:00
gateway-startup-msg.go print proper certinfo on console when starting up (#9479) 2020-04-30 16:15:29 -07:00
gateway-startup-msg_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
gateway-unsupported.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
generic-handlers.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
generic-handlers_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
global-heal.go fix: heal replaced drives properly (#10069) 2020-07-17 10:08:04 -07:00
globals.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
handler-api.go add dnsStore interface for upcoming operator webhook (#10077) 2020-07-20 12:28:48 -07:00
handler-utils.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
handler-utils_test.go Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
hasher.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
healthcheck-handler.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
healthcheck-router.go fix: readiness needs to be like liveness (#9941) 2020-06-30 11:28:27 -07:00
http-stats.go fix: use unused cacheMetrics code in prometheus (#9588) 2020-05-13 08:15:26 -07:00
http-tracer.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
httprange.go Cache only the range requested for range GETs (#8599) 2019-12-08 13:58:04 -08:00
httprange_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
iam-etcd-store.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
iam-object-store.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
iam.go allow claims to be optional in STS (#10078) 2020-07-19 15:34:01 -07:00
jwt.go fix: Disable presigned without appropriate policy (#9621) 2020-05-17 23:38:52 -07:00
jwt_test.go jwt: Simplify JWT parsing (#8802) 2020-01-31 08:29:22 +05:30
leak-detect_test.go
listen-notification-handlers.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
local-locker.go fix: Speed up multi-object delete by taking bulk locks (#8974) 2020-02-21 11:29:57 +05:30
lock-rest-client.go fix: make sure to use new restClient for healthcheck (#10026) 2020-07-11 22:19:38 -07:00
lock-rest-client_test.go Move online status to REST client (#9808) 2020-06-16 18:59:32 -07:00
lock-rest-server-common.go Add a custom healthcheck function for online status (#9858) 2020-06-17 14:49:26 -07:00
lock-rest-server-common_test.go jwt: Simplify JWT parsing (#8802) 2020-01-31 08:29:22 +05:30
lock-rest-server.go Add a custom healthcheck function for online status (#9858) 2020-06-17 14:49:26 -07:00
main.go enable --compat flag by default (#9326) 2020-04-12 18:08:27 -07:00
merge-walk-pool.go fix: fix lockup in merge-walk pool (#10098) 2020-07-20 17:28:26 -07:00
merge-walk-pool_test.go fix: fix lockup in merge-walk pool (#10098) 2020-07-20 17:28:26 -07:00
metrics-router.go enable full linter across the codebase (#9620) 2020-05-18 09:59:45 -07:00
metrics.go fix: admin info output and improve overall performance (#10015) 2020-07-13 09:51:07 -07:00
namespace-lock.go preserve context per request for local locks (#9828) 2020-06-14 07:43:10 -07:00
namespace-lock_test.go fix: possiblity of double write lockers on same resource (#9616) 2020-05-18 17:33:35 -07:00
naughty-disk_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
net.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
net_test.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
notification.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
obdinfo.go add additional fdatasync before close() on writes (#9947) 2020-07-01 10:57:23 -07:00
obdinfo_other.go add additional fdatasync before close() on writes (#9947) 2020-07-01 10:57:23 -07:00
obdinfo_unix.go add additional fdatasync before close() on writes (#9947) 2020-07-01 10:57:23 -07:00
object-api-common.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-datatypes.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
object-api-deleteobject_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-errors.go Add missing validation for replication API conditions (#10114) 2020-07-22 17:39:40 -07:00
object-api-getobject_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-getobjectinfo_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-input-checks.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
object-api-interface.go fix: re-implement cluster healthcheck (#10101) 2020-07-20 18:31:22 -07:00
object-api-listobjects_test.go fix: pop entries from each drives in parallel (#9918) 2020-06-25 23:20:12 -07:00
object-api-multipart_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-options.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
object-api-putobject_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
object-api-utils.go fix: copyObject key rotation issue (#10085) 2020-07-18 17:36:32 -07:00
object-api-utils_test.go fix size accounting for encrypted/compressed objects (#9690) 2020-05-24 11:19:17 -07:00
object-handlers-common.go fix: return Range errors after If-Matches (#10045) 2020-07-17 13:01:22 -07:00
object-handlers-common_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
object-handlers.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
object-handlers_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
object_api_suite_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
os-dirent_fileino.go allow large buffer to list more entries per directory (#9785) 2020-06-09 09:44:50 -07:00
os-dirent_ino.go allow large buffer to list more entries per directory (#9785) 2020-06-09 09:44:50 -07:00
os-dirent_namelen_bsd.go allow large buffer to list more entries per directory (#9785) 2020-06-09 09:44:50 -07:00
os-dirent_namelen_linux.go allow large buffer to list more entries per directory (#9785) 2020-06-09 09:44:50 -07:00
os-readdir_other.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
os-readdir_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
os-readdir_unix.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
os-readdir_windows.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
os-reliable.go tests: Fix one multi-delete test failure in Windows CI (#9602) 2020-05-14 18:09:30 -07:00
os-reliable_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
peer-rest-client.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
peer-rest-common.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
peer-rest-server.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
policy_test.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
post-policy_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
postpolicyform.go Remove unusued params and functions (#8399) 2019-10-15 18:35:41 -07:00
postpolicyform_test.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
prepare-storage.go fix: heal replaced drives properly (#10069) 2020-07-17 10:08:04 -07:00
routers.go fix: cors handling after gorilla mux update (#9980) 2020-07-06 20:55:19 -07:00
server-main.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
server-main_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
server-rlimit.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
server-startup-msg.go Preserve errors returned by diskInfo to detect disk errors (#9727) 2020-05-28 13:03:04 -07:00
server-startup-msg_test.go print proper certinfo on console when starting up (#9479) 2020-04-30 16:15:29 -07:00
server_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
service.go re-implement data usage crawler to be more efficient (#9075) 2020-03-18 16:19:29 -07:00
setup-type.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
signals.go re-implement data usage crawler to be more efficient (#9075) 2020-03-18 16:19:29 -07:00
signature-v2.go add missing signature v2 query params (#9670) 2020-05-21 18:51:23 -07:00
signature-v2_test.go Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
signature-v4-parser.go fix: sts to return appropriate errors (#9161) 2020-03-18 17:25:45 -07:00
signature-v4-parser_test.go fix: sts to return appropriate errors (#9161) 2020-03-18 17:25:45 -07:00
signature-v4-utils.go use GlobalContext whenever possible (#9280) 2020-04-09 09:30:02 -07:00
signature-v4-utils_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
signature-v4.go Move dependency from minio-go v6 to v7 (#10042) 2020-07-14 09:38:05 -07:00
signature-v4_test.go Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
storage-datatypes.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
storage-errors.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
storage-interface.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
storage-rest-client.go Send the lower level error directly from GetDiskID() (#10095) 2020-07-21 13:54:06 -07:00
storage-rest-common.go fix: crash in storage rest client due to spurious query params (#9924) 2020-06-26 16:49:49 -07:00
storage-rest-server.go Send the lower level error directly from GetDiskID() (#10095) 2020-07-21 13:54:06 -07:00
storage-rest_test.go fix: admin info output and improve overall performance (#10015) 2020-07-13 09:51:07 -07:00
streaming-signature-v4.go re-implement data usage crawler to be more efficient (#9075) 2020-03-18 16:19:29 -07:00
streaming-signature-v4_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
sts-datatypes.go Fix LDAP responseXML to be named appropriately (#8285) 2019-09-24 03:51:16 +05:30
sts-errors.go fixes misleading assume role error msgs (#9642) 2020-05-21 09:09:18 -07:00
sts-handlers.go allow claims to be optional in STS (#10078) 2020-07-19 15:34:01 -07:00
test-utils_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
tree-walk-pool.go fix: fix lockup in merge-walk pool (#10098) 2020-07-20 17:28:26 -07:00
tree-walk-pool_test.go fix: threadwalk lockup under high load (#9992) 2020-07-09 07:02:18 -07:00
tree-walk.go non-empty dirs should not be listed as objects (#9129) 2020-03-13 17:43:00 -07:00
tree-walk_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
typed-errors.go fix: optimize IAM users load, add fallback (#9809) 2020-06-11 14:11:30 -07:00
update-notifier.go Refactor config and split them in packages (#8351) 2019-10-04 23:05:33 +05:30
update-notifier_test.go Refactor config and split them in packages (#8351) 2019-10-04 23:05:33 +05:30
update.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
update_test.go refactor server update behavior (#10107) 2020-07-23 08:03:31 -07:00
utils.go Remove usage of go-ieproxy for windows (#10009) 2020-07-10 12:08:14 -07:00
utils_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
version_test.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
web-handler-context.go use GlobalContext whenever possible (#9280) 2020-04-09 09:30:02 -07:00
web-handler-context_test.go Pass on web-handler arguments properly to log entries (#7894) 2019-07-11 22:37:13 +01:00
web-handlers.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
web-handlers_test.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
web-router.go feat: Add notification support for bucketCreates and removal (#10075) 2020-07-20 12:52:49 -07:00
xl-storage-disk-id-check.go fix: diskInfo should check diskID only if disk is online (#10058) 2020-07-16 07:30:05 -07:00
xl-storage-errors.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-errors_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-format-utils.go fix: support healing older content (#10076) 2020-07-17 17:41:29 -07:00
xl-storage-format-v1.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-format-v1_gen.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-format-v1_gen_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-format-v2.go fix: simplify data structure before release (#9968) 2020-07-04 12:25:53 -07:00
xl-storage-format-v2_gen.go fix: simplify data structure before release (#9968) 2020-07-04 12:25:53 -07:00
xl-storage-format-v2_gen_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage-format_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage.go Add support for server side bucket replication (#9882) 2020-07-21 17:49:56 -07:00
xl-storage_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage_unix_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00
xl-storage_windows_test.go Support bucket versioning (#9377) 2020-06-12 20:04:01 -07:00