diff options
| author | Konstantin Lebedev <9497591+kmlebedev@users.noreply.github.com> | 2025-11-04 14:54:49 +0500 |
|---|---|---|
| committer | Konstantin Lebedev <9497591+kmlebedev@users.noreply.github.com> | 2025-11-04 14:54:49 +0500 |
| commit | 6a0d1e0b6fdb89596f75371430b46417fefe1879 (patch) | |
| tree | 24043db4559ce2036842dd008f468114716fb089 | |
| parent | 8d768885c5e336bb5aee257dc2b8666ab3fc456f (diff) | |
| download | seaweedfs-6a0d1e0b6fdb89596f75371430b46417fefe1879.tar.xz seaweedfs-6a0d1e0b6fdb89596f75371430b46417fefe1879.zip | |
filer delete meta and data
| -rw-r--r-- | weed/filer/filer.go | 7 | ||||
| -rw-r--r-- | weed/server/filer_server_handlers_write.go | 3 |
2 files changed, 8 insertions, 2 deletions
diff --git a/weed/filer/filer.go b/weed/filer/filer.go index b61da85f6..e92c81bbe 100644 --- a/weed/filer/filer.go +++ b/weed/filer/filer.go @@ -354,6 +354,9 @@ func (f *Filer) FindEntry(ctx context.Context, p util.FullPath) (entry *Entry, e if entry.IsExpireS3Enabled() { if entry.GetS3ExpireTime().Before(time.Now()) { f.Store.DeleteOneEntry(ctx, entry) + if delErr := f.doDeleteEntryMetaAndData(ctx, entry, false, true, nil); delErr != nil { + glog.ErrorfCtx(ctx, "FindEntry doDeleteEntryMetaAndData %s failed: %v", entry.FullPath, delErr) + } return nil, filer_pb.ErrNotFound } } else if entry.Crtime.Add(time.Duration(entry.TtlSec) * time.Second).Before(time.Now()) { @@ -374,7 +377,9 @@ func (f *Filer) doListDirectoryEntries(ctx context.Context, p util.FullPath, sta if entry.TtlSec > 0 { if entry.IsExpireS3Enabled() { if entry.GetS3ExpireTime().Before(time.Now()) { - f.Store.DeleteOneEntry(ctx, entry) + if delErr := f.doDeleteEntryMetaAndData(ctx, entry, false, true, nil); delErr != nil { + glog.ErrorfCtx(ctx, "doListDirectoryEntries doDeleteEntryMetaAndData %s failed: %v", entry.FullPath, delErr) + } return true } } else if entry.Crtime.Add(time.Duration(entry.TtlSec) * time.Second).Before(time.Now()) { diff --git a/weed/server/filer_server_handlers_write.go b/weed/server/filer_server_handlers_write.go index 31a4f4a41..1d897626c 100644 --- a/weed/server/filer_server_handlers_write.go +++ b/weed/server/filer_server_handlers_write.go @@ -98,8 +98,9 @@ func (fs *FilerServer) PostHandler(w http.ResponseWriter, r *http.Request, conte } return } + // Disable TTL-based (creation time) deletion when S3 expiry (modification time) is enabled if so.TtlSeconds > 0 { - if S3expiresEnabled := r.Header.Get(s3_constants.SeaweedFSExpiresS3); S3expiresEnabled != "" { + if s3ExpiresValue := r.Header.Get(s3_constants.SeaweedFSExpiresS3); s3ExpiresValue == "true" { so.TtlSeconds = 0 } } |
