* [PATCH 1/5] searchidxshard: clear $msgref buffer properly
2020-08-22 6:06 6% [PATCH 0/5] "mairix -t" workalike for mbox.gz downloads Eric Wong
@ 2020-08-22 6:06 7% ` Eric Wong
0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2020-08-22 6:06 UTC (permalink / raw)
To: meta
Merely assigning `undef' to a scalar does not free the
underlying buffer memory of a scalar.
---
lib/PublicInbox/SearchIdxShard.pm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/PublicInbox/SearchIdxShard.pm b/lib/PublicInbox/SearchIdxShard.pm
index 20077e08..75521b43 100644
--- a/lib/PublicInbox/SearchIdxShard.pm
+++ b/lib/PublicInbox/SearchIdxShard.pm
@@ -97,7 +97,7 @@ sub index_raw {
"\n", $$msgref or die "failed to write shard $!\n";
} else {
if ($eml) {
- $$msgref = undef;
+ undef $$msgref;
} else { # --xapian-only + --sequential-shard:
$eml = PublicInbox::Eml->new($msgref);
}
^ permalink raw reply related [relevance 7%]
* [PATCH 0/5] "mairix -t" workalike for mbox.gz downloads
@ 2020-08-22 6:06 6% Eric Wong
2020-08-22 6:06 7% ` [PATCH 1/5] searchidxshard: clear $msgref buffer properly Eric Wong
0 siblings, 1 reply; 2+ results
From: Eric Wong @ 2020-08-22 6:06 UTC (permalink / raw)
To: meta
Actually, the Xapian aspect of it turned out to be easy once
I learned ->set_collapse_key.
Getting the tests and compatibility with existing (pre-upgrade)
inboxes was more work.
It requires "public-inbox-index --reindex" to activate;
but PATCH 5/5 makes it safe to upgrade WWW either before
or after --reindex. That means BOFHs can upgrade without
regard to ordering.
Tested with w3m, links, and lynx (I actually split out
my lynx fix separately):
https://public-inbox.org/meta/20200822004125.9458-1-e@80x24.org/
TODO: CLI tool support, HTML interface, JMAP, etc...
Eric Wong (5):
searchidxshard: clear $msgref buffer properly
searchidx: put all shard-related stuff in SearchIdxShard.pm
searchidx: index THREADID in Xapian
search: support downloading mboxes results with full thread
mbox: disable "&t" on existing Xapian until full reindex
Documentation/standards.perl | 4 +++
lib/PublicInbox/Mbox.pm | 54 +++++++++++++++++++++++++------
lib/PublicInbox/Over.pm | 31 +++++++++++++++++-
lib/PublicInbox/OverIdx.pm | 18 +++++------
lib/PublicInbox/Search.pm | 16 +++++++--
lib/PublicInbox/SearchIdx.pm | 51 +++++++++--------------------
lib/PublicInbox/SearchIdxShard.pm | 48 ++++++++++++++++++++++-----
lib/PublicInbox/SearchQuery.pm | 8 +++--
lib/PublicInbox/SearchView.pm | 30 +++++++++++------
lib/PublicInbox/Smsg.pm | 3 +-
lib/PublicInbox/V2Writable.pm | 19 ++++++++---
t/init.t | 1 +
t/over.t | 13 ++++----
t/psgi_search.t | 39 ++++++++++++++++++++--
14 files changed, 244 insertions(+), 91 deletions(-)
^ permalink raw reply [relevance 6%]
Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2020-08-22 6:06 6% [PATCH 0/5] "mairix -t" workalike for mbox.gz downloads Eric Wong
2020-08-22 6:06 7% ` [PATCH 1/5] searchidxshard: clear $msgref buffer properly 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).