From: Eric Wong Date: Fri, 18 Jun 2021 19:20:31 +0000 (+0000) Subject: lei/store: do not put NULL into over.num column X-Git-Tag: v1.7.0~582 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=f8292aa38474acd174654fdb9971885013e45461;p=public-inbox.git lei/store: do not put NULL into over.num column Simplify oid2docid and filter out undefined docids in ->add_eml, instead. This avoids SQLite "datatype mismatch" errors in OverIdx->add_over Fixes: d1052f03ea85d4af ("lei/store: cull redundant docids based on blob OID") --- diff --git a/lib/PublicInbox/LeiStore.pm b/lib/PublicInbox/LeiStore.pm index 4ba1e647..e26b622d 100644 --- a/lib/PublicInbox/LeiStore.pm +++ b/lib/PublicInbox/LeiStore.pm @@ -269,7 +269,7 @@ W: $oid indexed as multiple docids: $docid @cull, culling to fixup old bugs EOF remove_docids($self, @cull); } - wantarray ? ($docid) : $docid; + $docid; } sub add_eml { @@ -292,8 +292,8 @@ sub add_eml { if (scalar keys %$xoids) { my %docids = map { $_ => 1 } @$vivify_xvmd; for my $oid (keys %$xoids) { - my @id = oid2docid($self, $oid); - @docids{@id} = @id; + my $docid = oid2docid($self, $oid); + $docids{$docid} = $docid if defined($docid); } @$vivify_xvmd = sort { $a <=> $b } keys(%docids); }