mirror of
https://github.com/meilisearch/meilisearch.git
synced 2024-11-23 10:37:41 +08:00
Merge #350
350: Fix mdb val size error r=Kerollmops a=ManyTheFish Related to [#1677](https://github.com/meilisearch/MeiliSearch/issues/1677) Co-authored-by: many <maxime@meilisearch.com>
This commit is contained in:
commit
86c3b0c8c2
@ -67,14 +67,17 @@ pub fn extract_docid_word_positions<R: io::Read>(
|
|||||||
|
|
||||||
for (index, token) in tokens {
|
for (index, token) in tokens {
|
||||||
let token = token.text().trim();
|
let token = token.text().trim();
|
||||||
key_buffer.truncate(mem::size_of::<u32>());
|
if !token.is_empty() {
|
||||||
key_buffer.extend_from_slice(token.as_bytes());
|
key_buffer.truncate(mem::size_of::<u32>());
|
||||||
|
key_buffer.extend_from_slice(token.as_bytes());
|
||||||
|
|
||||||
let position: u32 = index
|
let position: u32 = index
|
||||||
.try_into()
|
.try_into()
|
||||||
.map_err(|_| SerializationError::InvalidNumberSerialization)?;
|
.map_err(|_| SerializationError::InvalidNumberSerialization)?;
|
||||||
let position = field_id as u32 * ONE_ATTRIBUTE + position;
|
let position = field_id as u32 * ONE_ATTRIBUTE + position;
|
||||||
docid_word_positions_sorter.insert(&key_buffer, &position.to_ne_bytes())?;
|
docid_word_positions_sorter
|
||||||
|
.insert(&key_buffer, &position.to_ne_bytes())?;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@ pub use merge_functions::{
|
|||||||
};
|
};
|
||||||
|
|
||||||
pub fn valid_lmdb_key(key: impl AsRef<[u8]>) -> bool {
|
pub fn valid_lmdb_key(key: impl AsRef<[u8]>) -> bool {
|
||||||
key.as_ref().len() <= 511
|
key.as_ref().len() <= 511 && !key.as_ref().is_empty()
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Divides one slice into two at an index, returns `None` if mid is out of bounds.
|
/// Divides one slice into two at an index, returns `None` if mid is out of bounds.
|
||||||
|
Loading…
Reference in New Issue
Block a user