Thread: pgsql: Add backtrace support for error reporting

pgsql: Add backtrace support for error reporting

From
Alvaro Herrera
Date:
Add backtrace support for error reporting

Add some support for automatically showing backtraces in certain error
situations in the server.  Backtraces are shown on assertion failure;
also, a new setting backtrace_functions can be set to a list of C
function names, and all ereport()s and elog()s from the mentioned
functions will have backtraces generated.  Finally, the function
errbacktrace() can be manually added to an ereport() call to generate a
backtrace for that call.

Authors: Peter Eisentraut, Álvaro Herrera
Discussion: https://postgr.es/m//5f48cb47-bf1e-05b6-7aae-3bf2cd01586d@2ndquadrant.com
Discussion: https://postgr.es/m/CAMsr+YGL+yfWE=JvbUbnpWtrRZNey7hJ07+zT4bYJdVp4Szdrg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/71a8a4f6e36547bb060dbcc961ea9b57420f7190

Modified Files
--------------
configure                        |  61 +++++++++++++++++++-
configure.in                     |   4 ++
doc/src/sgml/config.sgml         |  26 +++++++++
src/backend/utils/error/assert.c |  13 +++++
src/backend/utils/error/elog.c   | 117 +++++++++++++++++++++++++++++++++++++++
src/backend/utils/misc/guc.c     |  85 ++++++++++++++++++++++++++++
src/include/pg_config.h.in       |   6 ++
src/include/utils/elog.h         |   3 +
src/include/utils/guc.h          |   2 +
9 files changed, 315 insertions(+), 2 deletions(-)


Re: pgsql: Add backtrace support for error reporting

From
Amit Langote
Date:
On Sat, Nov 9, 2019 at 3:52 Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
Add backtrace support for error reporting

Yay, thanks!

- Amit

Re: pgsql: Add backtrace support for error reporting

From
Julien Rouhaud
Date:
On Fri, Nov 8, 2019 at 11:30 PM Amit Langote <amitlangote09@gmail.com> wrote:
>
> On Sat, Nov 9, 2019 at 3:52 Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
>>
>> Add backtrace support for error reporting
>
>
> Yay, thanks!

+1 that's very cool!