Re: BUG #14341: insert on conflict (key_column) cann't used with partition table. - Mailing list pgsql-bugs

From 德哥
Subject Re: BUG #14341: insert on conflict (key_column) cann't used with partition table.
Date
Msg-id 58f17eb8.b93b.15770146d7d.Coremail.digoal@126.com
Whole thread Raw
In response to Re: BUG #14341: insert on conflict (key_column) cann't used with partition table.  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: BUG #14341: insert on conflict (key_column) cann't used with partition table.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs

$ git clone https://github.com/postgrespro/pg_pathman
$ cd pg_pathman
$ export PATH=/home/digoal/pgsql9.6rc1/bin:$PATH
$ make USE_PGXS=1
$ make install USE_PGXS=1

$ vi $PGDATA/postgresql.conf
shared_preload_libraries='pg_pathman'

$ pg_ctl restart -m fast

$ psql
postgres=# create extension pg_pathman;
CREATE EXTENSION
$ psql
postgres=# drop table test;
postgres=# create table test(id int primary key, info text, crt_time timestamptz);
CREATE TABLE
postgres=# 
postgres=# select create_range_partitions('test'::regclass, 'id', 1, 20000000, 100, false); create_range_partitions 
-------------------------                     100
(1 row)
postgres=# select disable_parent('test'::regclass); disable_parent 
----------------

(1 row)

reconnect  
postgres=# explain select * from test where id=1;                                   QUERY PLAN                                    
--------------------------------------------------------------------------------- Append  (cost=0.15..2.17 rows=1 width=44)   ->  Index Scan using test_1_pkey on test_1  (cost=0.15..2.17 rows=1 width=44)         Index Cond: (id = 1)
(3 rows)
insert into test(id,info,crt_time) values(:id, md5(random()::text), now()) on conflict (id) do update set info=excluded.info,crt_time=excluded.crt_time;




--
公益是一辈子的事,I'm Digoal,Just Do It.


At 2016-09-27 21:04:34, "Tom Lane" <tgl@sss.pgh.pa.us> wrote: >digoal@126.com writes: >> postgres=# \d test >> Table "postgres.test" >> Column | Type | Modifiers >> ----------+-----------------------------+----------- >> id | integer | not null >> info | text | >> crt_time | timestamp without time zone | >> Indexes: >> "test_pkey" PRIMARY KEY, btree (id) >> Number of child tables: 100 (Use \d+ to list them.) > >> postgres=# insert into test(id,info,crt_time) values(1, md5(random()::text), >> now()) on conflict (id) do update set >> info=excluded.info,crt_time=excluded.crt_time; >> ERROR: XX000: unexpected failure to find arbiter index >> LOCATION: ExecCheckIndexConstraints, execIndexing.c:594 > >Can't reproduce that on the basis of the given information. > > regards, tom lane

pgsql-bugs by date:

Previous
From: "Zuk, Kacper"
Date:
Subject: Re: BUG #14329: libpq doesn't send complete client certificate chain on first SSL connection
Next
From: Devrim Gündüz
Date:
Subject: Re: BUG #14342: Please restore pgdg-redhat92-9.2-7.noarch.rpm