From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Magnus Hagander <magnus(at)hagander(dot)net>, Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Testing pg_terminate_backend() |
Date: | 2008-04-18 16:53:43 |
Message-ID: | 200804181653.m3IGrhW01864@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
bruce wrote:
> Tom Lane wrote:
> > Bruce Momjian <bruce(at)momjian(dot)us> writes:
> > > Tom Lane wrote:
> > >> The closest thing I can think of to an automated test is to run repeated
> > >> sets of the parallel regression tests, and each time SIGTERM a randomly
> > >> chosen backend at a randomly chosen time. Then see if anything "funny"
> >
> > > Yep, that was my plan, plus running the parallel regression tests you
> > > get the possibility of >2 backends.
> >
> > I was intentionally suggesting only one kill per test cycle. Multiple
> > kills will probably create an O(N^2) explosion in the set of possible
> > downstream-failure deltas. I doubt you'd really get any improvement
> > in testing coverage to justify the much larger amount of hand validation
> > needed.
> >
> > It also strikes me that you could make some simple alterations to the
> > regression tests to reduce the set of observable downstream deltas.
> > For example, anyplace where a test loads a table with successive INSERTs
> > and that table is used by later tests, wrap the INSERT sequence with
> > BEGIN/END. Then there is only one possible downstream delta (empty
> > table) and not N different possibilities for an N-row table.
>
> I have added pg_terminate_backend() to use SIGTERM and will start
> running tests as discussed with Tom. I will post my scripts too.
Attached is my test script. I ran it for 14 hours (asserts on),
running 450 regression tests, with up to seven backends killed per
regression test.
I have processed the combined regression.diffs files by pickouting out
all the new error messages. I don't see anything unusual in there.
Should I run it differently?
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Attachment | Content-Type | Size |
---|---|---|
unknown_filename | text/plain | 790 bytes |
/rtmp/diff | text/x-diff | 4.3 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2008-04-18 17:24:10 | Re: Testing pg_terminate_backend() |
Previous Message | Joshua D. Drake | 2008-04-18 16:23:24 | Re: Proposed patch - psql wraps at window width |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2008-04-18 17:24:10 | Re: Testing pg_terminate_backend() |
Previous Message | Joshua D. Drake | 2008-04-18 16:23:24 | Re: Proposed patch - psql wraps at window width |