Skip to content

Commit

Permalink
Merge pull request #6793 from timothysc/no-ttl
Browse files Browse the repository at this point in the history
Add a no-ttl flag to etcdctl migrate to discard keys on transform.
  • Loading branch information
xiang90 authored Nov 3, 2016
2 parents c5ac021 + 97e96fe commit b28b38f
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions etcdctl/ctlv3/command/migrate_command.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,10 @@ import (
)

var (
migrateDatadir string
migrateWALdir string
migrateTransformer string
migrateExcludeTTLKey bool
migrateDatadir string
migrateWALdir string
migrateTransformer string
)

// NewMigrateCommand returns the cobra command for "migrate".
Expand All @@ -58,6 +59,7 @@ func NewMigrateCommand() *cobra.Command {
Run: migrateCommandFunc,
}

mc.Flags().BoolVar(&migrateExcludeTTLKey, "no-ttl", false, "Do not convert TTL keys")
mc.Flags().StringVar(&migrateDatadir, "data-dir", "", "Path to the data directory")
mc.Flags().StringVar(&migrateWALdir, "wal-dir", "", "Path to the WAL directory")
mc.Flags().StringVar(&migrateTransformer, "transformer", "", "Path to the user-provided transformer program")
Expand Down Expand Up @@ -253,11 +255,13 @@ func writeKeys(w io.Writer, n *store.NodeExtern) uint64 {
if n.Dir {
n.Nodes = nil
}
b, err := json.Marshal(n)
if err != nil {
ExitWithError(ExitError, err)
if !migrateExcludeTTLKey || n.TTL == 0 {
b, err := json.Marshal(n)
if err != nil {
ExitWithError(ExitError, err)
}
fmt.Fprint(w, string(b))
}
fmt.Fprint(w, string(b))
for _, nn := range nodes {
max := writeKeys(w, nn)
if max > maxIndex {
Expand Down

0 comments on commit b28b38f

Please sign in to comment.