The probe package is no longer available in the Minio server
repo. This change just moves probe from the vendor directory to its
own dir under `pkg`.
This is a maintenance fix.
This PR brings following changes
- Brings streaming support for mc uploads.
- Brings support for copying objects upto 5TiB
as a consequence of ComposeObject implementation
in minio-go.
* client: Avoid returning metadata with Get()
client-s3.Get() calls Stat() method because Get() is supposed to return
object metadata. This PR makes a change in client interface so metadata
is returned in Stat() method. This is beneficial for us to avoid calling
HEAD method in S3 when run `mc cat`
* cat: Ignore Stat() returned error
In case of cache gateway, HEAD objects returns 404 even though
objects are gettable. This PR ignores Stat() error since its
purpose in case of cat is to check if the download object size
is equal to what the server announced.
This patch adds UTCNow() function which returns current UTC time.
This is equivalent of UTCNow() == time.Now().UTC()
Refer https://github.com/minio/minio/pull/3931
This also factors common code used by several types
of listing routines, by creating a filtering channel
of results returned by these channels.
e.g. Filter out incomplete uploads or vice versa
fs.Stat() returns an error when the path corresponds to
a directory and incomplete flag is enabled. This PR follows
S3 client behavior and fixes the behavior.
This is due to the fact that ReadAt() will not send io.EOF
when reading past the offset, server instead returns
Range error. Handle the error by only reading until the
requested size.
This fixes#1889.
```sh
mc mirror -w
```
Now runs continous even when the source is not available.
Reconnects indefinitely in a binomially increasing fashion
and also allows jitter so that the retry has a nice
distribution as well.
This allows for 'mc mirror -w' to run continously without
further monitoring.
Previously it was failing like below.
```
$ mc ls --incomplete myminio/mybucket
[2016-09-16 09:48:57 PDT] 576MiB 1.iso
$ mc ls --incomplete myminio/mybucket/1.iso
mc: <ERROR> Unable to initialize target ‘myminio/mybucket/1.iso’. Object key is missing, object key cannot be empty
```
This patch fixes this issue.