Re: [HACKERS] SERIALIZABLE with parallel query

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Kevin Grittner <kgrittn(at)gmail(dot)com>
Cc: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Haribabu Kommi <kommi(dot)haribabu(at)gmail(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] SERIALIZABLE with parallel query
Date: 2019-03-15 04:51:02
Message-ID: CA+hUKG+F+2Y9BtqinmCxyA8mOMY6RULzOxEoUfA9GHqQQw7UiQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Mar 4, 2019 at 10:17 AM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> On Thu, Oct 11, 2018 at 10:15 AM Kevin Grittner <kgrittn(at)gmail(dot)com> wrote:
> > It applies and builds clean, it passed make world with cassert and TAP
> > tests, and I can't see any remaining flaws. This is true both of just
> > the 0001 v16 patch and that with 0002 v16 applied on top of it.
>
> Thanks. I'd like to commit this soon.

I did a round of testing under load and some printf-debugging to
convince myself that the SXACT_FLAG_RO_SAFE handling really is
exercised by serializable-parallel-2.spec and behaving as expected,
along with some more testing by hand, and pushed this.

To generate load I used a knock-off of sibench[1], run as eg
./petit-sibench --rows 10000 --threads 8 --ssi, against a server
running with -c min_parallel_table_scan_size=128kB -c
parallel_setup_cost=0 -c max_worker_processes=16 -c
max_parallel_workers=16.

[1] https://github.com/macdice/petit-sibench/blob/master/petit-sibench.c

--
Thomas Munro
https://enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Kyotaro HORIGUCHI 2019-03-15 05:15:17 Re: Introduce timeout capability for ConditionVariableSleep
Previous Message Kato, Sho 2019-03-15 04:37:03 Fix typo in test code comments