mirror of
https://github.com/meilisearch/meilisearch.git
synced 2024-11-23 02:27:40 +08:00
introduce Dump TaskListIdentifier variant
This commit is contained in:
parent
5a5066023b
commit
737b891a41
@ -76,6 +76,7 @@ pub struct IndexController<U, I> {
|
|||||||
index_resolver: Arc<IndexResolver<U, I>>,
|
index_resolver: Arc<IndexResolver<U, I>>,
|
||||||
scheduler: Arc<RwLock<Scheduler>>,
|
scheduler: Arc<RwLock<Scheduler>>,
|
||||||
task_store: TaskStore,
|
task_store: TaskStore,
|
||||||
|
dump_path: PathBuf,
|
||||||
dump_handle: dump_actor::DumpActorHandleImpl,
|
dump_handle: dump_actor::DumpActorHandleImpl,
|
||||||
update_file_store: UpdateFileStore,
|
update_file_store: UpdateFileStore,
|
||||||
}
|
}
|
||||||
@ -89,6 +90,7 @@ impl<U, I> Clone for IndexController<U, I> {
|
|||||||
dump_handle: self.dump_handle.clone(),
|
dump_handle: self.dump_handle.clone(),
|
||||||
update_file_store: self.update_file_store.clone(),
|
update_file_store: self.update_file_store.clone(),
|
||||||
task_store: self.task_store.clone(),
|
task_store: self.task_store.clone(),
|
||||||
|
dump_path: self.dump_path.clone(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -234,7 +236,7 @@ impl IndexControllerBuilder {
|
|||||||
receiver,
|
receiver,
|
||||||
update_file_store.clone(),
|
update_file_store.clone(),
|
||||||
scheduler.clone(),
|
scheduler.clone(),
|
||||||
dump_path,
|
dump_path.clone(),
|
||||||
analytics_path,
|
analytics_path,
|
||||||
index_size,
|
index_size,
|
||||||
task_store_size,
|
task_store_size,
|
||||||
@ -269,6 +271,7 @@ impl IndexControllerBuilder {
|
|||||||
index_resolver,
|
index_resolver,
|
||||||
scheduler,
|
scheduler,
|
||||||
dump_handle,
|
dump_handle,
|
||||||
|
dump_path,
|
||||||
update_file_store,
|
update_file_store,
|
||||||
task_store,
|
task_store,
|
||||||
})
|
})
|
||||||
@ -425,6 +428,15 @@ where
|
|||||||
Ok(task)
|
Ok(task)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub async fn register_dump_task(&self) -> Result<Task> {
|
||||||
|
let content = TaskContent::Dump {
|
||||||
|
path: self.dump_path.clone(),
|
||||||
|
};
|
||||||
|
let task = self.task_store.register(None, content).await?;
|
||||||
|
self.scheduler.read().await.notify();
|
||||||
|
Ok(task)
|
||||||
|
}
|
||||||
|
|
||||||
pub async fn get_task(&self, id: TaskId, filter: Option<TaskFilter>) -> Result<Task> {
|
pub async fn get_task(&self, id: TaskId, filter: Option<TaskFilter>) -> Result<Task> {
|
||||||
let task = self.scheduler.read().await.get_task(id, filter).await?;
|
let task = self.scheduler.read().await.get_task(id, filter).await?;
|
||||||
Ok(task)
|
Ok(task)
|
||||||
|
Loading…
Reference in New Issue
Block a user