Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unix sockets support on windows #3100

Open
SahAssar opened this issue Nov 23, 2023 · 1 comment
Open

Unix sockets support on windows #3100

SahAssar opened this issue Nov 23, 2023 · 1 comment

Comments

@SahAssar
Copy link

SahAssar commented Nov 23, 2023

Thanks for the library! Had an issue with what probably is an edge-case, using unix sockets on windows.

UNIX sockets are supported by postgresql on windows (I can start and connect to a database with psql without listenening on any IP), but i cannot connect with node-postgres.

If I try something like

const client = new pg.Client({
  database: 'postgres',
  user: 'surface',
  password: 'surface',
  host: postgresqlServer.socketDir
})

or

const client = new pg.Client('postgres://surface:surface@surface//postgres?host=' + postgresqlServer.socketDir)

I get

  Error: getaddrinfo ENOTFOUND C:\Users\surface\Downloads\db\socket
      at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:118:26) {
    errno: -3008,
    code: 'ENOTFOUND',
    syscall: 'getaddrinfo',
    hostname: 'C:\\Users\\surface\\Downloads\\db\\socket'

But if I try with an actual psql.exe it works:

psql.exe -d 'postgres://surface:surface@surface/postgres?host=C:\Users\surface\Downloads\db\socket'

Had a similar issue with postgres.js so opened a issue there too: porsager/postgres#737

@alxndrsn
Copy link
Contributor

The URLs used in the two examples are different; is it deliberate?

  1. ..pg.Client('postgres://surface:surface@surface//postgres?...
  2. psql.exe -d 'postgres://surface:surface@surface/postgres?...

#1 has a double / before postgres

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants