Skip to content

Commit 0a3edbb

Browse files
committed
Speed up isolation test for concurrent VACUUM/ANALYZE behavior.
Per Tom Lane, the old test sometimes times out with CLOBBER_CACHE_ALWAYS. Nathan Bossart Discussion: http://postgr.es/m/28614.1512583046@sss.pgh.pa.us
1 parent 28724fd commit 0a3edbb

File tree

2 files changed

+42
-42
lines changed

2 files changed

+42
-42
lines changed

src/test/isolation/expected/vacuum-concurrent-drop.out

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,74 +3,74 @@ Parsed test spec with 2 sessions
33
starting permutation: lock vac_specified drop_and_commit
44
step lock:
55
BEGIN;
6-
LOCK test1 IN SHARE MODE;
6+
LOCK part1 IN SHARE MODE;
77

8-
step vac_specified: VACUUM test1, test2; <waiting ...>
8+
step vac_specified: VACUUM part1, part2; <waiting ...>
99
step drop_and_commit:
10-
DROP TABLE test2;
10+
DROP TABLE part2;
1111
COMMIT;
1212

13-
WARNING: skipping vacuum of "test2" --- relation no longer exists
13+
WARNING: skipping vacuum of "part2" --- relation no longer exists
1414
step vac_specified: <... completed>
1515

16-
starting permutation: lock vac_all drop_and_commit
16+
starting permutation: lock vac_all_parts drop_and_commit
1717
step lock:
1818
BEGIN;
19-
LOCK test1 IN SHARE MODE;
19+
LOCK part1 IN SHARE MODE;
2020

21-
step vac_all: VACUUM; <waiting ...>
21+
step vac_all_parts: VACUUM parted; <waiting ...>
2222
step drop_and_commit:
23-
DROP TABLE test2;
23+
DROP TABLE part2;
2424
COMMIT;
2525

26-
step vac_all: <... completed>
26+
step vac_all_parts: <... completed>
2727

2828
starting permutation: lock analyze_specified drop_and_commit
2929
step lock:
3030
BEGIN;
31-
LOCK test1 IN SHARE MODE;
31+
LOCK part1 IN SHARE MODE;
3232

33-
step analyze_specified: ANALYZE test1, test2; <waiting ...>
33+
step analyze_specified: ANALYZE part1, part2; <waiting ...>
3434
step drop_and_commit:
35-
DROP TABLE test2;
35+
DROP TABLE part2;
3636
COMMIT;
3737

38-
WARNING: skipping analyze of "test2" --- relation no longer exists
38+
WARNING: skipping analyze of "part2" --- relation no longer exists
3939
step analyze_specified: <... completed>
4040

41-
starting permutation: lock analyze_all drop_and_commit
41+
starting permutation: lock analyze_all_parts drop_and_commit
4242
step lock:
4343
BEGIN;
44-
LOCK test1 IN SHARE MODE;
44+
LOCK part1 IN SHARE MODE;
4545

46-
step analyze_all: ANALYZE; <waiting ...>
46+
step analyze_all_parts: ANALYZE parted; <waiting ...>
4747
step drop_and_commit:
48-
DROP TABLE test2;
48+
DROP TABLE part2;
4949
COMMIT;
5050

51-
step analyze_all: <... completed>
51+
step analyze_all_parts: <... completed>
5252

5353
starting permutation: lock vac_analyze_specified drop_and_commit
5454
step lock:
5555
BEGIN;
56-
LOCK test1 IN SHARE MODE;
56+
LOCK part1 IN SHARE MODE;
5757

58-
step vac_analyze_specified: VACUUM ANALYZE test1, test2; <waiting ...>
58+
step vac_analyze_specified: VACUUM ANALYZE part1, part2; <waiting ...>
5959
step drop_and_commit:
60-
DROP TABLE test2;
60+
DROP TABLE part2;
6161
COMMIT;
6262

63-
WARNING: skipping vacuum of "test2" --- relation no longer exists
63+
WARNING: skipping vacuum of "part2" --- relation no longer exists
6464
step vac_analyze_specified: <... completed>
6565

66-
starting permutation: lock vac_analyze_all drop_and_commit
66+
starting permutation: lock vac_analyze_all_parts drop_and_commit
6767
step lock:
6868
BEGIN;
69-
LOCK test1 IN SHARE MODE;
69+
LOCK part1 IN SHARE MODE;
7070

71-
step vac_analyze_all: VACUUM ANALYZE; <waiting ...>
71+
step vac_analyze_all_parts: VACUUM ANALYZE parted; <waiting ...>
7272
step drop_and_commit:
73-
DROP TABLE test2;
73+
DROP TABLE part2;
7474
COMMIT;
7575

76-
step vac_analyze_all: <... completed>
76+
step vac_analyze_all_parts: <... completed>

src/test/isolation/specs/vacuum-concurrent-drop.spec

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,39 +7,39 @@
77

88
setup
99
{
10-
CREATE TABLE test1 (a INT);
11-
CREATE TABLE test2 (a INT);
10+
CREATE TABLE parted (a INT) PARTITION BY LIST (a);
11+
CREATE TABLE part1 PARTITION OF parted FOR VALUES IN (1);
12+
CREATE TABLE part2 PARTITION OF parted FOR VALUES IN (2);
1213
}
1314

1415
teardown
1516
{
16-
DROP TABLE IF EXISTS test1;
17-
DROP TABLE IF EXISTS test2;
17+
DROP TABLE IF EXISTS parted;
1818
}
1919

2020
session "s1"
2121
step "lock"
2222
{
2323
BEGIN;
24-
LOCK test1 IN SHARE MODE;
24+
LOCK part1 IN SHARE MODE;
2525
}
2626
step "drop_and_commit"
2727
{
28-
DROP TABLE test2;
28+
DROP TABLE part2;
2929
COMMIT;
3030
}
3131

3232
session "s2"
33-
step "vac_specified" { VACUUM test1, test2; }
34-
step "vac_all" { VACUUM; }
35-
step "analyze_specified" { ANALYZE test1, test2; }
36-
step "analyze_all" { ANALYZE; }
37-
step "vac_analyze_specified" { VACUUM ANALYZE test1, test2; }
38-
step "vac_analyze_all" { VACUUM ANALYZE; }
33+
step "vac_specified" { VACUUM part1, part2; }
34+
step "vac_all_parts" { VACUUM parted; }
35+
step "analyze_specified" { ANALYZE part1, part2; }
36+
step "analyze_all_parts" { ANALYZE parted; }
37+
step "vac_analyze_specified" { VACUUM ANALYZE part1, part2; }
38+
step "vac_analyze_all_parts" { VACUUM ANALYZE parted; }
3939

4040
permutation "lock" "vac_specified" "drop_and_commit"
41-
permutation "lock" "vac_all" "drop_and_commit"
41+
permutation "lock" "vac_all_parts" "drop_and_commit"
4242
permutation "lock" "analyze_specified" "drop_and_commit"
43-
permutation "lock" "analyze_all" "drop_and_commit"
43+
permutation "lock" "analyze_all_parts" "drop_and_commit"
4444
permutation "lock" "vac_analyze_specified" "drop_and_commit"
45-
permutation "lock" "vac_analyze_all" "drop_and_commit"
45+
permutation "lock" "vac_analyze_all_parts" "drop_and_commit"

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy