Commits
- 28091a0: "Buffer list" refactoring (Vitaliy Filippov)
- 4d6691a: Update buffer refactoring for PATCH (Vitaliy Filippov)
- 9fecad5: Use CleanQueue for eviction with external "usage" filtering (Vitaliy Filippov)
- 3a71a9c: Remove LFRU, use common queues for dirty/clean inodes, add another LRU queue for disk FDs (Vitaliy Filippov)
- c3a4817: Use dirty queue for flushing and also use it for inode metadata state (Vitaliy Filippov)
- a37eb13: Split sendUpload() into multiple functions (Vitaliy Filippov)
- c3bbe93: Add a separate queue for dirty inodes (Vitaliy Filippov)
- 801b4cc: Scan only dirty parts during flush (Vitaliy Filippov)
- 90d2d4e: Rename to Queue/UnqueueCleanBuffer (Vitaliy Filippov)
- 1d054bb: Remove two FIXMEs left during refactoring (Vitaliy Filippov)
- e93c0ef: Add another FIXME (not refactoring-related) :-) (Vitaliy Filippov)
- 5620f4f: Scan dirty parts in write order... (Vitaliy Filippov)
- 52ff3e1: Add a FIXME about disk cache size limit (Vitaliy Filippov)
- 224cba0: Move "header part protection" to buffer states to avoid always re-scanning them (Vitaliy Filippov)
- 2552bdc: Fix WakeupFlusherAndWait being a spinlock (Vitaliy Filippov)
- c1972a4: Use split+delete instead of just cut for the sake of simpler code and optimised dirty part reference counting (Vitaliy Filippov)
- f010609: Add a test for split+delete and dirty part tracking (Vitaliy Filippov)
- cb2bb98: Fix hang on read introduced with refactoring + add a test for it (Vitaliy Filippov)
- a9a0e79: Fix another buffer cut bug and add a test for it too (Vitaliy Filippov)
- fc48aca: Close a FIXME - fix a hang when the only way to free memory is to flush some zeroes to the server (Vitaliy Filippov)
- 609c7b9: Fix eviction of FLUSHED_FULL buffers (Vitaliy Filippov)
- c6c85bb: Fix missing dirty part refcnt++ leading to fsync hangs (Vitaliy Filippov)
- 86f7b40: Add FIXME flapping RenameDir (also seen before refactoring) (Vitaliy Filippov)
- 5a34b20: Fix missing reassign of dirty ID (Vitaliy Filippov)
- 226a894: Fix a really nontrivial RemoveRange bug (Vitaliy Filippov)
- aca7ba8: Retry unexpected EOFs during reads too (Vitaliy Filippov)
- bdcbc1a: Mark 503 as retryable at the level of GeeseFS in addition to AWS SDK (Vitaliy Filippov)
- b1b0584: Do not use multipart copying for metadata-only updates (Vitaliy Filippov)
- 08664e5: Load metadata before changing it, otherwise it may be lost in non-yandex clouds (Vitaliy Filippov)
- fc391e8: Use MaxParallelParts instead of hardcoded 128 for CopyPart parallelism (Vitaliy Filippov)
- 1f1f038: Release 0.40.0 (Vitaliy Filippov)