diff options
Diffstat (limited to 'weed/filer')
| -rw-r--r-- | weed/filer/entry.go | 13 | ||||
| -rw-r--r-- | weed/filer/filer_conf.go | 6 |
2 files changed, 14 insertions, 5 deletions
diff --git a/weed/filer/entry.go b/weed/filer/entry.go index 2062401f7..5bd1a3c56 100644 --- a/weed/filer/entry.go +++ b/weed/filer/entry.go @@ -38,11 +38,12 @@ type Entry struct { // the following is for files Chunks []*filer_pb.FileChunk `json:"chunks,omitempty"` - HardLinkId HardLinkId - HardLinkCounter int32 - Content []byte - Remote *filer_pb.RemoteEntry - Quota int64 + HardLinkId HardLinkId + HardLinkCounter int32 + Content []byte + Remote *filer_pb.RemoteEntry + Quota int64 + WORMEnforcedAtTsNs int64 } func (entry *Entry) Size() uint64 { @@ -98,6 +99,7 @@ func (entry *Entry) ToExistingProtoEntry(message *filer_pb.Entry) { message.Content = entry.Content message.RemoteEntry = entry.Remote message.Quota = entry.Quota + message.WormEnforcedAtTsNs = entry.WORMEnforcedAtTsNs } func FromPbEntryToExistingEntry(message *filer_pb.Entry, fsEntry *Entry) { @@ -110,6 +112,7 @@ func FromPbEntryToExistingEntry(message *filer_pb.Entry, fsEntry *Entry) { fsEntry.Remote = message.RemoteEntry fsEntry.Quota = message.Quota fsEntry.FileSize = FileSize(message) + fsEntry.WORMEnforcedAtTsNs = message.WormEnforcedAtTsNs } func (entry *Entry) ToProtoFullEntry() *filer_pb.FullEntry { diff --git a/weed/filer/filer_conf.go b/weed/filer/filer_conf.go index 5ff61ef94..e93279fba 100644 --- a/weed/filer/filer_conf.go +++ b/weed/filer/filer_conf.go @@ -190,6 +190,12 @@ func mergePathConf(a, b *filer_pb.FilerConf_PathConf) { a.DataNode = util.Nvl(b.DataNode, a.DataNode) a.DisableChunkDeletion = b.DisableChunkDeletion || a.DisableChunkDeletion a.Worm = b.Worm || a.Worm + if b.WormRetentionTimeSeconds > 0 { + a.WormRetentionTimeSeconds = b.WormRetentionTimeSeconds + } + if b.WormGracePeriodSeconds > 0 { + a.WormGracePeriodSeconds = b.WormGracePeriodSeconds + } } func (fc *FilerConf) ToProto() *filer_pb.FilerConf { |
