Workaround for Windows Docker Engine 19.03.8 (#9735)

Add workaround for issue preventing servers from starting on 
Windows Docker Engine 19.03.8

Fixes #9726
This commit is contained in:
Klaus Post 2020-05-29 07:05:19 -07:00 committed by GitHub
parent f833e41e69
commit 167ddf9c9c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -363,11 +363,15 @@ func fsCreateFile(ctx context.Context, filePath string, reader io.Reader, buf []
// wrapper to handle various operating system specific errors.
func fsFAllocate(fd int, offset int64, len int64) (err error) {
e := Fallocate(fd, offset, len)
// Ignore errors when Fallocate is not supported in the current system
if e != nil && !isSysErrNoSys(e) && !isSysErrOpNotSupported(e) {
if e != nil {
switch {
case isSysErrNoSpace(e):
err = errDiskFull
case isSysErrNoSys(e) || isSysErrOpNotSupported(e):
// Ignore errors when Fallocate is not supported in the current system
case isSysErrInvalidArg(e):
// Workaround for Windows Docker Engine 19.03.8.
// See https://github.com/minio/minio/issues/9726
case isSysErrIO(e):
err = e
default: