Pass a progress callback to recompute_word_fst_from_word_docids_database

fixes https://github.com/meilisearch/meilisearch/pull/5494#discussion_r2069377991
This commit is contained in:
ManyTheFish 2025-05-05 16:23:01 +02:00
parent a964251cee
commit 73e4206b3c
2 changed files with 8 additions and 10 deletions

View File

@ -131,7 +131,12 @@ fn compute_word_fst(
}
}
pub fn recompute_word_fst_from_word_docids_database(index: &Index, wtxn: &mut RwTxn) -> Result<()> {
pub fn recompute_word_fst_from_word_docids_database(
index: &Index,
wtxn: &mut RwTxn,
progress: &Progress,
) -> Result<()> {
progress.update_progress(PostProcessingWords::WordFst);
let fst = fst::Set::default().map_data(std::borrow::Cow::Owned)?;
let mut word_fst_builder = WordFstBuilder::new(&fst)?;
let words = index.word_docids.iter(wtxn)?.remap_data_type::<DecodeIgnore>();

View File

@ -3,7 +3,7 @@ use heed::RwTxn;
use super::UpgradeIndex;
use crate::progress::Progress;
use crate::update::new::indexer::recompute_word_fst_from_word_docids_database;
use crate::{make_enum_progress, Index, Result};
use crate::{Index, Result};
#[allow(non_camel_case_types)]
pub(super) struct Latest_V1_14_To_Latest_V1_15();
@ -17,14 +17,7 @@ impl UpgradeIndex for Latest_V1_14_To_Latest_V1_15 {
progress: Progress,
) -> Result<bool> {
// Recompute the word FST from the word docids database.
make_enum_progress! {
enum TypoTolerance {
RecomputeWordFst,
}
};
progress.update_progress(TypoTolerance::RecomputeWordFst);
recompute_word_fst_from_word_docids_database(index, wtxn)?;
recompute_word_fst_from_word_docids_database(index, wtxn, &progress)?;
Ok(false)
}