Allow pg_ctl kill to send SIGKILL.
authorAndres Freund <andres@anarazel.de>
Sun, 1 Oct 2017 22:17:10 +0000 (15:17 -0700)
committerAndres Freund <andres@anarazel.de>
Sun, 1 Oct 2017 22:24:58 +0000 (15:24 -0700)
Previously that was disallowed out of an abundance of
caution. Providing KILL support however is helpful to make the
013_crash_restart.pl test portable, and there's no actual issue with
allowing it.  SIGABRT, which has similar consequences except it also
dumps core, was already allowed.

Author: Andres Freund
Discussion: https://postgr.es/m/45d42d41-6145-9be1-7261-84acf6d9e344@2ndQuadrant.com

src/bin/pg_ctl/pg_ctl.c

index 4e02c4cea1a51f2eacb3ef12144f622b5470fb27..0893d0d26f174aaf050e6468634eb319a384da7b 100644 (file)
@@ -1903,7 +1903,7 @@ do_help(void)
    printf(_("  immediate   quit without complete shutdown; will lead to recovery on restart\n"));
 
    printf(_("\nAllowed signal names for kill:\n"));
-   printf("  ABRT HUP INT QUIT TERM USR1 USR2\n");
+   printf("  ABRT HUP INT KILL QUIT TERM USR1 USR2\n");
 
 #ifdef WIN32
    printf(_("\nOptions for register and unregister:\n"));
@@ -1961,11 +1961,8 @@ set_sig(char *signame)
        sig = SIGQUIT;
    else if (strcmp(signame, "ABRT") == 0)
        sig = SIGABRT;
-#if 0
-   /* probably should NOT provide SIGKILL */
    else if (strcmp(signame, "KILL") == 0)
        sig = SIGKILL;
-#endif
    else if (strcmp(signame, "TERM") == 0)
        sig = SIGTERM;
    else if (strcmp(signame, "USR1") == 0)