From 7fb7acfc206b4bf8c296d72b66f3bd4fe342fd87 Mon Sep 17 00:00:00 2001 From: setpill <37372069+setpill@users.noreply.github.com> Date: Thu, 8 Aug 2019 11:56:45 +0200 Subject: [PATCH] Set init stop timeout to 10 min `bitcoind` can take a long time to flush its db cache to disk upon shutdown. Most init files send a `SIGKILL` after a timeout of 1 minute, causing unclean shutdowns and triggering a long "Rolling forward" at the next startup. Increasing this timeout to 10 minutes should reduce how often this occurs, especially during IBD. fixup! Set ProtectHome in systemd service file --- contrib/init/bitcoind.conf | 2 +- contrib/init/bitcoind.init | 2 +- contrib/init/bitcoind.openrcconf | 2 +- contrib/init/bitcoind.service | 1 + 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/contrib/init/bitcoind.conf b/contrib/init/bitcoind.conf index de4ea0ed5..dde1bd0c4 100644 --- a/contrib/init/bitcoind.conf +++ b/contrib/init/bitcoind.conf @@ -16,7 +16,7 @@ expect fork respawn respawn limit 5 120 -kill timeout 60 +kill timeout 600 pre-start script # this will catch non-existent config files diff --git a/contrib/init/bitcoind.init b/contrib/init/bitcoind.init index 0c95baf3a..19e1f76d0 100644 --- a/contrib/init/bitcoind.init +++ b/contrib/init/bitcoind.init @@ -39,7 +39,7 @@ start() { stop() { echo -n $"Stopping $prog: " - killproc $prog + killproc $prog -t600 RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $lockfile diff --git a/contrib/init/bitcoind.openrcconf b/contrib/init/bitcoind.openrcconf index f70e25cb5..c8a22a08d 100644 --- a/contrib/init/bitcoind.openrcconf +++ b/contrib/init/bitcoind.openrcconf @@ -30,4 +30,4 @@ # Note that this will be mapped as argument to start-stop-daemon's # '--retry' option, which means you can specify a retry schedule # here. For more information see man 8 start-stop-daemon. -BITCOIND_SIGTERM_TIMEOUT=60 +BITCOIND_SIGTERM_TIMEOUT=600 diff --git a/contrib/init/bitcoind.service b/contrib/init/bitcoind.service index cfc5f7758..fa6a1b000 100644 --- a/contrib/init/bitcoind.service +++ b/contrib/init/bitcoind.service @@ -24,6 +24,7 @@ ExecStart=/usr/bin/bitcoind -daemon \ Type=forking PIDFile=/run/bitcoind/bitcoind.pid Restart=on-failure +TimeoutStopSec=600 # Directory creation and permissions ####################################