pgsql: Adjust batch size in postgres_fdw to not use too many parameters

Поиск
Список
Период
Сортировка
От Tomas Vondra
Тема pgsql: Adjust batch size in postgres_fdw to not use too many parameters
Дата
Msg-id E1lqgSz-0004ny-7I@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Adjust batch size in postgres_fdw to not use too many parameters

The FE/BE protocol identifies parameters with an Int16 index, which
limits the maximum number of parameters per query to 65535. With
batching added to postges_fdw this limit is much easier to hit, as
the whole batch is essentially a single query, making this error much
easier to hit.

The failures are a bit unpredictable, because it also depends on the
number of columns in the query. So instead of just failing, this patch
tweaks the batch_size to not exceed the maximum number of parameters.

Reported-by: Hou Zhijie <houzj.fnst@cn.fujitsu.com>
Reviewed-by: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Discussion: https://postgr.es/m/OS0PR01MB571603973C0AC2874AD6BF2594299%40OS0PR01MB5716.jpnprd01.prod.outlook.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/cb92703384e2bb3fa0a690e5dbb95ad333c2b44c

Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 11 +++++++++++
contrib/postgres_fdw/postgres_fdw.c            | 11 +++++++++--
contrib/postgres_fdw/sql/postgres_fdw.sql      |  7 +++++++
doc/src/sgml/postgres-fdw.sgml                 | 11 +++++++++++
src/interfaces/libpq/fe-exec.c                 | 21 ++++++++++++---------
src/interfaces/libpq/libpq-fe.h                |  2 ++
6 files changed, 52 insertions(+), 11 deletions(-)


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

Предыдущее
От: Tomas Vondra
Дата:
Сообщение: pgsql: Fix pg_visibility regression failure with CLOBBER_CACHE_ALWAYS
Следующее
От: Bruce Momjian
Дата:
Сообщение: pgsql: doc: update release note item about the v2 wire protocol