50 lines
1.3 KiB
Django/Jinja
50 lines
1.3 KiB
Django/Jinja
#!/bin/bash
|
|
|
|
check_orioledb_enabled() {
|
|
local pg_conf="/etc/postgresql/postgresql.conf"
|
|
if [ ! -f "$pg_conf" ]; then
|
|
return 0
|
|
fi
|
|
grep "^shared_preload_libraries" "$pg_conf" | grep -c "orioledb" || return 0
|
|
}
|
|
|
|
get_shared_buffers() {
|
|
local opt_conf="/etc/postgresql-custom/generated-optimizations.conf"
|
|
if [ ! -f "$opt_conf" ]; then
|
|
return 0
|
|
fi
|
|
grep "^shared_buffers = " "$opt_conf" | cut -d "=" -f2 | tr -d ' ' || return 0
|
|
}
|
|
|
|
update_orioledb_buffers() {
|
|
local pg_conf="/etc/postgresql/postgresql.conf"
|
|
local value="$1"
|
|
if grep -q "^orioledb.main_buffers = " "$pg_conf"; then
|
|
sed -i "s/^orioledb.main_buffers = .*/orioledb.main_buffers = $value/" "$pg_conf"
|
|
else
|
|
echo "orioledb.main_buffers = $value" >> "$pg_conf"
|
|
fi
|
|
}
|
|
|
|
main() {
|
|
local has_orioledb=$(check_orioledb_enabled)
|
|
if [ "$has_orioledb" -lt 1 ]; then
|
|
return 0
|
|
fi
|
|
local shared_buffers_value=$(get_shared_buffers)
|
|
if [ ! -z "$shared_buffers_value" ]; then
|
|
update_orioledb_buffers "$shared_buffers_value"
|
|
fi
|
|
}
|
|
|
|
# Initial locale setup
|
|
if [ $(cat /etc/locale.gen | grep -c en_US.UTF-8) -eq 0 ]; then
|
|
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
|
|
fi
|
|
|
|
if [ $(locale -a | grep -c en_US.utf8) -eq 0 ]; then
|
|
locale-gen
|
|
fi
|
|
|
|
main
|