From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com> |
Cc: | Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Optimizing nested ConvertRowtypeExpr execution |
Date: | 2018-04-06 06:37:57 |
Message-ID: | CAFj8pRAR9dL6Hw8EMb=QLHn-_WvafZNV9R40A4fZHr+qd7KXPg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
2018-04-06 8:21 GMT+02:00 Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com>:
> On Tue, Apr 3, 2018 at 10:48 AM, Ashutosh Bapat
> <ashutosh(dot)bapat(at)enterprisedb(dot)com> wrote:
> >>
> >> Why is this done appropriately at ExecInitExpr() time, rather than at
> >> plan time? Seems like eval_const_expressions() would be a bit more
> >> appropriate (being badly named aside...)?
> >
> > That seems to be a better idea. Here's patch.
> >
>
> Previous patch didn't try to fold the ConvertRowtypeExpr::arg into a Const.
>
> postgres=# create table t1 (a int, b int, c int) partition by range(a);
> postgres=# create table t1p1 partition of t1 for values from (0) to
> (100) partition by range(b);
> postgres=# create table t1p1p1 partition of t1p1 for values from (0) to
> (50);
> postgres=# explain verbose select (1, 2, 3)::t1p1p1::t1p1::t1; --
> notice Rowexpression here.
> QUERY PLAN
> -------------------------------------------
> Result (cost=0.00..0.01 rows=1 width=32)
> Output: (ROW(1, 2, 3)::t1p1p1)::t1
> (2 rows)
>
> Here's patch fixing that. With this patch
> postgres=# explain verbose select (1, 2, 3)::t1p1p1::t1p1::t1;
> QUERY PLAN
> -------------------------------------------
> Result (cost=0.00..0.01 rows=1 width=32)
> Output: '(1,2,3)'::t1
> (2 rows)
>
>
+1
Pavel
> --
> Best Wishes,
> Ashutosh Bapat
> EnterpriseDB Corporation
> The Postgres Database Company
>
From | Date | Subject | |
---|---|---|---|
Next Message | amul sul | 2018-04-06 07:20:58 | Re: [HACKERS] Restrict concurrent update/delete with UPDATE of partition key |
Previous Message | amul sul | 2018-04-06 06:37:17 | Re: [HACKERS] Restrict concurrent update/delete with UPDATE of partition key |