* [PATCH 0/8] extindex and then some...
@ 2021-10-10 14:25 5% Eric Wong
2021-10-10 14:25 7% ` [PATCH 8/8] extindex: sync each inbox before checking for missed messages Eric Wong
0 siblings, 1 reply; 2+ results
From: Eric Wong @ 2021-10-10 14:25 UTC (permalink / raw)
To: meta
One notable fix for -extindex --gc, a couple of minor things
here and there. Still need to speed up --reindex...
Eric Wong (8):
lei_to_mail: show --output on augment progress failure
admin: add '# ' prefix for progress messages
set nodatacow on more SQLite files
extindex: speed up Xapian cleanup in --gc
extindex: minor cost reductions
extindex: --gc doesn't touch ghost entries
lei/store: keep ".err-XXXX" in stderr tmpfile
extindex: sync each inbox before checking for missed messages
lib/PublicInbox/Admin.pm | 2 +-
lib/PublicInbox/ExtSearchIdx.pm | 51 +++++++++++++++++++++------------
lib/PublicInbox/LeiStore.pm | 2 +-
lib/PublicInbox/LeiToMail.pm | 2 +-
lib/PublicInbox/Over.pm | 4 ++-
lib/PublicInbox/SearchIdx.pm | 3 ++
lib/PublicInbox/SharedKV.pm | 3 +-
7 files changed, 43 insertions(+), 24 deletions(-)
^ permalink raw reply [relevance 5%]
* [PATCH 8/8] extindex: sync each inbox before checking for missed messages
2021-10-10 14:25 5% [PATCH 0/8] extindex and then some Eric Wong
@ 2021-10-10 14:25 7% ` Eric Wong
0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2021-10-10 14:25 UTC (permalink / raw)
To: meta
Otherwise, it gets too noisy and we repeat some work
when we do an actual sync, since the last_commit info
will be out-of-date.
---
lib/PublicInbox/ExtSearchIdx.pm | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/PublicInbox/ExtSearchIdx.pm b/lib/PublicInbox/ExtSearchIdx.pm
index acf35e3d..d589d2c0 100644
--- a/lib/PublicInbox/ExtSearchIdx.pm
+++ b/lib/PublicInbox/ExtSearchIdx.pm
@@ -812,6 +812,9 @@ sub _reindex_check_unseen ($$$) {
my $ibx_id = $ibx->{-ibx_id};
my $slice = 1000;
my ($beg, $end) = (1, $slice);
+ my $err = sync_inbox($self, $sync, $ibx) and return;
+ my $max = $ibx->over->max;
+ $end = $max if $end > $max;
# first, check if we missed any messages in target $ibx
my $msgs;
@@ -825,6 +828,7 @@ sub _reindex_check_unseen ($$$) {
${$sync->{nr}} = $beg;
$beg = $msgs->[-1]->{num} + 1;
$end = $beg + $slice;
+ $end = $max if $end > $max;
if (checkpoint_due($sync)) {
reindex_checkpoint($self, $sync); # release lock
}
@@ -952,6 +956,7 @@ sub sync_inbox {
my $err = _sync_inbox($self, $sync, $ibx);
delete @$ibx{qw(mm over)};
warn $err, "\n" if defined($err);
+ $err;
}
sub dd_smsg { # git->cat_async callback
^ permalink raw reply related [relevance 7%]
Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2021-10-10 14:25 5% [PATCH 0/8] extindex and then some Eric Wong
2021-10-10 14:25 7% ` [PATCH 8/8] extindex: sync each inbox before checking for missed messages Eric Wong
Code repositories for project(s) associated with this public inbox
https://80x24.org/public-inbox.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).