Benny Halevy
9e18cfbe17
sstable: add _mutate_sem to serialize link/move with components rewrite
...
We currently have races, like between moving an sstable from staging
using change_state, or when taking a snapshot, to e.g.
rewrite_statistics that replaces one of the sstable component files
when called, for example, from update_repaired_at by incremental repair.
Use a semaphore as a mutex to serialize those functions.
Note that there is no need for rwlock since the operations
are rare and read-only operations like snapshot don't
need to run in parallel.
Fixes #25919
Signed-off-by: Benny Halevy <bhalevy@scylladb.com >
2025-12-16 17:06:45 +02:00
..
2025-09-17 17:32:19 +03:00
2025-12-16 11:34:40 +02:00
2025-11-19 14:54:16 +02:00
2025-09-29 13:01:21 +02:00
2025-05-14 08:32:05 +02:00
2024-12-18 17:45:13 +02:00
2025-01-14 07:56:39 -05:00
2025-07-15 10:10:23 +03:00
2025-07-15 10:10:23 +03:00
2025-11-21 12:27:41 +02:00
2024-12-18 17:45:13 +02:00
2025-12-16 11:34:40 +02:00
2025-11-21 12:52:04 +01:00
2025-11-21 12:52:04 +01:00
2025-10-29 20:13:08 +02:00
2025-10-29 20:13:08 +02:00
2025-09-07 00:30:15 +02:00
2024-12-18 17:45:13 +02:00
2025-01-27 09:29:26 -05:00
2024-12-18 17:45:13 +02:00
2025-09-29 06:49:14 +03:00
2025-11-13 00:49:57 +01:00
2025-03-19 13:03:29 +03:00
2024-12-18 17:45:13 +02:00
2025-08-08 11:46:21 +03:00
2024-12-18 17:45:13 +02:00
2025-07-17 10:32:57 +02:00
2025-12-07 14:14:25 +02:00
2025-02-10 15:44:55 +03:00
2024-12-18 17:45:13 +02:00
2025-07-25 10:45:32 +03:00
2025-09-24 13:23:38 +03:00
2024-12-18 17:45:13 +02:00
2025-09-24 13:23:38 +03:00
2024-12-18 17:45:13 +02:00
2025-09-24 13:23:38 +03:00
2025-07-25 10:45:32 +03:00
2025-10-22 16:46:31 +02:00
2025-10-13 08:53:25 +00:00
2025-11-14 17:55:41 +02:00
2024-12-18 17:45:13 +02:00
2025-06-24 09:16:28 +03:00
2024-12-18 17:45:13 +02:00
2024-12-18 17:45:13 +02:00
2024-12-18 17:45:13 +02:00
2024-12-18 17:45:13 +02:00
2025-06-24 09:16:28 +03:00
2024-12-18 17:45:13 +02:00
2025-06-24 09:16:28 +03:00
2025-06-24 09:16:28 +03:00
2025-09-01 14:58:21 +03:00
2024-12-18 17:45:13 +02:00
2024-12-18 17:45:13 +02:00
2025-05-07 14:43:20 +02:00
2025-10-13 08:53:25 +00:00
2025-10-13 08:53:25 +00:00
2025-09-17 17:32:19 +03:00
2025-07-27 19:39:36 +03:00
2025-11-20 09:10:38 +02:00
2025-11-20 09:10:38 +02:00
2025-11-20 09:10:38 +02:00
2024-12-18 17:45:13 +02:00
2025-09-29 22:15:24 +02:00
2025-12-16 11:34:40 +02:00
2024-12-18 17:45:13 +02:00
2025-09-07 00:32:02 +02:00
2025-04-09 08:54:07 +03:00
2025-12-02 11:18:27 +03:00
2025-12-02 11:18:27 +03:00
2024-12-18 17:45:13 +02:00
2025-12-16 17:06:45 +02:00
2025-12-16 17:06:45 +02:00
2024-12-18 17:45:13 +02:00
2025-12-16 11:34:40 +02:00
2025-11-14 14:24:04 +03:00
2024-12-18 17:45:13 +02:00
2025-12-16 11:34:40 +02:00
2025-09-29 22:15:25 +02:00
2025-09-07 00:32:02 +02:00
2025-09-07 00:32:02 +02:00
2025-12-16 11:34:40 +02:00