Re: Unixware Patch (Was: Re: Beta2 Tag'd and Bundled ...)

Bruce Momjian <pgman@candle.pha.pa.us>

From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Peter Eisentraut <peter_e@gmx.net>
Cc: Lee Kindness <lkindness@csl.co.uk>, "Marc G. Fournier" <scrappy@hub.org>, Larry Rosenman <ler@lerctr.org>, Tom Lane <tgl@sss.pgh.pa.us>, "Marc G. Fournier" <scrappy@postgresql.org>, PostgreSQL Development <pgsql-hackers@postgresql.org>
Date: 2003-09-02T15:20:14Z
Lists: pgsql-hackers
Peter Eisentraut wrote:
> Lee Kindness writes:
> 
> > You don't... and you simply shouldn't care. If there is a_r version
> > available then we should use it - even if the plain version is "safe".
> 
> The problem with this is that the automatic determination (in configure)
> whether there is a xxx_r()  version is, in general, fragile.  We cannot
> rely on configure saying that xxx_r() doesn't exist, so the plain xxx()
> should be good enough.  Else, we'd be shipping claimed-to-be-thread-safe
> libraries that might trigger bugs that will be hard to track down.
> 
> I don't see any other solution than keeping a database of NEED_XXX_R for
> each platform and then requiring these functions to show up before we
> declare a library to be thread-safe.  So far we're only dealing with three
> functions, to it should be doable.

Right.  We can't assume because a *_r function is missing that the
normal function is thread-safe.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073