diff options
author | Eric Wong <e@80x24.org> | 2021-10-12 11:47:03 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2021-10-12 21:46:35 +0000 |
commit | 2a3c8d7a2c40ad9424db10d68470d8bb120bddf9 (patch) | |
tree | 11b2a2d1566a06555f255f960f9ea7b07eeccfc5 /t | |
parent | 212578b82ad3cb28b2d18f36c656be56a27fd5bc (diff) | |
download | public-inbox-2a3c8d7a2c40ad9424db10d68470d8bb120bddf9.tar.gz |
The cost of opening a Xapian DB (even with shards) isn't high, so save some FDs and just close it. We hit Xapian far less than over.sqlite3 and we discard the MSet ASAP even when streaming large responses. This simplifies our code a bit and hopefully helps reduce fragmentation by increasing mortality of late allocations.
Diffstat (limited to 't')
-rw-r--r-- | t/extsearch.t | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/t/extsearch.t b/t/extsearch.t index 8190de17..dfc190e2 100644 --- a/t/extsearch.t +++ b/t/extsearch.t @@ -447,9 +447,6 @@ SKIP: { ok(ref($es->{xdb}), '{xdb} created'); my $nshards1 = $es->{nshard}; is($nshards1, 1, 'correct shard count'); - my $xdb_str = "$es->{xdb}"; - ok($es->cleanup_shards, 'cleanup_shards noop'); - is("$es->{xdb}", $xdb_str, '{xdb} unchanged'); my @ei_dir = glob("$d/ei*/"); chmod 0755, $ei_dir[0] or xbail "chmod: $!"; @@ -463,11 +460,8 @@ SKIP: { my $m = sprintf('%04o', 07777 & (stat($dirs[$i]))[2]); is($m, $mode, "shard [$i] mode"); } - is($es->cleanup_shards, undef, 'cleanup_shards cleaned'); - ok(!defined($es->{xdb}), 'old {xdb} gone'); - is($es->cleanup_shards, undef, 'cleanup_shards clean idempotent'); + delete @$es{qw(xdb qp)}; is($es->mset('z:0..')->size, $nresult0, 'new shards, same results'); - ok($es->cleanup_shards, 'cleanup_shards true after open'); for my $i (4..5) { is(grep(m!/ei[0-9]+/$i\z!, @dirs), 0, "no shard [$i]"); |