mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-05-17 17:53:57 +02:00
Display more detailed error message instead of panic
This commit is contained in:
parent
2500e3c067
commit
e019ad7692
@ -13,7 +13,7 @@ use crate::index::IndexEmbeddingConfig;
|
|||||||
use crate::progress::Progress;
|
use crate::progress::Progress;
|
||||||
use crate::update::settings::InnerIndexSettings;
|
use crate::update::settings::InnerIndexSettings;
|
||||||
use crate::vector::{ArroyWrapper, Embedder, EmbeddingConfigs, Embeddings};
|
use crate::vector::{ArroyWrapper, Embedder, EmbeddingConfigs, Embeddings};
|
||||||
use crate::{Error, Index, InternalError, Result};
|
use crate::{Error, Index, InternalError, Result, UserError};
|
||||||
|
|
||||||
pub fn write_to_db(
|
pub fn write_to_db(
|
||||||
mut writer_receiver: WriterBbqueueReceiver<'_>,
|
mut writer_receiver: WriterBbqueueReceiver<'_>,
|
||||||
@ -218,6 +218,12 @@ pub fn write_from_bbqueue(
|
|||||||
arroy_writers.get(&embedder_id).expect("requested a missing embedder");
|
arroy_writers.get(&embedder_id).expect("requested a missing embedder");
|
||||||
let mut embeddings = Embeddings::new(*dimensions);
|
let mut embeddings = Embeddings::new(*dimensions);
|
||||||
let all_embeddings = asvs.read_all_embeddings_into_vec(frame, aligned_embedding);
|
let all_embeddings = asvs.read_all_embeddings_into_vec(frame, aligned_embedding);
|
||||||
|
if all_embeddings.len() != *dimensions {
|
||||||
|
return Err(Error::UserError(UserError::InvalidVectorDimensions {
|
||||||
|
expected: *dimensions,
|
||||||
|
found: all_embeddings.len(),
|
||||||
|
}));
|
||||||
|
}
|
||||||
embeddings.append(all_embeddings.to_vec()).unwrap();
|
embeddings.append(all_embeddings.to_vec()).unwrap();
|
||||||
writer.del_items(wtxn, *dimensions, docid)?;
|
writer.del_items(wtxn, *dimensions, docid)?;
|
||||||
writer.add_items(wtxn, docid, &embeddings)?;
|
writer.add_items(wtxn, docid, &embeddings)?;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user