powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сотни тысяч файлов в base\pgsql_tmp
7 сообщений из 7, страница 1 из 1
Сотни тысяч файлов в base\pgsql_tmp
    #39351571
uranic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Одна из баз периодически (за последнюю неделю дважды) начинает жутко тормозить. Как выяснилось причина в огромном количестве (200 тыс и более ) нулевых файлов в base\pgsql_tmp. Остановка (с отстреливанием процессов), затем чистка директории и снова запуск спасают ситуацию. Судя по имена и датам создания файлов, такое кол-во файлов создает 1 или 2 процесса в течении получаса.

Postgresql 9.4.4 Windows Server 2012 Standart 32 Гб.

Как найти источник проблем? Что посоветуете? (смена ОС не рассматривается).

--
Пока писал, в голову пришло что можно взять PID из имени файла и по нему попытаться найти сессию виновника.
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39351573
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
uranic,

да, так и надо сделать. по pid в имени файлов найти в pg_stat_activity запрос/сессию. либо включить логгирование временных файлов через log_temp_files, там будет и запрос писаться. хотя не очень понятно, почему файлы нулевые. может вызывается какая-то функция на каждую строку результата и для нее work_mem не хватает.
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39351574
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
uranicсмена ОС не рассматривается)

мыши плакали, но продолжали есть кактусы
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39351626
uranic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexiusможет вызывается какая-то функция на каждую строку результата и для нее work_mem не хватает

Тоже в эту сторону смотрим, изменили в конфиге, запланировали перезапуск БД.
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39351672
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
uranic,

для изменения log_temp_files достаточно reload. напишите потом что это было, интересно. по идее ненужные файлы должны удаляться и в рамках одной сессии.
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39351830
uranic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexiusнапишите потом что это было, интересно. по идее ненужные файлы должны удаляться и в рамках одной сессии.

Обычно они и удаляются (и при перезагрузке тоже) . Но в какой-то момент, что-то происходит - и появляется пару сотен тысяч нулевых файлов (и они продолжают появляться). ОС начинает тормозить на операциях удаления файла из этого каталога. Соответственно база тоже тормозит.

Отпишусь, ждем повторения ситуации, log_temp_files включили (спасибо за наводку!).
...
Рейтинг: 0 / 0
Сотни тысяч файлов в base\pgsql_tmp
    #39355695
uranic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К счастью или к сожаление ситуация не повторилось. На выходных перегрузили и work_mem тоже вступил в силу. Так что отписываться не о чем
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сотни тысяч файлов в base\pgsql_tmp
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]