Skip to content

[Question] Issues with pgdog not auto banning failed database #844

@SOG-web

Description

@SOG-web

Am using repmgr for auto failover

in a case where the primary is stopped, I detected that repmgr auto select new primary

but pgdog stop responding due to postgres1 down

but since repmgr already selected a new primary is there a way to make pgdog ignore the down of postgres1, or what other solution do we have

pgdog.toml

[general]
host = "0.0.0.0"
port = 6432
shutdown_timeout = 1000
openmetrics_port = 9090
query_timeout = 30000
checkout_timeout = 10000
connect_timeout = 5000
idle_healthcheck_interval = 5000
ban_timeout = 60000

read_write_split = "include_primary_if_replica_banned"
read_write_strategy = "conservative"
load_balancing_strategy = "least_active_connections"

pooler_mode = "session"
default_pool_size = 20

lsn_check_delay = 0
lsn_check_interval = 1_000
ban_replica_lag = 60_000
ban_replica_lag_bytes = 25_000_000

[[databases]]
name = "postgres"
host = "postgres1"
port = 5432
role = "auto"


[[databases]]
name = "postgres"
host = "postgres2"
port = 5432
role = "auto"


[[databases]]
name = "postgres"
host = "postgres3"
port = 5432
role = "auto"


[tcp]
retries = 3
time = 1000
interval = 1000
user_timeout = 1000

[admin]
name = "admin"
user = "admin"
password = "PGDOG_ADMIN_PASSWORD_PLACEHOLDER"

users.toml

[[users]]
name = "postgres"
database = "postgres"
password = "POSTGRES_PASSWORD_PLACEHOLDER"
server_user = "postgres"
server_password = "POSTGRES_PASSWORD_PLACEHOLDER"

[[users]]
name = "app"
database = "postgres"
password = "APP_PASSWORD_PLACEHOLDER"
server_user = "app"
server_password = "APP_PASSWORD_PLACEHOLDER"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions