TablePlus / TablePlus-Linux

TablePlus Linux issue tracker
https://tableplus.com
291 stars 30 forks source link

Bundled version of libpq is old, and doesn't include SNI support #150

Closed hlinnaka closed 1 year ago

hlinnaka commented 2 years ago
  1. Database version (Ex: PostgreSQL 10.0):

PostgreSQL v14, running at neon.tech

  1. TablePlus version (the number on the welcome or about screen, Ex: build 81):

Version 0.1 (186)

  1. Linux distro (Ex: Ubuntu 18.04):

Debian, tableplus installed from https://deb.tableplus.com/debian/18

  1. The steps to reproduce this issue:

When you connect to a Postgres hosted at neon.tech, you get an error like this:

PostgresError: SNI is missing. EITHER please upgrade the postgres client library OR pass the project name as a parameter: '...&options=project%3D<project-name>...'.

See https://github.com/neondatabase/neon/issues/1946#issuecomment-1176792182

This is because neon.tech uses a proxy that relies on Service Name Indicator (SNI) in the TLS handshake to route the connection to the correct Postgres instance. Support for SNI was added to libpq in PostgreSQL v14 (search for "SNI" at https://www.postgresql.org/docs/14/release-14.html)

Am I right that TablePlus is statically linked with an older < 14 version of libpq? Could you update it to the latest version, i.e. 14.4, to get SNI support, please? We've had a few reports already of people trying to use TablePlus with Neon beta now, so it would be nice if it worked out-of-the-box.

-- Heikki, Neon co-founder

elahmo commented 2 years ago

Our team is using TablePlus and I have the exact same issue.

kelvich commented 2 years ago

The latest releases for macOS (Build 436) and Windows (Build 202) added SNI support:

Linux is still pending.

huyphams commented 1 year ago

We're working on it.

huyphams commented 1 year ago

We added SNI support on Ubuntu 20, 21 and 22 (not on 18 due to technical issue). Thanks!