Update docs: Remove allowEmptyFolder references

The allowEmptyFolder CLI option has been removed from SeaweedFS.
Empty folder cleanup is now handled automatically by the EmptyFolderCleaner
which runs asynchronously in the background.
chrislusf
2025-12-06 21:52:53 -08:00
parent d28d43e51c
commit 5f06b2ba7b
3 changed files with 3 additions and 13 deletions
+1 -1
@@ -190,7 +190,7 @@ Metadata keys are case-insensitive and stored in canonical format (e.g., `x-amz-
SeaweedFS has directories while AWS S3 only has objects with "fake" directories. In AWS S3, if the last file is deleted in a directory, the directory will disappear also.
To be consistent with AWS S3, SeaweedFS tries to check whether the folder is empty after each deletion. You can use `weed s3 -allowEmptyFolder` to toggle this behavior.
To be consistent with AWS S3, SeaweedFS automatically cleans up empty folders asynchronously after file deletions.
# Server-Side Encryption
-2
@@ -143,7 +143,6 @@ PR ref: https://github.com/seaweedfs/seaweedfs/pull/5034
enableAuth: true
port: 8333
httpsPort: 0
allowEmptyFolder: false
createBuckets:
- name: shared
anonymousRead: false
@@ -561,7 +560,6 @@ PR ref: https://github.com/seaweedfs/seaweedfs/pull/5034
enableAuth: false
port: 8333
httpsPort: 0
allowEmptyFolder: false
livenessProbe:
periodSeconds: 5
readinessProbe:
+2 -10
@@ -41,17 +41,9 @@ Having separate LevelDB instance, or separate SQL tables, will help to isolate t
## Filer Metadata Store Growth
Due to the semantics of the S3 API, empty directories (aka prefixes) aren't shown. However, an entry is still stored in the filer metadata store. When workload access patterns create many unique directories and then remove all the objects inside those directories, the filer metadata store can grow unbounded with orphaned directories. These directories are visible in the filer metadata store itself, but not using the S3 API.
Due to the semantics of the S3 API, empty directories (aka prefixes) aren't shown. However, an entry is still stored in the filer metadata store. When workload access patterns create many unique directories and then remove all the objects inside those directories, the filer metadata store can grow with orphaned directories.
If the filer argument `-s3.allowEmptyFolder=false` is set, the orphaned directories are cleaned up during list requests for non bucket-level directories. Normally this works well, but if the workload never performs a list operation, the orphaned directories may never be cleaned up. To force cleanup, simply list an existing, non bucket-level directory.
Example using rclone:
```
rclone lsf seaweedfs:my-bucket/dir
```
If the directory `dir` exists in `my-bucket`, the orphaned metadata will be cleaned up. Note that due to slight API usage differences, `rclone ls` does not trigger cleanup, but `rclone lsf` will.
SeaweedFS now automatically cleans up empty folders asynchronously after file deletions using an event-driven cleanup mechanism. Empty folders are detected and removed in the background without impacting S3 API performance.
## Setting TTL