Re: PANIC: could not flush dirty data: Cannot allocate memory

Поиск
Список
Период
Сортировка
От Christoph Moench-Tegeder
Тема Re: PANIC: could not flush dirty data: Cannot allocate memory
Дата
Msg-id Y3K4+z5fP9mNElMj@elch.exwg.net
обсуждение исходный текст
Ответ на PANIC: could not flush dirty data: Cannot allocate memory  (klaus.mailinglists@pernau.at)
Ответы Re: PANIC: could not flush dirty data: Cannot allocate memory  (Thomas Munro <thomas.munro@gmail.com>)
Re: PANIC: could not flush dirty data: Cannot allocate memory  (klaus.mailinglists@pernau.at)
Список pgsql-general
## klaus.mailinglists@pernau.at (klaus.mailinglists@pernau.at):

> On several servers we see the error message: PANIC:  could not flush 
> dirty data: Cannot allocate memory

As far as I can see, that "could not flush dirty data" happens total
three times in the code - there are other places where postgresql could
PANIC on fsync()-and-stuff-related issues, but they have different
messages.
Of these three places, there's an sync_file_range(), an posix_fadvise()
and an msync(), all in src/backend/storage/file/fd.c. "Cannot allocate
memory" would be ENOMEM, which posix_fadvise() does not return (as per
it's docs). So this would be sync_file_range(), which could run out
of memory (as per the manual) or msync() where ENOMEM actually means
"The indicated memory (or part of it) was not mapped". Both cases are
somewhat WTF for this setup.
What filesystem are you running?

Regards,
Christoph

-- 
Spare Space



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: PANIC: could not flush dirty data: Cannot allocate memory
Следующее
От: Thomas Munro
Дата:
Сообщение: Re: PANIC: could not flush dirty data: Cannot allocate memory