I observed, when creating foreign table with range partition, data is not inserting into specified partition range. below are steps to reproduce.
CREATE EXTENSION postgres_fdw; CREATE SERVER pwj_server FOREIGN DATA WRAPPER postgres_fdw OPTIONS (dbname 'postgres', port '5432',use_remote_estimate 'true'); CREATE USER MAPPING FOR PUBLIC SERVER pwj_server;
CREATE TABLE test_range (a int) PARTITION BY RANGE(a);
CREATE TABLE test_range_p1 (a int); CREATE FOREIGN TABLE ft_test_range_p1 PARTITION OF test_range FOR VALUES START (1) END (10) SERVER pwj_server OPTIONS (TABLE_NAME 'test_range_p1');
CREATE TABLE test_range_p2 (a int); CREATE FOREIGN TABLE ft_test_range_p2 PARTITION OF test_range FOR VALUES START (20) END (30) SERVER pwj_server OPTIONS (TABLE_NAME 'test_range_p2');
CREATE TABLE test_range_p3 (a int); CREATE FOREIGN TABLE ft_test_range_p3 PARTITION OF test_range FOR VALUES START (10) END (20) SERVER pwj_server OPTIONS (TABLE_NAME 'test_range_p3');
postgres=# INSERT INTO test_range (a) values (5),(25),(15); INSERT 0 3