Re: brin regression test intermittent failures

From: Peter Geoghegan <pg(at)heroku(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Subject: Re: brin regression test intermittent failures
Date: 2015-05-25 22:41:24
Message-ID: CAM3SWZTsNo9XhJr5f56WN4kZX0Hv9yx1rVcAPAzEhOHWJL=C4w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, May 25, 2015 at 3:25 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Also worth noting is that there's a completely different failure symptom
> that's shown up a few times, eg here:
>
> http://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=chipmunk&dt=2015-05-25%2009%3A56%3A55
>
> This makes it look like brintest sometimes contains no rows at all,
> which is difficult to explain ...

I meant to get around to looking into it, but FWIW I see BRIN-related
Valgrind issues. e.g.:

2015-05-20 23:44:42.419 PDT 14787 LOG: statement: CREATE INDEX
brinidx ON brintest USING brin (
byteacol,
charcol,
namecol,
int8col,
int2col,
int4col,
textcol,
oidcol,
tidcol,
float4col,
float8col,
macaddrcol,
inetcol inet_inclusion_ops,
inetcol inet_minmax_ops,
bpcharcol,
datecol,
timecol,
timestampcol,
timestamptzcol,
intervalcol,
timetzcol,
bitcol,
varbitcol,
numericcol,
uuidcol,
int4rangecol,
lsncol,
boxcol
) with (pages_per_range = 1);
==14787== Unaddressable byte(s) found during client check request
==14787== at 0x7E19AD: PageAddItem (bufpage.c:314)
==14787== by 0x4693AD: brin_doinsert (brin_pageops.c:315)
==14787== by 0x46844C: form_and_insert_tuple (brin.c:1122)
==14787== by 0x4672AD: brinbuildCallback (brin.c:540)
==14787== by 0x544D35: IndexBuildHeapRangeScan (index.c:2549)
==14787== by 0x54426A: IndexBuildHeapScan (index.c:2162)
==14787== by 0x4676EA: brinbuild (brin.c:638)
==14787== by 0x944D19: OidFunctionCall3Coll (fmgr.c:1649)
==14787== by 0x543F75: index_build (index.c:2025)
==14787== by 0x542C4D: index_create (index.c:1100)
==14787== by 0x614E52: DefineIndex (indexcmds.c:605)
==14787== by 0x7F29CC: ProcessUtilitySlow (utility.c:1258)
==14787== Address 0x6932a3a is 1,738 bytes inside a block of size 8,192 alloc'd
==14787== at 0x4C2AB80: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==14787== by 0x966E86: AllocSetAlloc (aset.c:847)
==14787== by 0x969B19: palloc (mcxt.c:825)
==14787== by 0x839203: datumCopy (datum.c:171)
==14787== by 0x46D6B3: brin_minmax_add_value (brin_minmax.c:105)
==14787== by 0x944116: FunctionCall4Coll (fmgr.c:1375)
==14787== by 0x4673AF: brinbuildCallback (brin.c:562)
==14787== by 0x544D35: IndexBuildHeapRangeScan (index.c:2549)
==14787== by 0x54426A: IndexBuildHeapScan (index.c:2162)
==14787== by 0x4676EA: brinbuild (brin.c:638)
==14787== by 0x944D19: OidFunctionCall3Coll (fmgr.c:1649)
==14787== by 0x543F75: index_build (index.c:2025)
==14787==
{
<insert_a_suppression_name_here>
Memcheck:User
fun:PageAddItem
fun:brin_doinsert
fun:form_and_insert_tuple
fun:brinbuildCallback
fun:IndexBuildHeapRangeScan
fun:IndexBuildHeapScan
fun:brinbuild
fun:OidFunctionCall3Coll
fun:index_build
fun:index_create
fun:DefineIndex
fun:ProcessUtilitySlow
}
==14787== Invalid read of size 8
==14787== at 0x4C2F79E: memcpy@@GLIBC_2.14 (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==14787== by 0x7E19DB: PageAddItem (bufpage.c:317)
==14787== by 0x4693AD: brin_doinsert (brin_pageops.c:315)
==14787== by 0x46844C: form_and_insert_tuple (brin.c:1122)
==14787== by 0x4672AD: brinbuildCallback (brin.c:540)
==14787== by 0x544D35: IndexBuildHeapRangeScan (index.c:2549)
==14787== by 0x54426A: IndexBuildHeapScan (index.c:2162)
==14787== by 0x4676EA: brinbuild (brin.c:638)
==14787== by 0x944D19: OidFunctionCall3Coll (fmgr.c:1649)
==14787== by 0x543F75: index_build (index.c:2025)
==14787== by 0x542C4D: index_create (index.c:1100)
==14787== by 0x614E52: DefineIndex (indexcmds.c:605)
==14787== Address 0x6932a38 is 728 bytes inside a block of size 730
client-defined
==14787== at 0x969DC2: palloc0 (mcxt.c:864)
==14787== by 0x46B9FE: brin_form_tuple (brin_tuple.c:166)
==14787== by 0x46840B: form_and_insert_tuple (brin.c:1120)
==14787== by 0x4672AD: brinbuildCallback (brin.c:540)
==14787== by 0x544D35: IndexBuildHeapRangeScan (index.c:2549)
==14787== by 0x54426A: IndexBuildHeapScan (index.c:2162)
==14787== by 0x4676EA: brinbuild (brin.c:638)
==14787== by 0x944D19: OidFunctionCall3Coll (fmgr.c:1649)
==14787== by 0x543F75: index_build (index.c:2025)
==14787== by 0x542C4D: index_create (index.c:1100)
==14787== by 0x614E52: DefineIndex (indexcmds.c:605)
==14787== by 0x7F29CC: ProcessUtilitySlow (utility.c:1258)
==14787==
{
<insert_a_suppression_name_here>
Memcheck:Addr8
fun:memcpy@@GLIBC_2.14
fun:PageAddItem
fun:brin_doinsert
fun:form_and_insert_tuple
fun:brinbuildCallback
fun:IndexBuildHeapRangeScan
fun:IndexBuildHeapScan
fun:brinbuild
fun:OidFunctionCall3Coll
fun:index_build
fun:index_create
fun:DefineIndex
}

--
Peter Geoghegan

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2015-05-25 23:00:09 Re: Run pgindent now?
Previous Message Tom Lane 2015-05-25 22:30:19 Re: Run pgindent now?