pub struct EagerParallelStoreWriter<'a> { /* private fields */ }Expand description
Parallel document store writer - compresses blocks immediately when queued
A fixed number of workers compress blocks while the caller continues accepting documents. Submitted blocks and out-of-order results are bounded, and completed blocks are written continuously in sequence order.
Implementations§
Source§impl<'a> EagerParallelStoreWriter<'a>
impl<'a> EagerParallelStoreWriter<'a>
Sourcepub fn new(writer: &'a mut dyn Write, num_threads: usize) -> Self
pub fn new(writer: &'a mut dyn Write, num_threads: usize) -> Self
Create a new eager parallel store writer
Sourcepub fn with_compression_level(
writer: &'a mut dyn Write,
num_threads: usize,
compression_level: CompressionLevel,
) -> Self
pub fn with_compression_level( writer: &'a mut dyn Write, num_threads: usize, compression_level: CompressionLevel, ) -> Self
Create with specific compression level
Sourcepub fn with_dict(
writer: &'a mut dyn Write,
dict: CompressionDict,
num_threads: usize,
) -> Self
pub fn with_dict( writer: &'a mut dyn Write, dict: CompressionDict, num_threads: usize, ) -> Self
Create with dictionary
Sourcepub fn with_dict_and_level(
writer: &'a mut dyn Write,
dict: CompressionDict,
num_threads: usize,
compression_level: CompressionLevel,
) -> Self
pub fn with_dict_and_level( writer: &'a mut dyn Write, dict: CompressionDict, num_threads: usize, compression_level: CompressionLevel, ) -> Self
Create with dictionary and specific compression level
pub fn store(&mut self, doc: &Document, schema: &Schema) -> Result<DocId>
Sourcepub fn store_raw(&mut self, doc_bytes: &[u8]) -> Result<DocId>
pub fn store_raw(&mut self, doc_bytes: &[u8]) -> Result<DocId>
Store pre-serialized document bytes directly (avoids deserialize+reserialize roundtrip).
pub fn finish(self) -> Result<u32>
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for EagerParallelStoreWriter<'a>
impl<'a> !Send for EagerParallelStoreWriter<'a>
impl<'a> !Sync for EagerParallelStoreWriter<'a>
impl<'a> !UnwindSafe for EagerParallelStoreWriter<'a>
impl<'a> Freeze for EagerParallelStoreWriter<'a>
impl<'a> Unpin for EagerParallelStoreWriter<'a>
impl<'a> UnsafeUnpin for EagerParallelStoreWriter<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more