From: | Dave Cramer <davecramer(at)postgres(dot)rocks> |
---|---|
To: | Nikolay Prokofiev <nprokofiev(at)gmail(dot)com> |
Cc: | pgsql-jdbc(at)lists(dot)postgresql(dot)org |
Subject: | Re: Pg jdbc DNS failover |
Date: | 2023-11-21 13:07:46 |
Message-ID: | CADK3HHLSA2CBWq2S3TSqtUz9ELn2BXkEnWgOvxkb25SKAf087A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
On Tue, 21 Nov 2023 at 04:07, Nikolay Prokofiev <nprokofiev(at)gmail(dot)com>
wrote:
> Hi. According to pgjdbc documantation
> <https://jdbc.postgresql.org/documentation/use/#connection-fail-over>,
> the driver supports failover when ip addresses and ports of host are comma
> separated, like this:
> jdbc:postgresql://my-db-host-slave-1:5432,my-db-host-master-1:5432/database?targetServerType=primary
> .
>
> But it's not convenient, because we use k8s for pg, and there may be more
> slaves added and master ip may be changed.
>
> I want to store all my hosts in DNS and to specify one hostname like this:
> jdbc:postgresql://my-db-host.local:5432/database?targetServerType=primary
>
> I have a dns record with 2 ip addresses:
>
> $ nslookup my-db-host.local
> Server: 192.168.1.1
> Address: 192.168.1.1#53
>
> Non-authoritative answer:
> Name: my-db-host-slave-1
> Address: 192.168.10.21
> Name: my-db-host-master-1
> Address: 192.168.11.25
>
> and I tried to specify it like this:
> jdbc:postgresql://my-db-host.local:5432/database?targetServerType=primary.
>
> But this way it only picks the first ip - slave and fails with org.postgresql.util.PSQLException:
> Could not find a server with specified targetServerType: primary
>
> Is there any workaround for using dns failover? May be some options in
> connection pools if driver does not support that?
>
Currently no. It would be a useful addition however.
Dave
From | Date | Subject | |
---|---|---|---|
Next Message | Martin Lichtin | 2023-11-28 13:27:27 | Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake |
Previous Message | Nikolay Prokofiev | 2023-11-21 09:07:30 | Pg jdbc DNS failover |