Re: Same expression more than once in partition key

From: Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Same expression more than once in partition key
Date: 2017-06-23 15:04:01
Message-ID: 20170624000401.5e5638c4.nagata@sraoss.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, 23 Jun 2017 09:54:17 -0400
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp> writes:
> > When we create a range partitioned table, we cannot use
> > a column more than once in the partition key.
>
> > postgres=# create table t (i int) partition by range(i,i);
> > ERROR: column "i" appears more than once in partition key
>
> AFAIK, that's just a simple test for obvious mistakes; it's not a
> property that's essential for correctness.

Thanks. This is what I want to know.

>
> > However, I can use same expression more than once in partition key.
>
> ... and so, I can't get excited about extending it to expressions.
> Where would you stop --- for example, are i and (i) equal? What
> about (i) and (case when true then i else j end)? In principle,
> the system could recognize both those identities, but it seems
> silly to expend code on it just for nagware purposes.
>

Agreed.

> regards, tom lane

--
Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tatsuo Ishii 2017-06-23 15:15:28 Re: shift_sjis_2004 related autority files are remaining
Previous Message Yugo Nagata 2017-06-23 15:01:56 Re: pg_terminate_backend can terminate background workers and autovacuum launchers