Re: [PATCH] Add Windows support for backtrace_functions (MSVC only)

From: Álvaro Herrera <alvherre(at)kurilemu(dot)de>
To: Bryan Green <dbryan(dot)green(at)gmail(dot)com>
Cc: Euler Taveira <euler(at)eulerto(dot)com>, Jakub Wartak <jakub(dot)wartak(at)enterprisedb(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [PATCH] Add Windows support for backtrace_functions (MSVC only)
Date: 2026-02-23 20:16:50
Message-ID: 202602232005.2cmbj5ougsfv@alvherre.pgsql
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello, thanks for following up.

However, I was going over the commit message one final time after your
reply, and I noticed that SymInitialize()'s documentation says quite
explicitly:

"Do not use the handle returned by GetCurrentProcess"
https://learn.microsoft.com/en-us/windows/win32/api/dbghelp/nf-dbghelp-syminitialize

which is exactly what we do with this patch.

I think we should DuplicateHandle() on the GetCurrentProcess() handle
(which then obviously needs CloseHandle afterwards). Would you agree?

Here's the whole thing again with edited commit message and some trivial
stylistic changes.

I was amused to discover that Solaris, macOS and FreeBSD all copied the
backtrace() interface from glibc, and the only platform in the buildfarm
other than Windows that seems to lack support for backtraces is Alpine
Linux.

Regards

--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
"Ed is the standard text editor."
http://groups.google.com/group/alt.religion.emacs/msg/8d94ddab6a9b0ad3

Attachment Content-Type Size
v8-0001-Add-backtrace-support-for-Windows-using-DbgHelp-A.patch text/x-diff 8.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2026-02-23 20:20:13 Re: PSA: Planning to grease protocol connections during 19beta
Previous Message Tom Lane 2026-02-23 20:14:42 Re: AIX support