user/dev discussion of public-inbox itself
 help / color / Atom feed
* [PATCH] index: v2: parallelize if --reindex or --jobs is specified
@ 2020-05-17  0:08 Eric Wong
  0 siblings, 0 replies; only message in thread
From: Eric Wong @ 2020-05-17  0:08 UTC (permalink / raw)
  To: meta

`--reindex' involves chomping down lots of mail, so it benefits
from parallelization just like the initial indexing.  It's
also a bit surprising to specify `--jobs/-j' without parallel
processes, so ensure we turn on parallelization there, too.

We can simplify initialization here, as well, since neither
`eval' nor `V2Writable->new' should be in this code.
---
 lib/PublicInbox/Admin.pm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/lib/PublicInbox/Admin.pm b/lib/PublicInbox/Admin.pm
index 2c8d191a..e42b01e0 100644
--- a/lib/PublicInbox/Admin.pm
+++ b/lib/PublicInbox/Admin.pm
@@ -191,9 +191,8 @@ sub index_inbox {
 	if (ref($ibx) && $ibx->version == 2) {
 		eval { require PublicInbox::V2Writable };
 		die "v2 requirements not met: $@\n" if $@;
-		my $v2w = $im // eval { $ibx->importer(0) } || eval {
-			PublicInbox::V2Writable->new($ibx, {nproc=>$jobs});
-		};
+		$ibx->{-creat_opt}->{nproc} = $jobs;
+		my $v2w = $im // $ibx->importer($opt->{reindex} // $jobs);
 		if (defined $jobs) {
 			if ($jobs == 0) {
 				$v2w->{parallel} = 0;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-17  0:08 [PATCH] index: v2: parallelize if --reindex or --jobs is specified Eric Wong

user/dev discussion of public-inbox itself

Archives are clonable:
	git clone --mirror http://public-inbox.org/meta
	git clone --mirror http://czquwvybam4bgbro.onion/meta
	git clone --mirror http://hjrcffqmbrq6wope.onion/meta
	git clone --mirror http://ou63pmih66umazou.onion/meta

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.mail.public-inbox.meta
	nntp://ou63pmih66umazou.onion/inbox.comp.mail.public-inbox.meta
	nntp://czquwvybam4bgbro.onion/inbox.comp.mail.public-inbox.meta
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.mail.public-inbox.meta
	nntp://news.gmane.io/gmane.mail.public-inbox.general

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git