Re: A couple of fishy-looking critical sections
| От | Tom Lane |
|---|---|
| Тема | Re: A couple of fishy-looking critical sections |
| Дата | |
| Msg-id | 9325.979945256@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | RE: A couple of fishy-looking critical sections ("Mikheev, Vadim" <vmikheev@SECTORBASE.COM>) |
| Список | pgsql-hackers |
"Mikheev, Vadim" <vmikheev@SECTORBASE.COM> writes:
>> 3. src/backend/access/transam/xlog.c, routine CreateCheckPoint:
>> does this *entire* routine need to be a critical section? Again,
>> I fear a shotgun approach will mean a net decrease in reliability,
>> not an improvement. How much of this code really has to be critical?
> When postmaster has to create Checkpoint this routine is called from
> bootstrap.c:BootstrapMain() - ie without normal initialization, so
> I don't know result of elog(ERROR) in this case -:(
I believe elog(ERROR) will be treated like FATAL in this case (because
Warn_restart isn't set). So the checkpoint process will clean up and
exit, but there wouldn't be a system-wide restart were it not for the
critical section.
The question that's bothering me is whether a system-wide restart is
actually going to make things better, rather than worse, if the
checkpoint process has a problem ...
regards, tom lane
В списке pgsql-hackers по дате отправления: