Re: pg_archivecleanup bug
От | Bruce Momjian |
---|---|
Тема | Re: pg_archivecleanup bug |
Дата | |
Msg-id | 20131210160502.GB14664@momjian.us обсуждение исходный текст |
Ответ на | pg_archivecleanup bug (Kevin Grittner <kgrittn@ymail.com>) |
Список | pgsql-hackers |
On Thu, Dec 5, 2013 at 12:06:07PM -0800, Kevin Grittner wrote: > An EDB customer reported a problem with pg_archivecleanup which I > have looked into and found a likely cause. It is, in any event, a > bug which I think should be fixed. It has to do with our use of > the readdir() function: > > http://pubs.opengroup.org/onlinepubs/7908799/xsh/readdir_r.html > > These are the relevant bits: > > | Applications wishing to check for error situations should set > | errno to 0 before calling readdir(). If errno is set to non-zero > | on return, an error occurred. > > | Upon successful completion, readdir() returns a pointer to an > | object of type struct dirent. When an error is encountered, a > | null pointer is returned and errno is set to indicate the error. > | When the end of the directory is encountered, a null pointer is > | returned and errno is not changed. Wow, another case where errno clearing is necessary. We were just looking this requirement for getpwuid() last week. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +
В списке pgsql-hackers по дате отправления: