Re: [Win32] Problem with rename()

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: [Win32] Problem with rename()
Дата
Msg-id 13220.1145371858@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: [Win32] Problem with rename()  ("Peter Brant" <Peter.Brant@wicourts.gov>)
Ответы Re: [Win32] Problem with rename()  ("Peter Brant" <Peter.Brant@wicourts.gov>)
Список pgsql-bugs
"Peter Brant" <Peter.Brant@wicourts.gov> writes:
> LOG:  could not rename file "pg_xlog/000000010000010A000000BD" to
> "pg_xlog/000000010000010A000000D7", continuing to try
> ...
> Only one process (postgres.exe) is holding a handle to
> pg_xlog/000000010000010A000000BD:
> ...
> The second is similar, except that two postgres.exe processes (and
> nothing else) have the file open:

Hmm, could these be backends that have been sitting idle for some time?
I'd expect a backend to be holding open a handle for whichever WAL
segment it last wrote to.  If the backend sits idle for a couple of
checkpoints while others are advancing the end of WAL, then that segment
could become a target for renaming.

The only workable fix I can think of is to allow the checkpointer to
simply fail to rename this segment and go on about its business,
figuring that we'll be able to rename/delete the WAL segment in some
future checkpoint cycle.  Not sure how messy that would be to implement.

            regards, tom lane

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

Предыдущее
От: "Magnus Hagander"
Дата:
Сообщение: Re: [Win32] Problem with rename()
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [Win32] Problem with rename()