Browse Source

replicate: incremental sink only contains new and updated files

address da08402ba2
pull/1778/head
Chris Lu 4 years ago
parent
commit
9a06c35da4
  1. 3
      weed/command/scaffold.go
  2. 8
      weed/replication/replicator.go

3
weed/command/scaffold.go

@ -356,7 +356,8 @@ enabled = false
directory = "/data"
[sink.local_incremental]
# all replicated files are under creation time as yyyy-mm-dd directories
# all replicated files are under modified time as yyyy-mm-dd directories
# so each date directory contains all new and updated files.
enabled = false
directory = "/backup"

8
weed/replication/replicator.go

@ -43,13 +43,13 @@ func (r *Replicator) Replicate(ctx context.Context, key string, message *filer_p
}
var dateKey string
if r.sink.GetName() == "local_incremental" {
var cTime int64
var mTime int64
if message.NewEntry != nil {
cTime = message.NewEntry.Attributes.Crtime
mTime = message.NewEntry.Attributes.Mtime
} else if message.OldEntry != nil {
cTime = message.OldEntry.Attributes.Crtime
mTime = message.OldEntry.Attributes.Mtime
}
dateKey = time.Unix(cTime, 0).Format("2006-01-02")
dateKey = time.Unix(mTime, 0).Format("2006-01-02")
}
newKey := util.Join(r.sink.GetSinkToDirectory(), dateKey, key[len(r.source.Dir):])
glog.V(3).Infof("replicate %s => %s", key, newKey)

Loading…
Cancel
Save