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/[email protected]
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

+27-27
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

+15-15
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)