mirror of https://github.com/zulip/zulip.git
terminate-psql-sessions: Remove postgres <9.2 support.
Those older versions of postgres reached end-of-life upstream, and it makes this shell script easier to read.
This commit is contained in:
parent
4c4b6d105e
commit
460ea76d96
|
@ -1,10 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
vergte() {
|
|
||||||
[ "$1" = "$(echo -e "$1\\n$2" | sort -V | tail -n1)" ]
|
|
||||||
}
|
|
||||||
|
|
||||||
DEFAULT_USER="postgres"
|
DEFAULT_USER="postgres"
|
||||||
if [ "$(uname)" = "OpenBSD" ]; then
|
if [ "$(uname)" = "OpenBSD" ]; then
|
||||||
DEFAULT_USER="_postgresql"
|
DEFAULT_USER="_postgresql"
|
||||||
|
@ -22,18 +18,13 @@ username=$1
|
||||||
|
|
||||||
shift
|
shift
|
||||||
tables=$(echo "'$*'" | sed "s/ /','/g")
|
tables=$(echo "'$*'" | sed "s/ /','/g")
|
||||||
if vergte "$major" "9.2"; then
|
|
||||||
pidname="pid"
|
|
||||||
else
|
|
||||||
pidname="procpid"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$EUID" -eq 0 ]; then
|
if [ "$EUID" -eq 0 ]; then
|
||||||
sudo -u "$DEFAULT_USER" sh -c "psql postgres '$DEFAULT_USER'" <<EOF
|
sudo -u "$DEFAULT_USER" sh -c "psql postgres '$DEFAULT_USER'" <<EOF
|
||||||
SELECT pg_terminate_backend($pidname) FROM pg_stat_activity WHERE datname IN ($tables);
|
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname IN ($tables);
|
||||||
EOF
|
EOF
|
||||||
else
|
else
|
||||||
psql -h localhost postgres "$username" <<EOF
|
psql -h localhost postgres "$username" <<EOF
|
||||||
SELECT pg_terminate_backend($pidname) FROM pg_stat_activity WHERE datname IN ($tables);
|
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname IN ($tables);
|
||||||
EOF
|
EOF
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue