summaryrefslogtreecommitdiffstats
path: root/src/indexer/segment_updater.rs
diff options
context:
space:
mode:
authorpetr-tik <petr-tik@users.noreply.github.com>2019-04-16 00:05:53 +0100
committerpetr-tik <petr-tik@users.noreply.github.com>2019-04-24 20:46:28 +0100
commit8e509213634ccbf82c3380e1b660ec1ffb735301 (patch)
treeccabf983d387fd1fd7dc48b5f9932e7a968f0db7 /src/indexer/segment_updater.rs
parent96a4f503ecd8f138862bf0a22948a600faf2b120 (diff)
Tidied up the Stamper module and upgraded to a 1.34 dependency
Added stamper.revert method to be used for rollback - rolling back to a previous commit in case of deleting all documents or rolling operations back should reset the stamper as well Added type alias for Opstamp - helps code readibility instead of seeing u64 returned by functions. Moved to AtomicU64 on stable rust (since 1.34) - where possible use standard library interfaces.
Diffstat (limited to 'src/indexer/segment_updater.rs')
-rw-r--r--src/indexer/segment_updater.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/indexer/segment_updater.rs b/src/indexer/segment_updater.rs
index 316dbd6..e0168a7 100644
--- a/src/indexer/segment_updater.rs
+++ b/src/indexer/segment_updater.rs
@@ -20,6 +20,7 @@ use indexer::merge_operation::MergeOperationInventory;
use indexer::merger::IndexMerger;
use indexer::stamper::Stamper;
use indexer::MergeOperation;
+use indexer::Opstamp;
use indexer::SegmentEntry;
use indexer::SegmentSerializer;
use indexer::{DefaultMergePolicy, MergePolicy};
@@ -224,7 +225,7 @@ impl SegmentUpdater {
///
/// Tne method returns copies of the segment entries,
/// updated with the delete information.
- fn purge_deletes(&self, target_opstamp: u64) -> Result<Vec<SegmentEntry>> {
+ fn purge_deletes(&self, target_opstamp: Opstamp) -> Result<Vec<SegmentEntry>> {
let mut segment_entries = self.0.segment_manager.segment_entries();
for segment_entry in &mut segment_entries {
let segment = self.0.index.segment(segment_entry.meta().clone());
@@ -233,7 +234,7 @@ impl SegmentUpdater {
Ok(segment_entries)
}
- pub fn save_metas(&self, opstamp: u64, commit_message: Option<String>) {
+ pub fn save_metas(&self, opstamp: Opstamp, commit_message: Option<String>) {
if self.is_alive() {
let index = &self.0.index;
let directory = index.directory();
@@ -280,7 +281,7 @@ impl SegmentUpdater {
.garbage_collect(|| self.0.segment_manager.list_files());
}
- pub fn commit(&self, opstamp: u64, payload: Option<String>) -> Result<()> {
+ pub fn commit(&self, opstamp: Opstamp, payload: Option<String>) -> Result<()> {
self.run_async(move |segment_updater| {
if segment_updater.is_alive() {
let segment_entries = segment_updater