Files
seaweedfs/weed/util
Konstantin Lebedev 084b377f87 do delete expired entries on s3 list request (#7426)
* do delete expired entries on s3 list request
https://github.com/seaweedfs/seaweedfs/issues/6837

* disable delete expires s3 entry in filer

* pass opt allowDeleteObjectsByTTL to all servers

* delete on get and head

* add lifecycle expiration s3 tests

* fix opt allowDeleteObjectsByTTL for server

* fix test lifecycle expiration

* fix IsExpired

* fix locationPrefix for updateEntriesTTL

* fix s3tests

* resolv  coderabbitai

* GetS3ExpireTime on filer

* go mod

* clear TtlSeconds for volume

* move s3 delete expired entry to filer

* filer delete meta and data

* del unusing func removeExpiredObject

* test s3 put

* test s3 put multipart

* allowDeleteObjectsByTTL by default

* fix pipline tests

* rm dublicate SeaweedFSExpiresS3

* revert expiration tests

* fix updateTTL

* rm log

* resolv comment

* fix delete version object

* fix S3Versioning

* fix delete on FindEntry

* fix delete chunks

* fix sqlite not support concurrent writes/reads

* move deletion out of listing transaction; delete entries and empty folders

* Revert "fix sqlite not support concurrent writes/reads"

This reverts commit 5d5da14e0e.

* clearer handling on recursive empty directory deletion

* handle listing errors

* strut copying

* reuse code to delete empty folders

* use iterative approach with a queue to avoid recursive WithFilerClient calls

* stop a gRPC stream from the client-side callback is to return a specific error, e.g., io.EOF

* still issue UpdateEntry when the flag must be added

* errors join

* join path

* cleaner

* add context, sort directories by depth (deepest first) to avoid redundant checks

* batched operation, refactoring

* prevent deleting bucket

* constant

* reuse code

* more logging

* refactoring

* s3 TTL time

* Safety check

---------

Co-authored-by: chrislu <chris.lu@gmail.com>
2025-11-05 22:05:54 -08:00
..
2023-11-26 11:47:20 -08:00
2019-11-17 11:40:36 +08:00
2025-10-29 10:40:03 -07:00
2022-08-15 01:05:35 -07:00
2025-11-03 13:39:39 -08:00
2021-04-27 10:37:24 +08:00
2024-08-07 10:42:00 -07:00
2021-08-20 18:38:18 +08:00
2025-10-31 12:49:04 -07:00
2025-06-03 22:46:10 -07:00
2025-06-03 22:46:10 -07:00
2021-09-01 02:45:42 -07:00
2021-09-01 02:45:42 -07:00
2022-09-25 17:43:42 -07:00
2022-09-25 17:43:42 -07:00
2022-09-25 13:34:55 -07:00
2023-09-21 23:51:32 -07:00
2021-04-27 10:37:24 +08:00
2025-10-31 11:58:10 -07:00
2024-07-07 23:44:36 -07:00
2023-10-01 11:36:27 -07:00
2024-10-31 08:40:05 -07:00