Skip to content

Add --no-evict-root-childs flag#136

Open
VikNorway wants to merge 1 commit intoyandex-cloud:masterfrom
VikNorway:master
Open

Add --no-evict-root-childs flag#136
VikNorway wants to merge 1 commit intoyandex-cloud:masterfrom
VikNorway:master

Conversation

@VikNorway
Copy link

@VikNorway VikNorway commented Apr 4, 2025

Added the --no-evict-root-childs flag. It prevents eviction of child directories of the root inode and updates their ExpiredTime. It seems to work fine, but there is a small bug: when --entry-limit is small (less than the number of child directories), MetaEvictor starts an infinite loop of eviction attempts. When --entry-limit is large, everything works fine.
If one bucket is mounted and child folders are mounted as a volume in docker, geesefs crashed with the error "Bad file descriptor" after MetaEvictor run. After I excluded evicting child folders, the error no longer appears.
But I'm sure that the error will repeat if you mount a child folder of a child folder in docker. That is, for example, /mnt/data is the mount point of the bucket. Then mounting /mnt/data/dir1 in docker will not cause an error, but /mnt/data/dir1/subdir1 will.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant