Merge pull request #22123 from crosbymichael/restart-canceled

Remove restart canceled error
This commit is contained in:
Brian Goff 2016-04-19 16:28:33 -04:00
commit ab6b82b856
2 changed files with 11 additions and 3 deletions

View File

@ -9,6 +9,7 @@ import (
"github.com/Sirupsen/logrus" "github.com/Sirupsen/logrus"
containerd "github.com/docker/containerd/api/grpc/types" containerd "github.com/docker/containerd/api/grpc/types"
"github.com/docker/docker/restartmanager"
"github.com/opencontainers/specs/specs-go" "github.com/opencontainers/specs/specs-go"
"golang.org/x/net/context" "golang.org/x/net/context"
) )
@ -148,7 +149,9 @@ func (ctr *container) handleEvent(e *containerd.Event) error {
logrus.Error(err) logrus.Error(err)
} }
}) })
logrus.Error(err) if err != restartmanager.ErrRestartCanceled {
logrus.Error(err)
}
} else { } else {
ctr.start() ctr.start()
} }

View File

@ -1,6 +1,7 @@
package restartmanager package restartmanager
import ( import (
"errors"
"fmt" "fmt"
"sync" "sync"
"time" "time"
@ -13,6 +14,10 @@ const (
defaultTimeout = 100 * time.Millisecond defaultTimeout = 100 * time.Millisecond
) )
// ErrRestartCanceled is returned when the restart manager has been
// canceled and will no longer restart the container.
var ErrRestartCanceled = errors.New("restart canceled")
// RestartManager defines object that controls container restarting rules. // RestartManager defines object that controls container restarting rules.
type RestartManager interface { type RestartManager interface {
Cancel() error Cancel() error
@ -54,7 +59,7 @@ func (rm *restartManager) ShouldRestart(exitCode uint32, hasBeenManuallyStopped
}() }()
if rm.canceled { if rm.canceled {
return false, nil, fmt.Errorf("restartmanager canceled") return false, nil, ErrRestartCanceled
} }
if rm.active { if rm.active {
@ -95,7 +100,7 @@ func (rm *restartManager) ShouldRestart(exitCode uint32, hasBeenManuallyStopped
go func() { go func() {
select { select {
case <-rm.cancel: case <-rm.cancel:
ch <- fmt.Errorf("restartmanager canceled") ch <- ErrRestartCanceled
close(ch) close(ch)
case <-time.After(rm.timeout): case <-time.After(rm.timeout):
rm.Lock() rm.Lock()