Fix many indexing and searching related bugs

This commit is contained in:
Clément Renault 2019-10-08 14:53:35 +02:00
parent 2236ebbd42
commit d8d0442d63
No known key found for this signature in database
GPG key ID: 92ADA4E935E71FA4
9 changed files with 99 additions and 28 deletions

View file

@ -130,10 +130,14 @@ pub fn apply_documents_deletion(
if documents_fields_store.del_all_document_fields(writer, id)? != 0 {
deleted_documents.insert(id);
}
docs_words_store.del_doc_words(writer, id)?;
}
}
let deleted_documents_len = deleted_documents.len() as u64;
for id in deleted_documents {
docs_words_store.del_doc_words(writer, id)?;
}
let removed_words = fst::Set::from_iter(removed_words).unwrap();
let words = match main_store.words_fst(writer)? {
Some(words_set) => {
@ -155,7 +159,6 @@ pub fn apply_documents_deletion(
main_store.put_words_fst(writer, &words)?;
main_store.put_ranked_map(writer, &ranked_map)?;
let deleted_documents_len = deleted_documents.len() as u64;
main_store.put_number_of_documents(writer, |old| old - deleted_documents_len)?;
Ok(())

View file

@ -151,6 +151,8 @@ pub fn update_task(
None => return Ok(false),
};
debug!("Processing update number {}", update_id);
let (update_type, result, duration) = match update {
Update::SchemaUpdate(schema) => {
let start = Instant::now();