> -----Original Message-----
> From: Bruce Momjian [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, August 06, 2003 4:29 PM
> To: Peter Eisentraut
> Cc: Lee Kindness; Larry Rosenman; PostgreSQL Development
> Subject: Re: [HACKERS] Thread-safe configuration option appears to
> 
> 
> Peter Eisentraut wrote:
> > Bruce Momjian writes:
> > 
> > > First get your own platforms enabled for the existing 
> thread flag, 
> > > and we can revisit this when most/all our platforms are 
> supported.  
> > > We want to avoid confusion of having things work for some 
> platforms 
> > > and not others with no way to communicate that to the users.
> > 
> > Yes, let's settle on that for now (= release 7.4): Without 
> > --enable-thread-safety, you get the same old; with 
> > --enable-thread-safety, you get _REENTRANT (or equivalent) 
> for libpq 
> > and libecpg, and you get pthreads in libecpg.  Then users and 
> > packagers can judge the impact on their platform for themselves.  
> > While the release is out there, we can gather more data on this and 
> > information for the forgotten platforms, and then for 7.5 we might 
> > have something that pleases more people by default.
> 
> OK.
> 
> > Where I see this going, however, is three buckets: one group of 
> > platforms will have near zero impact and there will be pressure to 
> > enable thread safety by default (BSD/OS, Linux, UnixWare), a second 
> > group of platforms where there will be an endless debate 
> about which 
> > is right (FreeBSD, AIX), and a third group of platforms 
> that have no 
> > thread-safety no matter how hard you look (mostly the old 
> ones).  So 
> > in the end we will either have to document "libpq is thread-safe on 
> > platform A, B, and C", or we will have to keep the switch for all 
> > platforms and leave it off by default.
> 
> I am hoping groups 1 and 2 can be merged.  I think a good 
> rule is that if libc is threadsafe, we can someday enable 
> libpq to be thread-safe by default, and if there is a libc_r 
> that is thread-safe, we create a libpq_r for that.  In fact, 
> I thought we were going to try that for 7.4 when 
> --enable-thread-safety is added to configure.
> 
> Perhaps by 7.5 we can enable the above logic by default.
> 
> However, I do think we will have to mention the platforms 
> that aren't thread-safe some day, of course, once we enable 
> thread-safe by default.

Perhaps a portable BSD licensed threading library could be included for
platforms that do not have a safe thread interface.

Is there a known list of functions with reentrancy problems?

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to