From: Eric Wong Date: Thu, 6 May 2021 02:28:19 +0000 (+0000) Subject: lei_xsearch: fix accounting bugs in for remote mboxrd X-Git-Tag: v1.7.0~680 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=de20dc26cd22271327e8a84818ff0774cecc1361;p=public-inbox.git lei_xsearch: fix accounting bugs in for remote mboxrd We must not accumulate mset totals for messages which have already been counted. Furthermore, the combined search was being passed an extra arg and causing the total to go missing. --- diff --git a/lib/PublicInbox/LeiXSearch.pm b/lib/PublicInbox/LeiXSearch.pm index 21b15025..e69a4edd 100644 --- a/lib/PublicInbox/LeiXSearch.pm +++ b/lib/PublicInbox/LeiXSearch.pm @@ -139,7 +139,7 @@ sub mset_progress { pkt_do($lei->{pkt_op_p}, 'mset_progress', @_); } else { # single lei-daemon consumer my ($desc, $mset_size, $mset_total_est) = @_; - $lei->{-mset_total} += $mset_size; + $lei->{-mset_total} += $mset_size if $mset_total_est ne '?'; $lei->qerr("# $desc $mset_size/$mset_total_est"); } } @@ -238,7 +238,7 @@ sub query_combined_mset { # non-parallel for non-"--threads" users do { $mset = $self->mset($mo->{qstr}, $mo); mset_progress($lei, 'xsearch', $mset->size, - $mset->size, $mset->get_matches_estimated); + $mset->get_matches_estimated); wait_startq($lei); # wait for keyword updates for my $mitem ($mset->items) { my $smsg = smsg_for($self, $mitem) or next;