From 7dfd081e0db8229791352293c6fbb57ed33fee3c Mon Sep 17 00:00:00 2001 From: Nadav Har'El Date: Tue, 21 Jan 2020 11:25:38 +0200 Subject: [PATCH] alternator: make "executor" a peering_sharded_service Alternator uses a sharded for handling execution of Alternator requests on different shards. In this patch we make executor a subclass of peering_sharded_service, to allow one of these executors to run an exector method on a different shard: Any one of the shard-local executor instances can call container() to get the full sharded. We will need this capability later, when we need to bounce requests between shards because of requirements of the storage_proxy::cas (LWT) code. Signed-off-by: Nadav Har'El --- alternator/executor.hh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/alternator/executor.hh b/alternator/executor.hh index 142d3f996d..a0f5778ce3 100644 --- a/alternator/executor.hh +++ b/alternator/executor.hh @@ -25,6 +25,7 @@ #include #include "seastarx.hh" #include +#include #include "service/storage_proxy.hh" #include "service/migration_manager.hh" @@ -34,7 +35,7 @@ namespace alternator { -class executor { +class executor : public peering_sharded_service { service::storage_proxy& _proxy; service::migration_manager& _mm;