minio/pkg
Klaus Post 87443af49e Cache Windows mount point info (#8572)
It seems like every upload creates a new StorageInfo object.

This makes it very sensitive to slow code paths.

A particular slow function is `IsLikelyMountPoint` on Windows since `windows.GetVolumePathName` is slow.

We cache the result of this operation.

Before:

```
Operation: PUT - Concurrency: 12
* Average: 70.46 MB/s, 70.46 obj/s, 70.46 ops ended/s (59.58s)

Aggregated, split into 59 x 1s time segments:
* Fastest: 77.67 MB/s, 77.67 obj/s, 79.00 ops ended/s (1s)
* 50% Median: 70.84 MB/s, 70.84 obj/s, 70.00 ops ended/s (1s)
* Slowest: 61.51 MB/s, 61.51 obj/s, 61.00 ops ended/s (1s)
```

After:
```
Operation: PUT - Concurrency: 12
* Average: 166.80 MB/s, 166.80 obj/s, 166.74 ops ended/s (59.8s)

Aggregated, split into 59 x 1s time segments:
* Fastest: 183.83 MB/s, 183.83 obj/s, 186.00 ops ended/s (1s)
* 50% Median: 167.47 MB/s, 167.47 obj/s, 166.00 ops ended/s (1s)
* Slowest: 139.30 MB/s, 139.30 obj/s, 141.00 ops ended/s (1s)
```
2019-11-27 20:10:13 +05:30
..
auth Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
bpool Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
certs Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
cgroup Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
color Bring in safe mode support (#8478) 2019-11-09 09:27:23 -08:00
cpu Simplify and cleanup metadata r/w functions (#8146) 2019-09-11 22:52:12 +05:30
disk Add ability to test drive speeds on a MinIO setup (#7664) 2019-09-13 03:22:30 +05:30
dsync Add lock expiry handler to expire state locks (#8562) 2019-11-25 16:39:43 -08:00
ellipses Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
env Fix review comments and new changes in config (#8515) 2019-11-13 17:38:05 -08:00
event Avoid pointer based copy, instead use Clone() (#8547) 2019-11-21 17:54:51 +05:30
handlers federation: Avoid printing context canceled error (#7997) 2019-07-31 11:08:10 -07:00
hash Turn off md5sum optionally if content-md5 is not set (#7609) 2019-05-08 18:35:40 -07:00
iam/policy Add object retention at the per object (#8528) 2019-11-20 13:18:09 -08:00
ioutil Detect underlying disk mount/unmount (#8408) 2019-10-25 10:37:53 -07:00
lifecycle Add bucket lifecycle expiry feature (#7834) 2019-08-09 10:02:41 -07:00
lock Start using new errors package (#8207) 2019-09-11 22:51:43 +05:30
madmin Order all keys in config (#8541) 2019-11-20 15:10:24 -08:00
mem Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
mimedb Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
mountinfo Cache Windows mount point info (#8572) 2019-11-27 20:10:13 +05:30
net Handle localhost distributed setups properly (#8577) 2019-11-26 11:42:10 -08:00
policy Add object retention at the per object (#8528) 2019-11-20 13:18:09 -08:00
pubsub Add admin API to send console log messages (#7784) 2019-09-03 23:40:48 +05:30
quick Migrate config to KV data format (#8392) 2019-10-22 22:59:13 -07:00
s3select S3 Select: Convert CSV data to JSON (#8464) 2019-11-09 09:10:35 -08:00
safe Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
sync/errgroup Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
sys Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
trace Cleanup ResponseWriter function for audit and trace (#8283) 2019-09-24 02:04:28 +05:30
trie Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
wildcard Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
words Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00