Re: BUG #17981: HY000 server closed the connection unexpectedly - Mailing list pgsql-bugs

From Laurenz Albe
Subject Re: BUG #17981: HY000 server closed the connection unexpectedly
Date
Msg-id 54909d1223f527150f9c0e76efc581ded17e8e96.camel@cybertec.at
Whole thread Raw
In response to BUG #17981: HY000 server closed the connection unexpectedly  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On Mon, 2023-06-19 at 11:52 +0000, PG Bug reporting form wrote:
> I am writing an application that connects to the local database through
> psqlodbc version 13.02. And when I manually stop my database service, I get
> sqlstate HY000 and message 'server closed the connection unexpectedly ...'.
> Should not it be something like 08S01? Also SQLGetConnectAttr(GetHandle(),
> SQL_ATTR_CONNECTION_DEAD, &dead, SQL_IS_INTEGER, nullptr); does not produce
> right answer and dead is returned equal to SQL_CD_FALSE.

08S01 is not a standard-defined SQLSTATE.  The standard says: Subclass values
associated with such classes that begin with one of the <digit>s'5', '6', '7',
'8', or '9' or one of the <simple Latin upper case letter>s 'I', 'J', 'K', 'L',
'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', or 'Z' are
reserved for implementation-defined conditions and are called implementation-
defined subclasses.

A web search shows that 08S01 is MySQL-specific.  I don't think that that is
necessarily better than HY000, which is defined as an unspecified C API
error by the SQL standard.

About SQLGetConnectAttr, you should probably ask the ODBC mailing list
pgsql-odbc@postgresql.org

Yours,
Laurenz Albe



pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #17976: Inconsistent results of SELECT using CASE WHEN clause
Next
From: Tom Lane
Date:
Subject: Re: BUG #17978: Unexpected error: "wrong varnullingrels (b) (expected (b 5)) for Var 6/2" triggered by JOIN