Implement an offline mode for a distributed node (#4646)

Implement an offline mode for remote storage to cache the
offline status of a node in order to prevent network calls
that are bound to fail. After a time interval an attempt
will be made to restore the connection and mark the node
as online if successful.

Fixes #4183
This commit is contained in:
Frank Wessels
2017-08-11 11:38:46 -07:00
committed by Harshavardhana
parent 1978b9d8f9
commit 98b62cbec8
6 changed files with 227 additions and 125 deletions

View File

@@ -37,9 +37,15 @@ var errUnformattedDisk = errors.New("unformatted disk found")
// errDiskFull - cannot create volume or files when disk is full.
var errDiskFull = errors.New("disk path full")
// errDiskNotFount - cannot find the underlying configured disk anymore.
// errDiskNotFound - cannot find the underlying configured disk anymore.
var errDiskNotFound = errors.New("disk not found")
// errDiskNotFoundFromNetError - cannot find the underlying configured disk anymore due to network error.
var errDiskNotFoundFromNetError = errors.New("disk not found from net error")
// errDiskNotFoundFromShutdown - cannot find the underlying configured disk anymore due to rpc shutdown.
var errDiskNotFoundFromRPCShutdown = errors.New("disk not found from rpc shutdown")
// errFaultyRemoteDisk - remote disk is faulty.
var errFaultyRemoteDisk = errors.New("remote disk is faulty")