Re: Instability in parallel regression tests - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: Instability in parallel regression tests
Date
Msg-id CAEepm=1vD0XO9ZzLjcY1CkkKAezLaQga0bBiUvfH59J_EDmrVw@mail.gmail.com
Whole thread Raw
In response to Instability in parallel regression tests  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Instability in parallel regression tests  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Thu, Mar 15, 2018 at 12:31 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> guaibasaurus just failed in a way I'd not seen before:
>
> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=guaibasaurus&dt=2018-03-14%2006%3A33%3A01
>
> Inspection of the diffs makes it depressingly obvious what happened:
> the concurrently-executing "alter_table" and "with" scripts both create
> short-lived tables named "test".  Given the right timing, those tests
> stomp on each other.  This seems to have been there a long time;
> surprising we'd not noticed it before.
>
> Moral: choose names less generic than "test" for globally-visible
> objects.  I wonder if there's some way we could check for such
> conflicts automatically?

Ugh.  Yeah.  Non-temporary table and view names used in more than one .sql file:

$ ( for F in src/test/regress/sql/*.sql ; do perl -ne '/create
*(table|view) ([^ (]+)/i && print "$2\n";' < $F | sort | uniq ; done )
| sort | uniq -d

IF
abc
as
bar
bmscantest
c1
child
collate_dep_test1
collate_dep_test3
collate_dep_test4t
collate_test1
collate_test10
collate_test2
collate_test3
collate_test4
collate_test5
collate_test6
collate_test_fail
collate_test_like
collview1
collview2
collview3
fail_part
foo
foo2
hash_parted
hpart1
hpart2
hpart3
hpart_1
hpart_2
list_parted
list_parted2
list_parted2_def
mcrparted
mcrparted0
mcrparted1
mcrparted2
mcrparted3
mcrparted4
mcrparted5
num_data
num_exp_add
num_exp_div
num_exp_ln
num_exp_log10
num_exp_mul
num_exp_power_10_ln
num_exp_sqrt
num_exp_sub
num_result
p1
p2
parent
part1
part2
part3
part4
part_1
part_2
part_def
part_default
part_null
partitioned
pt1
range_parted
range_parted2
t1
t2
t3
table1
table2
tbl1
test
test1
test_u
tmp
toasttest
tt1
tt2
tt3
tt4
tt5
tt6
tt7
tt8
tx1
unparted
v1
v2

-- 
Thomas Munro
http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: ExplainProperty* and units
Next
From: Claudio Freire
Date:
Subject: Re: Faster inserts with mostly-monotonically increasing values