Re: Patch: Implement failover on libpq connect level.
Aleksander Alekseev <a.alekseev@postgrespro.ru>
From: Aleksander Alekseev <a.alekseev@postgrespro.ru>
To: Victor Wagner <vitus@wagner.pp.ru>
Cc: pgsql-hackers@postgresql.org
Date: 2016-09-08T14:48:25Z
Lists: pgsql-hackers
> Hello, Victor. > > > I'm sending new version of patch. > > > > I've replaced readonly option with target_server_type (with JDBC > > compatibility alias targetServerType), > > > > use logic of setting defaults based on number of hosts in the connect > > string instead of complicated condition in the state machine, > > > > added checks for return values of memory allocation function. > > > > Also, I've solved pg_usleep problem by linking pgsleep.c into libpq > > along with some other libpgport objects which are already linked there. > > > > Thus client applications don't need to link with libpgport and libpq > > shared library is self-containted. > > This patch doesn't apply to master branch: > > ``` > $ git apply ~/temp/libpq-failover-8.patch > /home/eax/temp/libpq-failover-8.patch:184: trailing whitespace. > check: > /home/eax/temp/libpq-failover-8.patch:252: trailing whitespace. > /* > /home/eax/temp/libpq-failover-8.patch:253: trailing whitespace. > * Validate target_server_mode option > /home/eax/temp/libpq-failover-8.patch:254: trailing whitespace. > */ > /home/eax/temp/libpq-failover-8.patch:306: trailing whitespace. > appendPQExpBuffer(&conn->errorMessage, > error: src/interfaces/libpq/t/001-multihost.pl: already exists in > working directory > > $ git diff > ``` Oops. Sorry, my mistake. I forgot to check for untracked files. Everything is fine. -- Best regards, Aleksander Alekseev
Commits
-
libpq: Add target_session_attrs parameter.
- 721f7bd3cbcc 10.0 landed
-
Remove superuser checks in pgstattuple
- fd321a1dfd64 10.0 cited
-
Fix unwanted flushing of libpq's input buffer when socket EOF is seen.
- c405918858c0 9.6.0 cited