Re: expected authentication request from server, but received H

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Peter J(dot) Holzer" <hjp-pgsql(at)hjp(dot)at>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: expected authentication request from server, but received H
Date: 2024-05-23 21:23:14
Message-ID: 524370.1716499394@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

"Peter J. Holzer" <hjp-pgsql(at)hjp(dot)at> writes:
> One of our users reports getting the error message
> "expected authentication request from server, but received H"
> when trying to connect to the database.

That's very bizarre, and I don't recall any similar reports in the
recent past.

> Server is PostgreSQL 15.7 (Ubuntu 15.7-1.pgdg22.04+1)
> I haven't been able to find out what client version they are using yet,
> but I suspect it's quite old.

It would definitely be interesting to find out what the client-side
code is, including the openssl version being used.

> We've been on 15.x for quite a while now and it did work until at least
> a month ago, so I wouldn't expect an incompatible protocol change,
> however, I think the upgrade from 15.6 to 15.7 was just last week, so
> maybe something changed between these minor versions?

A look at the release notes doesn't suggest that anything was changed
in that area. But I wonder if your new build could differ in some
other relevant way, such as being linked to a newer openssl version.

> I'm especially intrigued by "received H". According to
> https://www.postgresql.org/docs/current/protocol-message-formats.html
> Byte1('H') could mark a Copy Out response or a Flush command. Both don't
> make sense in that context.

Yeah, that couldn't be a valid message type byte here. I guess that
either (a) the TLS stuff is going wrong and delivering garbage
data, or (b) libpq is somehow out of sync with the server, such that
it's taking a data byte as a message type byte.

I found a description of an ancient instance of (b) here:

https://www.postgresql.org/message-id/flat/CAAZKuFaxdPccCs9%2B2hTbMM5iwPZP6C494sAVz6qZhOPcYSGkTQ%40mail.gmail.com

Of course we fixed that a dozen years ago, and anyway that particular
problem required a server that is in dire straits.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ron Johnson 2024-05-23 23:17:29 Re: PG 12.2 ERROR: cannot freeze committed xmax
Previous Message David G. Johnston 2024-05-23 16:15:35 Re: Json table/column design question