+6
-11
server/src/db/handle.rs
+6
-11
server/src/db/handle.rs
···
17
17
use crate::{
18
18
db::{EventRecord, NsidHit, block},
19
19
error::AppResult,
20
-
utils::{
21
-
CLOCK, DefaultRateTracker, RateTracker, ReadVariableExt, WritableByteView,
22
-
varints_unsigned_encoded,
23
-
},
20
+
utils::{CLOCK, DefaultRateTracker, RateTracker, ReadVariableExt, varints_unsigned_encoded},
24
21
};
25
22
26
23
pub type ItemDecoder = block::ItemDecoder<Cursor<Slice>, NsidHit>;
27
-
pub type ItemEncoder = block::ItemEncoder<WritableByteView, NsidHit>;
24
+
pub type ItemEncoder = block::ItemEncoder<Vec<u8>, NsidHit>;
28
25
pub type Item = block::Item<NsidHit>;
29
26
30
27
pub struct Block {
31
28
pub written: usize,
32
29
pub key: ByteView,
33
-
pub data: ByteView,
30
+
pub data: Vec<u8>,
34
31
}
35
32
36
33
pub struct LexiconHandle {
···
184
181
)
185
182
.into());
186
183
}
187
-
let mut writer = ItemEncoder::new(
188
-
WritableByteView::with_size(ItemEncoder::encoded_len(count)),
189
-
count,
190
-
);
184
+
let mut writer =
185
+
ItemEncoder::new(Vec::with_capacity(ItemEncoder::encoded_len(count)), count);
191
186
let mut start_timestamp = None;
192
187
let mut end_timestamp = None;
193
188
let mut written = 0_usize;
···
212
207
return Ok(Block {
213
208
written,
214
209
key,
215
-
data: value.into_inner(),
210
+
data: value,
216
211
});
217
212
}
218
213
Err(std::io::Error::new(std::io::ErrorKind::WriteZero, "no items are in queue").into())