[GENERAL] 10 beta 4 foreign table partition check constraint broken?

Поиск
Список
Период
Сортировка
От Paul Jones
Тема [GENERAL] 10 beta 4 foreign table partition check constraint broken?
Дата
Msg-id 20170915134315.GA31038@cmicdo.com
обсуждение исходный текст
Ответы Re: [GENERAL] 10 beta 4 foreign table partition check constraint broken?  (Michael Paquier <michael.paquier@gmail.com>)
Список pgsql-general
Is this a bug in Postgres 10b4?  Looks like neither partition ranges
nor check constraints are honored in 10b4 when inserting into
partitions that are foreign tables.

Here is a nearly shovel-ready example.  Just replace with your
servers/passwords.

-- --------------------------
-- Server 1
-- --------------------------

CREATE DATABASE cluster;
\c cluster

CREATE EXTENSION postgres_fdw;

CREATE SERVER server2 FOREIGN DATA WRAPPER postgres_fdw       OPTIONS(host 'server2', dbname 'cluster');

CREATE USER MAPPING FOR postgres SERVER server2       OPTIONS(user 'postgres', password 'pgpassword');

CREATE TABLE foo (       id      INT NOT NULL,       name    TEXT
) PARTITION BY RANGE (id);

CREATE FOREIGN TABLE foo_10000       PARTITION OF foo       FOR VALUES FROM (0) TO (10000)
SERVER server2 OPTIONS (table_name 'foo_10000');

-- --------------------------
-- Server 2
-- --------------------------

CREATE DATABASE cluster;
\c cluster

CREATE TABLE foo_10000 (       id      INT NOT NULL,       name    TEXT
);

-- --------------------------
-- Server 1
-- --------------------------

INSERT INTO foo_10000 VALUES(0,'funky bug'),                               (100, 'wiggle frank'),
       (15000, 'boegger snot');
 

SELECT * FROM foo;

DROP FOREIGN TABLE foo_10000;

CREATE FOREIGN TABLE foo_10000       PARTITION OF foo       (id CONSTRAINT f1 CHECK ((id >= 0) AND (id < 10000)))
FORVALUES FROM (0) TO (10000)
 
SERVER server2 OPTIONS (table_name 'foo_10000');

INSERT INTO foo_10000 VALUES(0,'funky bug'),                               (100, 'wiggle frank'),
       (15000, 'boegger snot');
 

SELECT * FROM foo;


.


-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

В списке pgsql-general по дате отправления:

Предыдущее
От: Rafal Pietrak
Дата:
Сообщение: Re: [GENERAL] looking for a globally unique row ID
Следующее
От: "Luiz Hugo Ronqui"
Дата:
Сообщение: RES: [GENERAL] Table partition - parent table use