From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Michael Paquier <michael@paquier.xyz>
Cc: Jacob Champion <pchampion@vmware.com>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Cc: Daniel Gustafsson <daniel@yesql.se>
Cc: info@cspug.cz
Subject: Re: Preventing abort() and exit() calls in libpq
Date: Wed, 30 Jun 2021 09:10:06 -0400
Message-ID: <202106301310.hcgqcu3dxumf@alvherre.pgsql> (raw)
In-Reply-To: <202106301258.xdrqcxocchyg@alvherre.pgsql>
On 2021-Jun-30, Alvaro Herrera wrote:
> On 2021-Jun-29, Tom Lane wrote:
>
> > Alvaro Herrera <alvherre@alvh.no-ip.org> writes:
> > > Ah, I nm'd all files in src/interfaces/libpq and got no hits for abort.
> > > But I did get one in libpgport_shlib.a:
> >
> > > path_shlib.o:
> > > U abort
> >
> > Yeah, there is one in get_progname(). But path.o shouldn't be getting
> > pulled into libpq ... else why aren't all the animals failing?
>
> Maybe there's something about the linker flags being used.
>
> ... ah yeah, if I configure with coverage enabled on my machine, it fails in the same way.
If I remove -fprofile-arcs from CFLAGS, then abort is no longer present,
but we still get a fail because of __gcov_exit. I suppose if you'd add
an exception for __cxa_atexit, the same place could use one for
__gcov_exit.
I'm not sure what to make of the -fprofile-arcs stuff though.
--
Álvaro Herrera Valdivia, Chile
https://www.EnterpriseDB.com/
"Java is clearly an example of money oriented programming" (A. Stepanov)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: alvherre@alvh.no-ip.org, tgl@sss.pgh.pa.us, michael@paquier.xyz, pchampion@vmware.com, daniel@yesql.se, info@cspug.cz
Subject: Re: Preventing abort() and exit() calls in libpq
In-Reply-To: <202106301310.hcgqcu3dxumf@alvherre.pgsql>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox