mirror of
https://github.com/postgres/postgres.git
synced 2025-04-27 22:56:53 +03:00
Remove obsolete check in SIGTERM handler for the startup process.
Thanks to commit 3b00fdba9f, this check in the SIGTERM handler for the startup process is now obsolete and can be removed. Instead of leaving around the dead function write_stderr_signal_safe(), I've opted to just remove it for now. This partially reverts commit 97550c0711. Reviewed-by: Andres Freund, Noah Misch Discussion: https://postgr.es/m/20231121212008.GA3742740%40nathanxps13
This commit is contained in:
parent
28e4632509
commit
8fd0498de2
@ -19,8 +19,6 @@
|
||||
*/
|
||||
#include "postgres.h"
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#include "access/xlog.h"
|
||||
#include "access/xlogrecovery.h"
|
||||
#include "access/xlogutils.h"
|
||||
@ -112,20 +110,7 @@ static void
|
||||
StartupProcShutdownHandler(SIGNAL_ARGS)
|
||||
{
|
||||
if (in_restore_command)
|
||||
{
|
||||
/*
|
||||
* If we are in a child process (e.g., forked by system() in
|
||||
* RestoreArchivedFile()), we don't want to call any exit callbacks.
|
||||
* The parent will take care of that.
|
||||
*/
|
||||
if (MyProcPid == (int) getpid())
|
||||
proc_exit(1);
|
||||
else
|
||||
{
|
||||
write_stderr_signal_safe("StartupProcShutdownHandler() called in child process\n");
|
||||
_exit(1);
|
||||
}
|
||||
}
|
||||
proc_exit(1);
|
||||
else
|
||||
shutdown_requested = true;
|
||||
WakeupRecovery();
|
||||
|
@ -3737,31 +3737,3 @@ write_stderr(const char *fmt,...)
|
||||
#endif
|
||||
va_end(ap);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Write a message to STDERR using only async-signal-safe functions. This can
|
||||
* be used to safely emit a message from a signal handler.
|
||||
*
|
||||
* TODO: It is likely possible to safely do a limited amount of string
|
||||
* interpolation (e.g., %s and %d), but that is not presently supported.
|
||||
*/
|
||||
void
|
||||
write_stderr_signal_safe(const char *str)
|
||||
{
|
||||
int nwritten = 0;
|
||||
int ntotal = strlen(str);
|
||||
|
||||
while (nwritten < ntotal)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = write(STDERR_FILENO, str + nwritten, ntotal - nwritten);
|
||||
|
||||
/* Just give up on error. There isn't much else we can do. */
|
||||
if (rc == -1)
|
||||
return;
|
||||
|
||||
nwritten += rc;
|
||||
}
|
||||
}
|
||||
|
@ -536,10 +536,4 @@ extern void write_jsonlog(ErrorData *edata);
|
||||
*/
|
||||
extern void write_stderr(const char *fmt,...) pg_attribute_printf(1, 2);
|
||||
|
||||
/*
|
||||
* Write a message to STDERR using only async-signal-safe functions. This can
|
||||
* be used to safely emit a message from a signal handler.
|
||||
*/
|
||||
extern void write_stderr_signal_safe(const char *fmt);
|
||||
|
||||
#endif /* ELOG_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user