From 0c6d38221ec9fbf9d7c7e0329252b10f17ab7a27 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 23 May 2019 09:36:52 +0000 Subject: xcpdb: use fine-grained locking Copying an entire Xapian DB takes a long time, so update our reindexing code to support partial reindexing, snapshot the pre-copydatabase git revisions, perform the lengthy copy, and do a partial reindex when the copy + renames are done. --- lib/PublicInbox/Admin.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/PublicInbox/Admin.pm') diff --git a/lib/PublicInbox/Admin.pm b/lib/PublicInbox/Admin.pm index 94f47abb..34aa3129 100644 --- a/lib/PublicInbox/Admin.pm +++ b/lib/PublicInbox/Admin.pm @@ -141,7 +141,7 @@ sub index_inbox { if (ref($ibx) && ($ibx->{version} || 1) == 2) { eval { require PublicInbox::V2Writable }; die "v2 requirements not met: $@\n" if $@; - my $v2w = eval { + my $v2w = eval { $ibx->importer(0) } || eval { PublicInbox::V2Writable->new($ibx, {nproc=>$jobs}); }; if (defined $jobs) { -- cgit v1.2.3-24-ge0c7