mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-10-07 07:36:50 +02:00
Revive test of concurrent OID generation.
Commit 578b229718
replaced it with a
concurrent "nextval" test. That version does not detect PostgreSQL's
incompatibility with xlc 13.1.3, so bring back an OID-based test that
does. Back-patch to v12, where that commit first appeared.
Discussion: https://postgr.es/m/20190707170035.GA1485546@rfd.leadboat.com
This commit is contained in:
parent
de14e54d7b
commit
dffb891d78
@ -58,27 +58,20 @@ sub pgbench
|
||||
return;
|
||||
}
|
||||
|
||||
# Test concurrent insertion into table with serial column. This
|
||||
# indirectly exercises LWLock and spinlock concurrency. This test
|
||||
# makes a 5-MiB table.
|
||||
|
||||
$node->safe_psql('postgres',
|
||||
'CREATE UNLOGGED TABLE insert_tbl (id serial primary key); ');
|
||||
|
||||
# Test concurrent OID generation via pg_enum_oid_index. This indirectly
|
||||
# exercises LWLock and spinlock concurrency.
|
||||
my $labels = join ',', map { "'l$_'" } 1 .. 1000;
|
||||
pgbench(
|
||||
'--no-vacuum --client=5 --protocol=prepared --transactions=25',
|
||||
0,
|
||||
[qr{processed: 125/125}],
|
||||
[qr{^$}],
|
||||
'concurrent insert workload',
|
||||
'concurrent OID generation',
|
||||
{
|
||||
'001_pgbench_concurrent_insert' =>
|
||||
'INSERT INTO insert_tbl SELECT FROM generate_series(1,1000);'
|
||||
"CREATE TYPE pg_temp.e AS ENUM ($labels); DROP TYPE pg_temp.e;"
|
||||
});
|
||||
|
||||
# cleanup
|
||||
$node->safe_psql('postgres', 'DROP TABLE insert_tbl;');
|
||||
|
||||
# Trigger various connection errors
|
||||
pgbench(
|
||||
'no-such-database',
|
||||
|
Loading…
Reference in New Issue
Block a user