| From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
|---|---|
| To: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
| Cc: | Amit Khandekar <amitdkhan(dot)pg(at)gmail(dot)com>, Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: UPDATE of partition key |
| Date: | 2017-05-11 11:57:14 |
| Message-ID: | CA+TgmoauhXEgZCKALU_V6DCRtDEpw5xY38xTtd+DMeO2mySyDA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Thu, May 11, 2017 at 7:54 AM, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
> Few comments:
> 1.
> Operating directly on partition doesn't allow update to move row.
> Refer below example:
> create table t1(c1 int) partition by range(c1);
> create table t1_part_1 partition of t1 for values from (1) to (100);
> create table t1_part_2 partition of t1 for values from (100) to (200);
> insert into t1 values(generate_series(1,11));
> insert into t1 values(generate_series(110,120));
>
> postgres=# update t1_part_1 set c1=122 where c1=11;
> ERROR: new row for relation "t1_part_1" violates partition constraint
> DETAIL: Failing row contains (122).
I think that's correct behavior.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Stephen Frost | 2017-05-11 12:02:38 | Re: feature wish: filter log_min_duration_statement according to the context (parse|bind|execute|...) |
| Previous Message | Amit Kapila | 2017-05-11 11:54:51 | Re: UPDATE of partition key |