diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-05-25 17:19:17 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-05-25 17:19:20 -0700 |
| commit | dce1f02c9efcf78f05e7f81f3cc116e594591642 (patch) | |
| tree | 393d8ffb33ade1ded77e7fea00ab3afa2150fa86 /weed/replication | |
| parent | 35ca9638c422c63383f922ace499472d1b897c77 (diff) | |
| download | seaweedfs-dce1f02c9efcf78f05e7f81f3cc116e594591642.tar.xz seaweedfs-dce1f02c9efcf78f05e7f81f3cc116e594591642.zip | |
filer.backup: backup to local directory optionally is incremental
fixed one issue with https://github.com/chrislusf/seaweedfs/issues/2084
Diffstat (limited to 'weed/replication')
| -rw-r--r-- | weed/replication/sink/localsink/local_sink.go | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/weed/replication/sink/localsink/local_sink.go b/weed/replication/sink/localsink/local_sink.go index 2b9b3e69a..e40ad8bb6 100644 --- a/weed/replication/sink/localsink/local_sink.go +++ b/weed/replication/sink/localsink/local_sink.go @@ -15,8 +15,9 @@ import ( ) type LocalSink struct { - Dir string - filerSource *source.FilerSource + Dir string + filerSource *source.FilerSource + isIncremental bool } func init() { @@ -35,15 +36,17 @@ func (localsink *LocalSink) isMultiPartEntry(key string) bool { return strings.HasSuffix(key, ".part") && strings.Contains(key, "/.uploads/") } -func (localsink *LocalSink) initialize(dir string) error { +func (localsink *LocalSink) initialize(dir string, isIncremental bool) error { localsink.Dir = dir + localsink.isIncremental = isIncremental return nil } func (localsink *LocalSink) Initialize(configuration util.Configuration, prefix string) error { dir := configuration.GetString(prefix + "directory") + isIncremental := configuration.GetBool(prefix + "is_incremental") glog.V(4).Infof("sink.local.directory: %v", dir) - return localsink.initialize(dir) + return localsink.initialize(dir, isIncremental) } func (localsink *LocalSink) GetSinkToDirectory() string { @@ -51,7 +54,7 @@ func (localsink *LocalSink) GetSinkToDirectory() string { } func (localsink *LocalSink) IsIncremental() bool { - return true + return localsink.isIncremental } func (localsink *LocalSink) DeleteEntry(key string, isDirectory, deleteIncludeChunks bool, signatures []int32) error { |
