Skip to content

Commit 901d3e5

Browse files
committed
feat: Pipeline swap endpoint
Signed-off-by: Darkheir <raphael.cohen@sekoia.io>
1 parent 833b3f1 commit 901d3e5

8 files changed

Lines changed: 1259 additions & 4 deletions

File tree

quickwit/quickwit-control-plane/src/control_plane.rs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ use quickwit_metastore::{CreateIndexRequestExt, CreateIndexResponseExt, IndexMet
4141
use quickwit_proto::control_plane::{
4242
AdviseResetShardsRequest, AdviseResetShardsResponse, ControlPlaneError, ControlPlaneResult,
4343
GetOrCreateOpenShardsRequest, GetOrCreateOpenShardsResponse, GetOrCreateOpenShardsSubrequest,
44+
SwapIndexingPipelinesRequest, SwapIndexingPipelinesResponse,
4445
};
4546
use quickwit_proto::indexing::ShardPositionsUpdate;
4647
use quickwit_proto::metastore::{
@@ -953,6 +954,20 @@ impl Handler<AdviseResetShardsRequest> for ControlPlane {
953954
}
954955
}
955956

957+
#[async_trait]
958+
impl Handler<SwapIndexingPipelinesRequest> for ControlPlane {
959+
type Reply = ControlPlaneResult<SwapIndexingPipelinesResponse>;
960+
961+
async fn handle(
962+
&mut self,
963+
request: SwapIndexingPipelinesRequest,
964+
_ctx: &ActorContext<Self>,
965+
) -> Result<Self::Reply, ActorExitStatus> {
966+
let response = self.indexing_scheduler.swap_pipelines(request);
967+
Ok(response)
968+
}
969+
}
970+
956971
#[async_trait]
957972
impl Handler<LocalShardsUpdate> for ControlPlane {
958973
type Reply = ControlPlaneResult<()>;

0 commit comments

Comments
 (0)