Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Slonik fails to open an unencrypted connection #175

@OsQu

Description

@OsQu

With the latest change to SSL behaviour in 22.4.6, Slonik always passes:

{
  ssl: {
    rejectUnauthorized: false
  }
}

to pg. This makes pg to attempt to connect to database with SSL enabled: https://github.com/brianc/node-postgres/blob/master/packages/pg/lib/connection.js#L76.

Workaround is to downgrade to 22.4.5 where the connection is established without SSL.

Expected Behavior

Slonik is able to connect to databases without SSL enabled:

createPool('postgresql://username:password@localhost:5432/db')

Current Behavior

createPool('postgresql://username:password@localhost:5432/db')

throws

ConnectionError: The server does not support SSL connections

Steps to Reproduce

See "Expected Behavior" and "Unexpected Behavior"

Logs

{"context":{"package":"slonik","poolId":"01E7AXAR6M34JXDEXP2AH5FAJB","logLevel":20},"message":"pg-native module is not found","sequence":0,"time":1588430463205,"version":"1.0.0"}
{"context":{"package":"slonik","poolId":"01E7AXAR6M34JXDEXP2AH5FAJB","logLevel":30},"message":"using JavaScript bindings; pg-native not found","sequence":1,"time":1588430463206,"version":"1.0.0"}
{"context":{"package":"slonik","poolId":"01E7AXAR6M34JXDEXP2AH5FAJB","logLevel":50,"error":{"name":"Error","message":"The server does not support SSL connections","stack":"Error: The server does not support SSL connections\n    at Socket.<anonymous> (/node_modules/pg/lib/connection.js:87:35)\n    at Object.onceWrapper (events.js:313:26)\n    at Socket.emit (events.js:223:5)\n    at Socket.EventEmitter.emit (domain.js:475:20)\n    at addChunk (_stream_readable.js:309:12)\n    at readableAddChunk (_stream_readable.js:290:11)\n    at Socket.Readable.push (_stream_readable.js:224:10)\n    at TCP.onStreamRead (internal/stream_base_commons.js:181:23)"},"remainingConnectionRetryLimit":2},"message":"cannot establish connection","sequence":2,"time":1588430463247,"version":"1.0.0"}
{"context":{"package":"slonik","poolId":"01E7AXAR6M34JXDEXP2AH5FAJB","logLevel":30},"message":"retrying connection","sequence":3,"time":1588430463247,"version":"1.0.0"}
{"context":{"package":"slonik","poolId":"01E7AXAR6M34JXDEXP2AH5FAJB","logLevel":50,"error":{"name":"Error","message":"The server does not support SSL connections","stack":"Error: The server does not support SSL connections\n    at Socket.<anonymous> (/node_modules/pg/lib/connection.js:87:35)\n    at Object.onceWrapper (events.js:313:26)\n    at Socket.emit (events.js:223:5)\n    at Socket.EventEmitter.emit (domain.js:475:20)\n    at addChunk (_stream_readable.js:309:12)\n    at readableAddChunk (_stream_readable.js:290:11)\n    at Socket.Readable.push (_stream_readable.js:224:10)\n    at TCP.onStreamRead (internal/stream_base_commons.js:181:23)"},"remainingConnectionRetryLimit":1},"message":"cannot establish connection","sequence":4,"time":1588430463253,"version":"1.0.0"}

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions