Re: PostgreSQL does not start when max_files_per_process> 1200 onWindows 7
От | Victor Spirin |
---|---|
Тема | Re: PostgreSQL does not start when max_files_per_process> 1200 onWindows 7 |
Дата | |
Msg-id | d41cc48f-0482-23fa-8f9d-cf9117a4856d@postgrespro.ru обсуждение исходный текст |
Ответ на | Re: PostgreSQL does not start when max_files_per_process> 1200 onWindows 7 (Andres Freund <andres@anarazel.de>) |
Список | pgsql-hackers |
When max_files_per_process=1201 or more server not start. I tested and debugged this on Windows 7. On Windows 10 work all right. I found this take place after call function count_usable_fds(int max_to_probe, int *usable_fds, int *already_open) Error occured on the first call selres = select(nSockets, &rmask, NULL, NULL, &timeout) from ServerLoop. Error 0xC0000142: "{DLL Initialization Failed} Initialization of the dynamic link library %hs failed. The process is terminating abnormally." I temporarily moved call set_max_safe_fds() to top of the PostmasterMain and error moved to ReadFile in function pipe_read_line(char *cmd, char *line, int maxsize): if (!ReadFile(childstdoutrddup, lineptr, maxsize - (lineptr - line), &bytesread, NULL)) Repeat the error in a separate example did not work yet. Replacing dup for stdin on dup of file handle resolve this problem. Victor Spirin Postgres Professional:http://www.postgrespro.com The Russian Postgres Company 05.09.2018 19:24, Andres Freund пишет: > Hi, > > On 2018-09-05 13:06:06 +0300, Victor Spirin wrote: >> I have a bug in Windows 7 with max_files_per_process> 1200. >> >> Using dup (0) in the function count_usable_fds more than 1200 times (0 = >> stdin) causes further unpredictable errors with file operations. > Could you expand a bit on this? > > Greetings, > > Andres Freund >
В списке pgsql-hackers по дате отправления: