Re: DIAG [HY000] server closed the connection unexpectedly - Mailing list pgsql-odbc

From Jon Raiford
Subject Re: DIAG [HY000] server closed the connection unexpectedly
Date
Msg-id OFC68F9317.B41AD1C6-ON85258051.0069E7DB-85258051.006A8C0F@LocalDomain
Whole thread Raw
In response to Re: DIAG [HY000] server closed the connection unexpectedly  ("Jon Raiford" <Raiford@labware.com>)
Responses Re: DIAG [HY000] server closed the connection unexpectedly
List pgsql-odbc
It would seem that I was mistaken.  My simple test case did produce the expected 08001 SQLSTATE with the updated driver, but when I scaled up to multiple connections it was not consistent.  In the end I am now simply check HY000 errors and change them to 08001 if the text matches "*server closed the connection*".  A brute force method, but it allows me to move forward.

Of course it may be that I made a mistake in applying the patch or my build environment.  I will happily test an updated build when it becomes available and report back.

Jon

pgsql-odbc-owner@postgresql.org wrote on 10/19/2016 11:45:57 AM:

> From: "Jon Raiford" <Raiford@labware.com>

> To: "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>
> Cc: "pgsql-odbc@postgresql.org" <pgsql-odbc@postgresql.org>
> Date: 10/19/2016 11:46 AM
> Subject: Re: [ODBC] DIAG [HY000] server closed the connection unexpectedly
> Sent by: pgsql-odbc-owner@postgresql.org
>
> Hi Tsunakawa-san,
>
> Thank you.  I can confirm that this does resolve my issue.  I am now
> seeing an 08001 SQLSTATE when the disconnect first occurs.  I have
> other issues with my reconnecting code, but at least now I will be
> able to make it work.
>
> Assuming this is accepted and committed, is there any idea when an
> official updated installer may be posted?
>
> Thanks again,
>
> Jon
>
> pgsql-odbc-owner@postgresql.org wrote on 10/19/2016 03:44:09 AM:
>
> > From: "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>
> > To: "'Jon Raiford'" <Raiford@labware.com>, "pgsql-
> > odbc@postgresql.org" <pgsql-odbc@postgresql.org>
> > Date: 10/19/2016 03:44 AM
> > Subject: Re: [ODBC] DIAG [HY000] server closed the connection unexpectedly
> > Sent by: pgsql-odbc-owner@postgresql.org
> >
> > Hi, Inoue-san
> > cc: Jon
> >
> > This is rather a bug of psqlODBC.  According to the SQLExecDirect
> > reference page below, the SQLSTATE should be 08S01.
> >
> >
https://msdn.microsoft.com/en-us/library/ms713611(v=vs.85).aspx
> >
> > 08S01
> > Communication link failure
> > The communication link between the driver and the data source to
> > which the driver was connected failed before the function completed
> > processing.
> >  
> >
> >
> > The attached patch will fix this.  Could you review and commit it?
> >
> >
> > Regards
> > Takayuki Tsunakawa
> >
> > > -----Original Message-----
> > > From: pgsql-odbc-owner@postgresql.org
> > > [
mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Jon Raiford
> > > Sent: Wednesday, October 19, 2016 5:00 AM
> > > To: pgsql-odbc@postgresql.org
> > > Subject: [ODBC] DIAG [HY000] server closed the connection unexpectedly
> > >
> > > I am running the 32-bit v9.05.02.10 Unicode ODBC driver in one environment
> > > (dated 15-Apr-2016).  I know it may not be the latest version,
> butcan anyone
> > > tell me if there has been a bug recently with the ODBC driver answering
> > > the wrong SQL_STATE during a database disconnect?
> > >
> > > Here is a small excerpt from my ODBC trace log.  This is the first error
> > > encountered during the connection.  Notice that instead of answering with
> > > the SQL STATE [08006] or whatever it is answering a generic [HY000].  This
> > > has required quite a lot of effort to hunt this down into a
> simple scenario
> > > so I'm hopefully someone will tell me it has already been addressed :)
> > >
> > >
> > > v               4348-18a0        ENTER SQLAllocHandle
> > >                 SQLSMALLINT                  3 <SQL_HANDLE_STMT>
> > >                 SQLHANDLE           0x02298080
> > >                 SQLHANDLE *         0x0018F0EC
> > >
> > > v               4348-18a0        EXIT  SQLAllocHandle  with return code
> > > 0 (SQL_SUCCESS)
> > >                 SQLSMALLINT                  3 <SQL_HANDLE_STMT>
> > >                 SQLHANDLE           0x02298080
> > >                 SQLHANDLE *         0x0018F0EC ( 0x0229C4E8)
> > >
> > > v               4348-18a0        ENTER SQLExecDirectW
> > >                 HSTMT               0x0229C4E8
> > >                 WCHAR *             0x0018F10C [       4] "asdf"
> > >                 SDWORD                     4
> > >
> > > v               4348-18a0        EXIT  SQLExecDirectW  with return code
> > > -1 (SQL_ERROR)
> > >                 HSTMT               0x0229C4E8
> > >                 WCHAR *             0x0018F10C [       4] "asdf"
> > >                 SDWORD                     4
> > >
> > >                 DIAG [HY000] server closed the connection unexpectedly
> > >         This probably means the server terminated abnormally
> > >         before or while processing the request.
> > > ;
> > > server closed the connection unexpectedly
> > >         This probably means the server terminated abnormally
> > >         before or while processing the request.
> > >  (1)
> > >
> > >
> > >
> > >
> > > Best Regards,
> > >
> > > Jon Raiford
> > > raiford@labware.com
> > > Tel: +1 (302) 658-8444
> > >
http://www.labware.com<http://www.labware.com/> LabWare LIMS Solutions
> > > - Results Count
> > [attachment "sqlstate_on_disconnection.patch" deleted by Jon
> > Raiford/Employee/LW-US]
> > --
> > Sent via pgsql-odbc mailing list (pgsql-odbc@postgresql.org)
> > To make changes to your subscription:
> >
http://www.postgresql.org/mailpref/pgsql-odbc

pgsql-odbc by date:

Previous
From: "Jon Raiford"
Date:
Subject: Re: DIAG [HY000] server closed the connection unexpectedly
Next
From: "Tsunakawa, Takayuki"
Date:
Subject: Re: DIAG [HY000] server closed the connection unexpectedly