Chris Lu
e89768d429
use atomic.Bool for compaction flags to prevent concurrent vacuum races
...
The isCompacting and isCommitCompacting flags were plain bools
read and written from multiple goroutines without synchronization.
This allowed concurrent vacuums on the same volume to pass the
guard checks and run simultaneously, leading to the nil pointer
crash. Using atomic.Bool with CompareAndSwap ensures only one
compaction or commit can run per volume at a time.
Fixes #8591
2026-03-10 12:31:04 -07:00
..
2026-02-20 18:42:00 -08:00
2026-03-07 09:18:48 -08:00
2026-02-11 11:04:08 -08:00
2026-02-13 15:47:29 -08:00
2026-02-20 18:42:00 -08:00
2025-06-16 22:25:22 -07:00
2026-02-13 15:47:29 -08:00
2026-02-20 18:42:00 -08:00
2026-01-07 13:06:08 -08:00
2025-10-26 22:48:58 -07:00
2025-10-26 22:48:58 -07:00
2026-01-28 17:21:14 -08:00
2026-03-07 09:18:48 -08:00
2026-02-02 17:55:04 -08:00
2026-03-10 12:31:04 -07:00
2026-01-28 17:21:14 -08:00
2026-02-11 14:17:21 -08:00
2026-02-24 07:32:13 -08:00
2025-12-15 21:39:27 -08:00
2023-03-08 01:48:28 -08:00
2024-11-21 00:37:38 -08:00
2024-06-02 14:12:25 -07:00
2022-11-14 00:19:27 -08:00
2025-11-17 21:19:55 -08:00
2025-12-02 17:00:05 -08:00
2026-01-23 16:38:36 -08:00
2026-02-16 15:09:01 -08:00
2026-02-16 15:09:01 -08:00
2025-10-20 16:11:29 -07:00
2026-03-01 10:22:00 -08:00
2026-02-06 10:58:43 -08:00
2025-06-30 13:57:28 -07:00
2026-02-16 02:15:14 -08:00
2026-03-01 10:22:00 -08:00
2019-04-17 22:04:49 -07:00
2025-06-16 22:05:06 -07:00
2026-02-13 15:47:29 -08:00
2026-02-13 15:47:29 -08:00
2022-07-29 00:17:28 -07:00
2026-01-29 14:16:42 -08:00
2026-01-16 19:19:18 -08:00
2022-11-23 15:59:38 -08:00
2026-01-28 17:21:14 -08:00
2026-02-08 19:08:10 -08:00
2026-01-16 19:19:18 -08:00
2025-06-16 22:25:22 -07:00
2026-02-16 02:15:14 -08:00
2026-03-10 12:31:04 -07:00
2026-01-28 17:21:14 -08:00
2026-03-10 12:31:04 -07:00
2026-03-10 12:31:04 -07:00