Re: BUG #15324: Non-deterministic behaviour from parallelised sub-query

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Marko Tiikkaja <marko(at)joh(dot)to>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andres Freund <andres(at)anarazel(dot)de>, Andrew Fletcher <andy(at)prestigedigital(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: BUG #15324: Non-deterministic behaviour from parallelised sub-query
Date: 2018-08-14 11:50:17
Message-ID: CAA4eK1LUQX0HR_9TieA0DYpYcWFjGT-CPJ9E+HV4OnzusFY8VQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Tue, Aug 14, 2018 at 4:42 PM, Marko Tiikkaja <marko(at)joh(dot)to> wrote:
> Hi Amit,
>
>> >
>> > This seems broken as well:
>> >
>> > create table qwr(a int not null, b int not null, c text not null);
>> > insert into qwr select i, i, (select prosrc from pg_proc where
>> > oid=11734) from generate_series(1, 128000) i;
>> > set parallel_setup_cost to 0;
>> > analyze qwr;
>> > select count(*) from qwr where (a, b) in (select a, row_number()
>> > over()
>> > from qwr);
>> >
>>
>> I am getting below error in above steps:
>>
>> postgres=# insert into qwr select i, i, (select prosrc from
>> pg_proc where oid=11734) from generate_series(1, 128000) i;
>> ERROR: null value in column "c" violates not-null constraint
>> DETAIL: Failing row contains (1, 1, null).
>
>
> Sorry, try this instead:
>
> insert into qwr select i, i, (select prosrc from pg_proc where
> oid='ts_debug(regconfig,text)'::regprocedure) from generate_series(1,
> 128000) i;
>

This looks related, but I think this is a different issue. The real
reason for this case is that row_number is marked as parallel_safe
which seems to be wrong. I think it should be marked as
parallel_unsafe. This needs some more analysis w.r.t which other
Window functions has a similar problem.

--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Sandeep Thakkar 2018-08-14 12:02:45 Re: Issue
Previous Message Marko Tiikkaja 2018-08-14 11:12:56 Re: BUG #15324: Non-deterministic behaviour from parallelised sub-query