Я недавно обновил экземпляр Postgres 9.6 до 11.1 в Google Cloud SQL. С тех пор я начал замечать большое количество следующих ошибок в нескольких запросах:
org.postgresql.util.PSQLException: ОШИБКА: не удалось изменить размер общего ресурса
Сегмент памяти "/PostgreSQL.78044234" до 2097152 байта: свободного места не осталось
на устройстве
Из того, что я прочитал, это, вероятно, связано с изменениями в PG10, и типичное решение заключается в увеличении общей памяти экземпляра. Насколько мне известно, это невозможно в Google Cloud SQL, хотя. Я также пытался настроить work_mem
без положительного эффекта.
Это может не иметь значения, но для полноты картины экземпляр сконфигурирован с 30 гигабайтами оперативной памяти, 120 гигабайтами дискового пространства SSD и 8 процессорами. Я бы предположил, что Google предоставит соответствующие настройки общей памяти для этих спецификаций, но, возможно, нет? Есть идеи?
UPDATE
Установка флага базы данных random_page_cost
в 1
, по-видимому, снизила влияние проблемы. Это не полное решение, хотя все равно хотелось бы получить правильное решение, если оно есть.
Автор идеи пишет в этом блоге за идею.