Explorar el Código

etcd-agent: ignore error when no file to rename

Fixes https://github.com/coreos/etcd/issues/4512.
When cluster fails before creation of log or data directory
the file does not exist and cannot be renamed. This skips such
error because there's no need to store empty logs in failure_archive.
Gyu-Ho Lee hace 10 años
padre
commit
205033d25f
Se han modificado 1 ficheros con 9 adiciones y 2 borrados
  1. 9 2
      tools/functional-tester/etcd-agent/agent.go

+ 9 - 2
tools/functional-tester/etcd-agent/agent.go

@@ -194,7 +194,14 @@ func archiveLogAndDataDir(log string, datadir string) error {
 		return err
 	}
 	if err := os.Rename(log, path.Join(dir, log)); err != nil {
-		return err
+		if !os.IsNotExist(err) {
+			return err
+		}
 	}
-	return os.Rename(datadir, path.Join(dir, datadir))
+	if err := os.Rename(datadir, path.Join(dir, datadir)); err != nil {
+		if !os.IsNotExist(err) {
+			return err
+		}
+	}
+	return nil
 }