Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake
Date
Msg-id CADK3HHJDQjz1a8EbE7LE1Cv0S57zR7nZ02=9hLqKmqF7VOq2ww@mail.gmail.com
Whole thread Raw
In response to Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake  (Dave Cramer <davecramer@postgres.rocks>)
Responses Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake  (Martin Lichtin <lichtin@yahoo.com>)
List pgsql-jdbc


On Tue, 28 Nov 2023 at 09:07, Dave Cramer <davecramer@postgres.rocks> wrote:
Hi Martin,

Thanks for the report. I'll have a look. 
Dave Cramer


On Tue, 28 Nov 2023 at 08:27, Martin Lichtin <lichtin@yahoo.com> wrote:

Hi

I'm seeing this thread hanging in the "getConnection" method, with no timeout in sight.
However, the PGXADataSource is configured with a "connectTimeout" of 10 seconds.

   java.lang.Thread.State: RUNNABLE
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
    at java.net.SocketInputStream.read(SocketInputStream.java:171)
    at java.net.SocketInputStream.read(SocketInputStream.java:141)
    at sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:464)
    at sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:165)
    at sun.security.ssl.SSLTransport.decode(SSLTransport.java:109)
    at sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1392)
    at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1300)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:435)
    at org.postgresql.ssl.MakeSSL.convert(MakeSSL.java:41)
    at org.postgresql.core.v3.ConnectionFactoryImpl.enableSSL(ConnectionFactoryImpl.java:571)
    at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:168)
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:235)
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
    at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:223)
    at org.postgresql.Driver.makeConnection(Driver.java:402)
    at org.postgresql.Driver.connect(Driver.java:261)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at org.postgresql.ds.common.BaseDataSource.getConnection(BaseDataSource.java:103)
    at org.postgresql.xa.PGXADataSource.getXAConnection(PGXADataSource.java:49)
    at org.postgresql.xa.PGXADataSource.getXAConnection(PGXADataSource.java:35)

Any reason this timeout is not being applied here?

The version in use here is 42.3.6



Dave

pgsql-jdbc by date:

Previous
From: Dave Cramer
Date:
Subject: Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake
Next
From: Martin Lichtin
Date:
Subject: Re: Driver hangs in connect->MakeSSL.convert->SSLSocketImpl.startHandshake