Re: [BUGS] BUG #1466: #maintenace_work_mem = 16384
От | Tom Lane |
---|---|
Тема | Re: [BUGS] BUG #1466: #maintenace_work_mem = 16384 |
Дата | |
Msg-id | 8770.1108321206@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: [BUGS] BUG #1466: #maintenace_work_mem = 16384 ("Magnus Hagander" <mha@sollentuna.net>) |
Список | pgsql-patches |
"Magnus Hagander" <mha@sollentuna.net> writes: >> I dislike going through write_stderr because it requires an extra, >> useless gettext() call, > It does? First thing it does. > Isn't buf.data already "gettextified"? Yeah; the gettext() call is against the "%s". (If it did gettext() on the buffer data it would be outright wrong.) Useless, but potentially a cycle-sucker under high log volume. >> but you can't assume that every log message the system ever prints >> is going to be under 2K. > We're not assuming that! Yes you are (and no the "it's user error" argument doesn't impress me). It's trivial to work around both these problems anyway; just a matter of repeating the logic in-line instead of trying to use write_stderr. The issue that's actually bothering me is: >> The proposed test on Redirect_stderr looks pretty fishy too; for one >> thing it will almost certainly not be the right thing inside the stderr >> logger subprocess itself. > Could you explain further what the issue is there? Inside the logger subprocess, Redirect_stderr is guaranteed true (since it'll be inherited from the postmaster) and therefore the proposed change ensures that anything the logger might want to complain about goes to the original stderr, ie, into the bit bucket rather than someplace useful. Perhaps something like if ((!Redirect_stderr || am_syslogger) && pgwin32_is_service()) would be reasonable. > There is special code in the send_message_to_server_log function to make > sure it's written directly to the file. If the logger is complaining, it's quite possibly because it's unable to write to its file. Now that you mention it, doesn't this code go into infinite recursion if write_syslogger_file_binary() tries to ereport? regards, tom lane
В списке pgsql-patches по дате отправления: