Since data going to git is the most important, always ensure
data is written to git before attempting to write anything to
SQLite or Xapian.
---
 lib/PublicInbox/LeiStore.pm   | 4 +---
 lib/PublicInbox/V2Writable.pm | 8 +-------
 2 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/lib/PublicInbox/LeiStore.pm b/lib/PublicInbox/LeiStore.pm
index 2eb09eca..0df2352c 100644
--- a/lib/PublicInbox/LeiStore.pm
+++ b/lib/PublicInbox/LeiStore.pm
@@ -573,9 +573,7 @@ sub set_xvmd {
 
 sub checkpoint {
        my ($self, $wait) = @_;
-       if (my $im = $self->{im}) {
-               $wait ? $im->barrier : $im->checkpoint;
-       }
+       $self->{im}->barrier if $self->{im};
        delete $self->{lms};
        $self->{priv_eidx}->checkpoint($wait);
 }
diff --git a/lib/PublicInbox/V2Writable.pm b/lib/PublicInbox/V2Writable.pm
index fb259396..43f37f60 100644
--- a/lib/PublicInbox/V2Writable.pm
+++ b/lib/PublicInbox/V2Writable.pm
@@ -507,13 +507,7 @@ sub set_last_commits ($) { # this is NOT for ExtSearchIdx
 sub checkpoint ($;$) {
        my ($self, $wait) = @_;
 
-       if (my $im = $self->{im}) {
-               if ($wait) {
-                       $im->barrier;
-               } else {
-                       $im->checkpoint;
-               }
-       }
+       $self->{im}->barrier if $self->{im};
        my $shards = $self->{idx_shards};
        if ($shards) {
                my $dbh = $self->{mm}->{dbh} if $self->{mm};

Reply via email to