Calle Wilund
995ffd6ee0
storage_proxy: Make split_stats resilient to being called from different scheduling group
...
Fixes #11017
When doing writes, storage proxy creates types deriving from abstract_write_response_handler.
These are created in the various scheduling groups executing the write inducing code. They
pick up a group-local reference to the various metrics used by SP. Normally all code
using (and esp. modifying) these metrics are executed in the same scheduling group.
However, if gossip sees a node go down, it will notify listeners, which eventually
calls get_ep_stat and register_metrics.
This code (before this patch) uses _active_ scheduling group to eventually add
metrics, using a local dict as guard against double regs. If, as described above,
we're called in a different sched group than the original one however, this
can cause double registrations.
Fixed here by keeping a reference to creating scheduling group and using this, not
active one, when/if creating new metrics.
Closes #14294
(cherry picked from commit f18e967939 )
2023-07-11 11:42:28 +03:00
..
2023-03-07 17:54:53 +08:00
2023-05-02 11:04:05 +03:00
2023-04-07 20:32:28 +08:00
2023-02-28 21:56:53 +08:00
2023-02-01 20:14:51 -03:00
2023-03-22 13:48:50 +02:00
2023-02-01 20:14:51 -03:00
2023-02-15 11:01:50 +02:00
2023-03-21 13:15:12 +02:00
2023-02-15 11:01:50 +02:00
2023-02-14 11:19:03 +02:00
2023-02-01 20:14:51 -03:00
2023-05-07 17:17:36 +03:00
2023-02-15 11:01:50 +02:00
2023-03-21 13:15:12 +02:00
2023-02-19 12:58:22 +08:00
2023-02-01 20:14:51 -03:00
2023-05-17 09:51:51 +03:00
2023-02-01 20:14:51 -03:00
2023-03-22 04:58:01 -04:00
2023-02-15 11:01:50 +02:00
2023-02-01 20:14:51 -03:00
2023-04-19 05:20:42 -04:00
2023-02-15 11:01:50 +02:00
2023-02-01 20:14:51 -03:00
2023-05-07 17:17:36 +03:00
2023-02-15 11:01:50 +02:00
2023-05-07 17:17:36 +03:00
2023-02-15 11:01:50 +02:00
2023-05-07 17:17:36 +03:00
2022-11-16 16:30:38 +02:00
2023-04-17 14:08:37 +03:00
2023-06-07 13:29:48 +03:00
2023-02-01 20:14:51 -03:00
2023-04-27 10:24:46 +03:00
2023-02-15 11:09:04 +02:00
2023-02-28 21:56:53 +08:00
2023-02-01 20:14:51 -03:00
2023-04-29 13:11:31 +02:00
2023-02-28 21:56:53 +08:00
2023-02-01 20:14:51 -03:00
2023-05-02 07:58:34 +03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-15 11:01:50 +02:00
2023-02-28 21:56:53 +08:00
2023-05-07 17:17:36 +03:00
2023-02-01 20:14:51 -03:00
2023-04-24 14:06:43 +03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-19 21:05:45 +02:00
2023-02-19 21:05:45 +02:00
2023-02-01 20:14:51 -03:00
2023-03-21 13:15:12 +02:00
2023-02-01 20:14:51 -03:00
2023-04-20 23:39:18 +02:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-04-17 14:08:37 +03:00
2023-03-21 13:15:12 +02:00
2023-02-15 11:01:50 +02:00
2023-04-05 10:32:58 +02:00
2023-05-02 09:42:41 -04:00
2023-02-15 11:01:50 +02:00
2023-07-11 11:38:33 +03:00
2023-05-03 04:19:42 -04:00
2023-02-28 21:56:53 +08:00
2023-02-28 21:56:53 +08:00
2023-04-24 10:49:37 +02:00
2023-02-15 11:01:50 +02:00
2023-04-24 10:49:37 +02:00
2023-02-14 11:19:03 +02:00
2023-04-26 07:41:57 -04:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-15 11:01:50 +02:00
2023-02-14 11:19:03 +02:00
2023-04-26 09:00:25 +03:00
2023-02-28 21:56:53 +08:00
2023-05-14 14:14:23 +03:00
2023-02-03 19:04:32 +01:00
2023-02-28 21:56:53 +08:00
2023-02-01 20:14:51 -03:00
2023-02-28 21:56:53 +08:00
2023-04-26 22:09:17 +02:00
2023-02-01 20:14:51 -03:00
2023-05-02 07:58:34 +03:00
2023-05-07 19:51:10 -03:00
2023-04-27 09:40:18 +02:00
2023-03-22 13:59:47 +02:00
2023-02-01 20:14:51 -03:00
2023-02-15 11:01:50 +02:00
2023-03-07 17:54:53 +08:00
2023-04-21 09:43:53 +03:00
2023-05-11 16:31:23 +03:00
2023-04-27 10:24:46 +03:00
2023-04-27 10:24:46 +03:00
2023-02-28 21:56:53 +08:00
2023-05-19 11:21:35 +03:00
2023-06-06 11:59:31 +03:00
2023-06-29 12:04:13 +03:00
2023-05-12 17:52:12 +03:00
2023-05-12 13:22:32 +08:00
2023-05-11 12:32:22 +08:00
2023-05-11 12:32:22 +08:00
2023-02-17 17:58:26 +03:00
2023-05-06 18:24:48 +08:00
2023-05-17 11:31:07 +03:00
2023-05-11 12:32:22 +08:00
2023-03-22 13:59:47 +02:00
2023-04-23 21:34:02 +03:00
2023-04-29 13:11:31 +02:00
2023-07-11 11:42:28 +03:00
2023-05-16 08:56:16 +03:00
2023-03-27 01:44:00 -04:00
2023-04-24 10:49:37 +02:00
2023-05-15 10:19:39 +03:00
2023-05-09 18:42:03 +04:00
2023-04-17 14:08:37 +03:00
2023-02-15 11:09:04 +02:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-19 21:05:45 +02:00
2023-03-09 17:51:15 +01:00
2023-02-28 21:56:53 +08:00
2023-04-26 14:09:58 +08:00
2023-05-02 07:58:34 +03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-02-01 20:14:51 -03:00
2023-03-16 20:34:18 +08:00
2023-03-06 13:17:21 +03:00
2023-02-15 11:01:50 +02:00
2023-02-01 20:14:51 -03:00
2023-03-28 18:18:48 +02:00
2023-03-28 18:18:48 +02:00