У меня есть запрос, который, интуитивно, должен работать просто отлично.Но почти сразу после выполнения мне выдается следующее сообщение об ошибке:
ERROR: could not write block 119518 of temporary file: No space left on device
Query failed
PostgreSQL said: could not write block 119518 of temporary file: No space left on device
У меня приблизительно 4,5 ГБ свободного места.
Я попытался сократить использование памятизамена каждого из CTE на материализованные представления в надежде, что это уменьшит потребность в вычислительной мощности.
Дополнительно.Я предпринял следующие шаги -
- я увеличил наш экземпляр AWS до уровня db.r4.16xlarge, оптимизированного для памяти.
- я запустил подробный анализ и полный вакуумный анализ
- я остановил все остальные процессы
Запрос выполняет небольшую обработку в двух CTE, а затем объединяет таблицу (примерно 20M строк) с меньшей таблицей поиска (примерно 500K строк).