Re: RTLD_LAZY considered harmful (Re: pltlc and pltlcu - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: RTLD_LAZY considered harmful (Re: pltlc and pltlcu
Date
Msg-id Pine.LNX.4.30.0201201604510.712-100000@peter.localdomain
Whole thread Raw
In response to RTLD_LAZY considered harmful (Re: pltlc and pltlcu problems)  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: RTLD_LAZY considered harmful (Re: pltlc and pltlcu problems)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane writes:

> Unless I hear a credible counter-argument, I am going to change
> RTLD_LAZY to RTLD_NOW in src/backend/port/dynloader/linux.h.  I have
> tested that and it produces a clean error with no backend crash.
>
> What I would *like* to do is make the same change in all the
> port/dynloader files that reference RTLD_LAZY:

RTLD_LAZY allows you to load shared library modules that contain circular
references.  I don't know if that's useful or just stupid, but on some
systems the shared library models are pretty, um, different so that the
need for this might arise from time to time.

> However I'm a bit scared to do that at this late stage of the release
> cycle, because perhaps some of these platforms don't support the full
> dlopen() API.  Comments?  Can anyone test whether RTLD_NOW works on
> any of the above-mentioned ports?

I really don't think this is a good change to make now, as we don't know
how well all of this is supported, and the failure scenario is annoying
but not really that harmful.

-- 
Peter Eisentraut   peter_e@gmx.net



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: pltlc and pltlcu problems
Next
From: Tom Lane
Date:
Subject: Re: RTLD_LAZY considered harmful (Re: pltlc and pltlcu problems)