about summary refs log tree commit homepage
path: root/lib/PublicInbox/V2Writable.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2020-12-15 02:02:21 +0000
committerEric Wong <e@80x24.org>2020-12-17 19:13:12 +0000
commitc014cd93de1f2c73348db0e6531f93cf0f1be60f (patch)
tree96777ae7fa13cb470cb09fe928bafce5a672670f /lib/PublicInbox/V2Writable.pm
parent35cca56ecb10649f7935d601ef513162e38cb3b8 (diff)
downloadpublic-inbox-c014cd93de1f2c73348db0e6531f93cf0f1be60f.tar.gz
--reindex can take many hours or days, ensure we release
locks according to --batch-size so automated fetch+index
jobs can write new data to indices while we update old data.
Diffstat (limited to 'lib/PublicInbox/V2Writable.pm')
-rw-r--r--lib/PublicInbox/V2Writable.pm2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/PublicInbox/V2Writable.pm b/lib/PublicInbox/V2Writable.pm
index 572eb418..97dbf328 100644
--- a/lib/PublicInbox/V2Writable.pm
+++ b/lib/PublicInbox/V2Writable.pm
@@ -884,7 +884,7 @@ sub reindex_checkpoint ($$) {
         my $mm_tmp = $sync->{mm_tmp};
         $mm_tmp->atfork_prepare if $mm_tmp;
         die 'BUG: {im} during reindex' if $self->{im};
-        if ($self->{ibx_map}) {
+        if ($self->{ibx_map} && !$sync->{checkpoint_unlocks}) {
                 checkpoint($self, 1); # no need to release lock on pure index
         } else {
                 $self->done; # release lock