Я сталкиваюсь с сообщением о невозможности увеличить строковый буфер в моем запущенном API postgREST. Я полагаю, что некоторые таблицы слишком велики для успешной работы с API.
Я использую докер postgrest / postgrest контейнера от https://hub.docker.com/r/postgrest/postgrest с версией PostgREST 5.1.0.
Все работает как положено, но если размер таблиц становится слишком большим, я получаю следующее сообщение об ошибке.
hint null
details "Cannot enlarge string buffer containing 1073741822 bytes by 1 more bytes."
code "54000"
message "out of memory"
Я не могу определить порог, когда он работает или нет.
Есть ли возможность увеличить строковый буфер в каком-либо конфигурационном файле или это жестко закодировано?
Существуют ли ограничения по размеру таблицы при работе с API. Пока что я не смог найти никакой информации в документе.
=========== Обновление
Журналы postgres дают мне следующий SQL-запрос:
WITH pg_source AS (
SELECT "public"."n_osm_bawue_line".*
FROM "public"."n_osm_bawue_line"
)
SELECT null AS total_result_set,
pg_catalog.count(_postgrest_t) AS page_total,
array[]::text[] AS header,
coalesce(json_agg(_postgrest_t), '[]')::character varying AS body
FROM (
SELECT *
FROM pg_source
) _postgrest_t
Я использую следующую версию postgres:
"PostgreSQL 11.1 (Debian 11.1-1.pgdg90+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516, 64-bit"