From f75572beb8b59a7a73f6e1d12d692b483dc04c85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trygve=20Laugst=C3=B8l?= Date: Mon, 20 Jun 2016 16:07:07 +0200 Subject: [PATCH] feat: connect the socket only if the socket factory created an unconnected socket This is useful if the socket factory creates the complete connection, for example when using Unix sockets. fixes #587 --- pgjdbc/src/main/java/org/postgresql/core/PGStream.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pgjdbc/src/main/java/org/postgresql/core/PGStream.java b/pgjdbc/src/main/java/org/postgresql/core/PGStream.java index 1f447582b0..44e0b65267 100644 --- a/pgjdbc/src/main/java/org/postgresql/core/PGStream.java +++ b/pgjdbc/src/main/java/org/postgresql/core/PGStream.java @@ -58,7 +58,9 @@ public PGStream(SocketFactory socketFactory, HostSpec hostSpec, int timeout) thr this.hostSpec = hostSpec; Socket socket = socketFactory.createSocket(); - socket.connect(new InetSocketAddress(hostSpec.getHost(), hostSpec.getPort()), timeout); + if (!socket.isConnected()) { + socket.connect(new InetSocketAddress(hostSpec.getHost(), hostSpec.getPort()), timeout); + } changeSocket(socket); setEncoding(Encoding.getJVMEncoding("UTF-8"));