Re: Crash on Windows Server 2019 - Mailing list pgsql-odbc

From Craig Ringer
Subject Re: Crash on Windows Server 2019
Date
Msg-id CAGRY4nyuVkVmj6GuRbdsrm5h7_rExVZW9qb23Z1k8Hk3mN+e+A@mail.gmail.com
Whole thread Raw
In response to Crash on Windows Server 2019  (Ingmar Koecher <ingmar.koecher@gmail.com>)
List pgsql-odbc


On Sat, 5 Dec 2020 at 00:46, Ingmar Koecher <ingmar.koecher@gmail.com> wrote:
Hi,

We have a multi-threaded Windows server process (C++) that writes data to a PostgreSQL database server using the 11.1 PostgreSQL ODBC driver.

This works smoothly pretty much everywhere except for one system, where the server process seems to crash on a regular basis inside the PostgreSQL ODBC driver, about every 10 minutes.

We have a crash dump that I've been looking at, but since I don't have access to the symbols (I tried this approach, without success), I can't determine why/how the driver is crashing. I do however see in the stack trace that crash is happening in the ConfigDriver() function:

psqlodbc35w!ConfigDriver

The full stack trace of the crashing thread below:

Good on you for getting a stack.

How was that obtained?

Can you please repeat it with debug symbols? The .pdb files for postgres itself are in the PostgreSQL install directory. I don't recall off the top of my head where the psqlODBC ones are, but likely the same. Make sure these are on your NT_SYMBOL_PATH or configured to be searched by your debugger.

If you can't get symbols, export a minidump of the crashed process and upload it somewhere. But you will need to understand that the minidump may contain sensitive information including usernames, passwords, queries, user data, etc. I can't offer you a private 1:1 way to exchange this info when I'm doing public mailing list help. So it'd be much better for you to debug the minidump yourself.

Since the issue is system specific, I suggest checking the linker path to ensure there aren't any issues with the wrong libpq or ssl libraries etc being loaded. The "depends.exe" tool from the Sysinternals suite can help with this, or you can examine the loaded libraries in the debugger session.

Also check your ini files and registry to see if there's anything funky and different in the config on the machine.

pgsql-odbc by date:

Previous
From: Craig Ringer
Date:
Subject: Re: ODBC Driver Crash
Next
From: Craig Ringer
Date:
Subject: Re: pgsql-odbc SQLGetDiagRec() API issue.