This will make it easier to reuse some indexing code for ExtSearchIdx.
my $eml = PublicInbox::Eml->new($$bref);
my $mids = mids($eml);
my $chash = content_hash($eml);
my $eml = PublicInbox::Eml->new($$bref);
my $mids = mids($eml);
my $chash = content_hash($eml);
- my $self = $arg->{v2w};
+ my $self = $arg->{self};
if (scalar(@$mids) == 0) {
warn "E: $oid has no Message-ID, skipping\n";
if (scalar(@$mids) == 0) {
warn "E: $oid has no Message-ID, skipping\n";
# our code and blindly injects "d" file history into git repos
if (my @leftovers = keys %{delete($sync->{D}) // {}}) {
warn('W: unindexing '.scalar(@leftovers)." leftovers\n");
# our code and blindly injects "d" file history into git repos
if (my @leftovers = keys %{delete($sync->{D}) // {}}) {
warn('W: unindexing '.scalar(@leftovers)." leftovers\n");
- my $arg = { v2w => $self };
+ my $arg = { self => $self };
my $unindex_oid = $self->can('unindex_oid');
for my $oid (@leftovers) {
$oid = unpack('H*', $oid);
my $unindex_oid = $self->can('unindex_oid');
for my $oid (@leftovers) {
$oid = unpack('H*', $oid);
sub unindex_oid ($$;$) { # git->cat_async callback
my ($bref, $oid, $type, $size, $sync) = @_;
sub unindex_oid ($$;$) { # git->cat_async callback
my ($bref, $oid, $type, $size, $sync) = @_;
- my $self = $sync->{v2w};
+ my $self = $sync->{self};
my $unindexed = $sync->{in_unindex} ? $sync->{unindexed} : undef;
my $mm = $self->{mm};
my $mids = mids(PublicInbox::Eml->new($bref));
my $unindexed = $sync->{in_unindex} ? $sync->{unindexed} : undef;
my $mm = $self->{mm};
my $mids = mids(PublicInbox::Eml->new($bref));
sub index_xap_only { # git->cat_async callback
my ($bref, $oid, $type, $size, $smsg) = @_;
sub index_xap_only { # git->cat_async callback
my ($bref, $oid, $type, $size, $smsg) = @_;
- my $self = $smsg->{v2w};
+ my $self = $smsg->{self};
my $idx = idx_shard($self, $smsg->{num});
$smsg->{raw_bytes} = $size;
$idx->index_raw($bref, undef, $smsg);
my $idx = idx_shard($self, $smsg->{num});
$smsg->{raw_bytes} = $size;
$idx->index_raw($bref, undef, $smsg);
}
for (my $num = $beg; $num <= $end; $num += $step) {
my $smsg = $ibx->over->get_art($num) or next;
}
for (my $num = $beg; $num <= $end; $num += $step) {
my $smsg = $ibx->over->get_art($num) or next;
$ibx->git->cat_async($smsg->{blob}, \&index_xap_only, $smsg);
if ($self->{transact_bytes} >= $self->{batch_bytes}) {
${$sync->{nr}} = $num;
$ibx->git->cat_async($smsg->{blob}, \&index_xap_only, $smsg);
if ($self->{transact_bytes} >= $self->{batch_bytes}) {
${$sync->{nr}} = $num;
$sync //= {
need_checkpoint => \(my $bool = 0),
-opt => $opt,
$sync //= {
need_checkpoint => \(my $bool = 0),
-opt => $opt,
nr => \(my $nr = 0),
-regen_fmt => "%u/?\n",
};
nr => \(my $nr = 0),
-regen_fmt => "%u/?\n",
};
unindex_range => {}, # EPOCH => oid_old..oid_new
reindex => $opt->{reindex},
-opt => $opt,
unindex_range => {}, # EPOCH => oid_old..oid_new
reindex => $opt->{reindex},
-opt => $opt,
ibx => $self->{ibx},
epoch_max => $epoch_max,
};
ibx => $self->{ibx},
epoch_max => $epoch_max,
};