Browse Source

snapshot: clarify "Restore" method with conflicting data directory

Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
Gyuho Lee 8 years ago
parent
commit
c59d0f9fe2
1 changed files with 5 additions and 0 deletions
  1. 5 0
      snapshot/v3_snapshot.go

+ 5 - 0
snapshot/v3_snapshot.go

@@ -57,6 +57,8 @@ type Manager interface {
 	Status(dbPath string) (Status, error)
 	Status(dbPath string) (Status, error)
 
 
 	// Restore restores a new etcd data directory from given snapshot file.
 	// Restore restores a new etcd data directory from given snapshot file.
+	// It returns an error if specified data directory already exists, to
+	// prevent unintended data directory overwrites.
 	Restore(dbPath string, cfg RestoreConfig) error
 	Restore(dbPath string, cfg RestoreConfig) error
 }
 }
 
 
@@ -73,6 +75,9 @@ type RestoreConfig struct {
 	// Name is the human-readable name of this member.
 	// Name is the human-readable name of this member.
 	Name string
 	Name string
 	// OutputDataDir is the target data directory to save restored data.
 	// OutputDataDir is the target data directory to save restored data.
+	// OutputDataDir should not conflict with existing etcd data directory.
+	// If OutputDataDir already exists, it will return an error to prevent
+	// unintended data directory overwrites.
 	// Defaults to "[Name].etcd" if not given.
 	// Defaults to "[Name].etcd" if not given.
 	OutputDataDir string
 	OutputDataDir string
 	// OutputWALDir is the target WAL data directory.
 	// OutputWALDir is the target WAL data directory.