Skip site navigation (1) Skip section navigation (2)

Instability in TRUNCATE regression test

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: Instability in TRUNCATE regression test
Date: 2006-06-28 16:09:51
Message-ID: 21729.1151510991@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Buildfarm member platypus is showing a regression failure that I'm
surprised we have not seen before:

http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=platypus&dt=2006-06-28%2014:05:01

Basically what this is showing is that when there is more than one
referencing table, the order in which things get done is dependent
on chance locations of system catalog entries.  That results in
cosmetic differences in which of multiple violations gets reported,
or in the order of "truncate cascades to" notices.

Given our push to have the buildfarm "all green all the time",
I don't think I want to just live with occasional failures.
Seems like the alternatives are

1. Find a way to make the processing order consistent (eg by driving it
off OID ordering).  Doesn't seem easy, but maybe I'm missing an idea.

2. Install multiple expected files for the truncate test.

3. Dumb down the test cases so that they don't test multiple-cascade
situations.

Don't much care for any of these :-(.

Also, it seems possible that not-so-cosmetic problems could occur, for
instance deadlock between two backends trying to truncate the same
tables in different orders.  That suggests that answer #1 would be the
best way to fix it, but that would mean ordering the tables consistently
before we even get any locks on them, which seems hard.

Thoughts?

			regards, tom lane

Responses

pgsql-hackers by date

Next:From: Phil FrostDate: 2006-06-28 16:24:04
Subject: Re: optimizing constant quals within outer joins
Previous:From: Yoshiyuki AsabaDate: 2006-06-28 15:59:24
Subject: Re: SO_SNDBUF size is small on win32?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group