UnixWare/Threads stuff [repost from March]

From: Larry Rosenman <ler(at)lerctr(dot)org>
To: tgl(at)sss(dot)pgh(dot)pa(dot)us, scrappy(at)hub(dot)org
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: UnixWare/Threads stuff [repost from March]
Date: 2004-05-13 00:56:18
Message-ID: 4311777280911E1F637FE775@lerlaptop.lerctr.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

This is a re-post, and still the state of things.

There were a few posts after this because of my STRENUOUS objection below.

I still think we should enable threads somehow on this platform.

--On Monday, March 22, 2004 11:14:59 -0600 Larry Rosenman <ler(at)lerctr(dot)org>
wrote:

>
>
> --On Monday, March 22, 2004 09:52:54 -0500 Bruce Momjian
> <pgman(at)candle(dot)pha(dot)pa(dot)us> wrote:
>
>> Bruce Momjian wrote:
>>> Larry Rosenman wrote:
>>> > The a.out (not any library) should be linked with -Kpthread (not
>>> > -lpthread).
>>> > This will force libthread to be linked in the right order relative to
>>> > libc, libC, networking libraries, etc.
>>> >
>>> > In other words, the entire application either is or is not linked with
>>> > threads; it's not a property of an individual library.
>>> >
>>> >
>>> > SO, IF we are using the threads flags, we need to use them on ALL
>>> > libpq-using programs, ours or the users.
>>>
>>> Seems we have a few options for making threaded libpq on Unixware:
>>>
>>> o remove thread-safe SIGPIPE code, which calls thread library
>>>
>>> o create a threaded and non-threaded libpq library
>>>
>>> o add a libpq function that enables threading, and do dynamic
>>> linking of thread calls based on that function
>>>
>>> o Add thread flags to all builds on that platform, including
>>> the backend
>>>
>>> o Add the ability to specify compile/link flags for everything
>>> but the backend
>>>
>>> As I remember, libcrypt used to be required by all libpq builds on
>>> various platforms. This seems to be a similar case.
>>>
>>> I think the last option might be the best. Somehow create different
>>> cppflags/libs for the backend and non-backend programs.
>>
>> One other option is to disable threads on this platform for 7.5 unless
>> we find another platforms that need this to use threads. That is the
>> direction I will take for the moment. If someone needs a threaded libpq
>> on this platform, then can enable threads, compile libpq alone, and
>> rename it with a thread extension.
> This will be a REGRESSION from 7.4. I object STRENUOUSLY to this tack.
>
> I want to see threads enabled for this platform since it is a threaded
> kernel.
>
> What do we have to do to get there? What code do I need to write for
> y'all?
>
> LER
>
>>
>> --
>> 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

--
Larry Rosenman http://www.lerctr.org/~ler
Phone: +1 972-414-9812 E-Mail: ler(at)lerctr(dot)org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruno Wolff III 2004-05-13 01:03:14 Re: Probably security hole in postgresql-7.4.1
Previous Message Tom Lane 2004-05-13 00:43:20 Re: threads stuff/UnixWare