| From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
|---|---|
| To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
| Cc: | Lee Kindness <lkindness(at)csl(dot)co(dot)uk>, Larry Rosenman <ler(at)lerctr(dot)org>, PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Thread-safe configuration option appears to |
| Date: | 2003-08-06 23:29:08 |
| Message-ID: | 200308062329.h76NT8D23170@candle.pha.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
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.
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Dann Corbit | 2003-08-06 23:35:40 | Re: Thread-safe configuration option appears to |
| Previous Message | Tom Lane | 2003-08-06 23:22:07 | Re: Release changes |