mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-08-17 20:57:27 +00:00
Add infrastructure to buffer subscription events during directory cache refresh. When a directory is being refreshed from the filer (BeginRefresh), events from the subscription handler, local deletes, and local creates are buffered. When the refresh completes (CommitRefresh), the filer snapshot atomically replaces the cached entries, then buffered events are replayed to ensure no mutations are lost. This fixes a race condition where concurrent deletes or creates could be overwritten by a stale filer snapshot during directory refresh, causing ghost entries or lost files. Fixes #8442