mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-05-14 16:23:57 +02:00
Use a NonZeroUsize to store the prefix buffer length
This commit is contained in:
parent
44586e089d
commit
8d9eb2a7c4
@ -1,6 +1,7 @@
|
|||||||
use std::cell::RefCell;
|
use std::cell::RefCell;
|
||||||
use std::collections::BTreeSet;
|
use std::collections::BTreeSet;
|
||||||
use std::io::{BufReader, BufWriter, Read, Seek, Write};
|
use std::io::{BufReader, BufWriter, Read, Seek, Write};
|
||||||
|
use std::num::NonZeroUsize;
|
||||||
|
|
||||||
use hashbrown::HashMap;
|
use hashbrown::HashMap;
|
||||||
use heed::types::Bytes;
|
use heed::types::Bytes;
|
||||||
@ -217,7 +218,7 @@ impl WordPrefixIntegerDocids {
|
|||||||
index.push(PrefixIntegerEntry {
|
index.push(PrefixIntegerEntry {
|
||||||
prefix,
|
prefix,
|
||||||
pos,
|
pos,
|
||||||
serialized_length: Some(buffer.len()),
|
serialized_length: NonZeroUsize::new(buffer.len()),
|
||||||
});
|
});
|
||||||
file.write_all(buffer)?;
|
file.write_all(buffer)?;
|
||||||
}
|
}
|
||||||
@ -243,7 +244,7 @@ impl WordPrefixIntegerDocids {
|
|||||||
key_buffer.extend_from_slice(&pos.to_be_bytes());
|
key_buffer.extend_from_slice(&pos.to_be_bytes());
|
||||||
match serialized_length {
|
match serialized_length {
|
||||||
Some(serialized_length) => {
|
Some(serialized_length) => {
|
||||||
buffer.resize(serialized_length, 0);
|
buffer.resize(serialized_length.get(), 0);
|
||||||
file.read_exact(&mut buffer)?;
|
file.read_exact(&mut buffer)?;
|
||||||
self.prefix_database.remap_data_type::<Bytes>().put(
|
self.prefix_database.remap_data_type::<Bytes>().put(
|
||||||
wtxn,
|
wtxn,
|
||||||
@ -266,7 +267,7 @@ impl WordPrefixIntegerDocids {
|
|||||||
struct PrefixIntegerEntry<'a> {
|
struct PrefixIntegerEntry<'a> {
|
||||||
prefix: &'a str,
|
prefix: &'a str,
|
||||||
pos: u16,
|
pos: u16,
|
||||||
serialized_length: Option<usize>,
|
serialized_length: Option<NonZeroUsize>,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// TODO doc
|
/// TODO doc
|
||||||
|
Loading…
x
Reference in New Issue
Block a user