mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-03-01 19:45:33 +08:00
Revert test added by commit d207038053
.
This test was trying to test the mechanism to release kernel FDs as needed to get us under the max_safe_fds limit in case of spill files. To do that, it needs to set max_files_per_process to a very low value which doesn't even permit starting of the server in the case when there are a few already opened files. This test also won't work on platforms where we use one FD per semaphore. Backpatch-through: 10, till where this test was added Discussion: https://postgr.es/m/CAA4eK1LHhERi06Q+MmP9qBXBBboi+7WV3910J0aUgz71LcnKAw@mail.gmail.com https://postgr.es/m/6485.1578583522@sss.pgh.pa.us
This commit is contained in:
parent
7f380c59f8
commit
ed7bb5c311
@ -7,7 +7,7 @@ use strict;
|
||||
use warnings;
|
||||
use PostgresNode;
|
||||
use TestLib;
|
||||
use Test::More tests => 11;
|
||||
use Test::More tests => 10;
|
||||
use Config;
|
||||
|
||||
# Initialize master node
|
||||
@ -135,43 +135,5 @@ is($node_master->psql('postgres', 'DROP DATABASE otherdb'),
|
||||
is($node_master->slot('otherdb_slot')->{'slot_name'},
|
||||
undef, 'logical slot was actually dropped with DB');
|
||||
|
||||
# Test to ensure that we don't run out of file descriptors even if there
|
||||
# are more spill files than maxAllocatedDescs.
|
||||
|
||||
# Set max_files_per_process to a small value to make it more likely to run out
|
||||
# of max open file descriptors.
|
||||
$node_master->safe_psql('postgres',
|
||||
'ALTER SYSTEM SET max_files_per_process = 26;');
|
||||
$node_master->restart;
|
||||
|
||||
$node_master->safe_psql(
|
||||
'postgres', q{
|
||||
do $$
|
||||
BEGIN
|
||||
FOR i IN 1..10 LOOP
|
||||
BEGIN
|
||||
INSERT INTO decoding_test(x) SELECT generate_series(1,5000);
|
||||
EXCEPTION
|
||||
when division_by_zero then perform 'dummy';
|
||||
END;
|
||||
END LOOP;
|
||||
END $$;
|
||||
});
|
||||
|
||||
$result = $node_master->safe_psql('postgres',
|
||||
qq[
|
||||
set logical_decoding_work_mem to 64; -- generate plenty of .spill files
|
||||
SELECT data from pg_logical_slot_get_changes('test_slot', NULL, NULL)
|
||||
WHERE data LIKE '%INSERT%' ORDER BY lsn LIMIT 1;
|
||||
]);
|
||||
|
||||
$expected = q{table public.decoding_test: INSERT: x[integer]:1 y[text]:null};
|
||||
is($result, $expected, 'got expected output from spilling subxacts session');
|
||||
|
||||
# Reset back max_files_per_process
|
||||
$node_master->safe_psql('postgres',
|
||||
'ALTER SYSTEM SET max_files_per_process = DEFAULT;');
|
||||
$node_master->restart;
|
||||
|
||||
# done with the node
|
||||
$node_master->stop;
|
||||
|
Loading…
Reference in New Issue
Block a user