pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
ECPG thread-safety
35+ messages / 9 participants
[nested] [flat]

* ECPG thread-safety
@ 2003-03-28 00:44  Philip Yarra <philip@utiba.com>
  0 siblings, 2 replies; 35+ messages in thread

From: Philip Yarra @ 2003-03-28 00:44 UTC (permalink / raw)
  To: pgsql-interfaces

As I found out recently, ECPG is not thread-safe. This is a problem for us, as 
we really need to be able to use ECPG* in a multi-threaded C application. 
Michael mentioned that Lee is working on fixing these problems, but was not 
sure when it would be complete. 

So, my questions are: 
Lee/anyone, do you have an estimated completion date? 
If not, can we (myself plus a "real" C programmer) help you?

Regards, Philip Yarra.

* Yes, we could use libpq, but ECPG minimises our porting from Informix. 
Rewriting everything to use libpq would be too expensive.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 02:00  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Philip Yarra <philip@utiba.com>
  1 sibling, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-03-28 02:00 UTC (permalink / raw)
  To: Philip Yarra <philip@utiba.com>; +Cc: pgsql-interfaces


I have put a mailbox file at:

	ftp://candle.pha.pa.us/pub/postgresql/mypatches

where there is a partial implementation of thread-safe ecpg.  Maybe you
can work with Michael to complete it.

---------------------------------------------------------------------------

Philip Yarra wrote:
> As I found out recently, ECPG is not thread-safe. This is a problem for us, as 
> we really need to be able to use ECPG* in a multi-threaded C application. 
> Michael mentioned that Lee is working on fixing these problems, but was not 
> sure when it would be complete. 
> 
> So, my questions are: 
> Lee/anyone, do you have an estimated completion date? 
> If not, can we (myself plus a "real" C programmer) help you?
> 
> Regards, Philip Yarra.
> 
> * Yes, we could use libpq, but ECPG minimises our porting from Informix. 
> Rewriting everything to use libpq would be too expensive.
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
> 

-- 
  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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 06:49  Philip Yarra <philip@utiba.com>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 3 replies; 35+ messages in thread

From: Philip Yarra @ 2003-03-28 06:49 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: pgsql-interfaces

On Fri, 28 Mar 2003 13:00, you wrote:
> I have put a mailbox file at:
>
> 	ftp://candle.pha.pa.us/pub/postgresql/mypatches
>
> where there is a partial implementation of thread-safe ecpg.  Maybe you
> can work with Michael to complete it.

Okay, thanks for that. Have grabbed the file, and started reading. I'll also 
wait to hear from Michael or Lee before going too far on this. 

Everything I have read so far suggests the issue is related to SQLCA itself... 
and that would be consistent with what happens in the backend (data is 
inserted, but threads lock straight after). Can anyone enlighten me further?

Thanks and regards, Philip.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* ECPG thread-safety
@ 2003-03-28 09:37  Lee Kindness <lkindness@csl.co.uk>
  parent: Philip Yarra <philip@utiba.com>
  1 sibling, 1 reply; 35+ messages in thread

From: Lee Kindness @ 2003-03-28 09:37 UTC (permalink / raw)
  To: Philip Yarra <philip@utiba.com>; +Cc: pgsql-interfaces@postgresql.org, Lee Kindness <lkindness@csl.co.uk>; pgsql-hackers@postgresql.org, Bruce Momjian <pgman@candle.pha.pa.us>; Michael Meskes <meskes@postgresql.org>

Philip,

You can find the "patch so far" at:

 http://services.csl.co.uk/postgresql/

along with a libpq thread-safe patch.

The thread referenced by Bruce's email details some of the issues
still to be looked at. The main work is integration with the build
system (testing for and linking in POSIX threads) and testing.

I'm more than happy for you to look at at, I haven't had the time I
hoped to complete this.

Thanks, Lee.

Philip Yarra writes:
 > As I found out recently, ECPG is not thread-safe. This is a problem for us, as 
 > we really need to be able to use ECPG* in a multi-threaded C application. 
 > Michael mentioned that Lee is working on fixing these problems, but was not 
 > sure when it would be complete. 
 > 
 > So, my questions are: 
 > Lee/anyone, do you have an estimated completion date? 
 > If not, can we (myself plus a "real" C programmer) help you?
 > 
 > Regards, Philip Yarra.
 > 
 > * Yes, we could use libpq, but ECPG minimises our porting from Informix. 
 > Rewriting everything to use libpq would be too expensive.
 > 




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 15:54  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Lee Kindness <lkindness@csl.co.uk>
  0 siblings, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-03-28 15:54 UTC (permalink / raw)
  To: Lee Kindness <lkindness@csl.co.uk>; +Cc: Philip Yarra <philip@utiba.com>; pgsql-interfaces@postgresql.org, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>


I have the libpq patch in my mailbox that just needs configure thread
testing code.  I will get that in for 7.4.

---------------------------------------------------------------------------

Lee Kindness wrote:
> Philip,
> 
> You can find the "patch so far" at:
> 
>  http://services.csl.co.uk/postgresql/
> 
> along with a libpq thread-safe patch.
> 
> The thread referenced by Bruce's email details some of the issues
> still to be looked at. The main work is integration with the build
> system (testing for and linking in POSIX threads) and testing.
> 
> I'm more than happy for you to look at at, I haven't had the time I
> hoped to complete this.
> 
> Thanks, Lee.
> 
> Philip Yarra writes:
>  > As I found out recently, ECPG is not thread-safe. This is a problem for us, as 
>  > we really need to be able to use ECPG* in a multi-threaded C application. 
>  > Michael mentioned that Lee is working on fixing these problems, but was not 
>  > sure when it would be complete. 
>  > 
>  > So, my questions are: 
>  > Lee/anyone, do you have an estimated completion date? 
>  > If not, can we (myself plus a "real" C programmer) help you?
>  > 
>  > Regards, Philip Yarra.
>  > 
>  > * Yes, we could use libpq, but ECPG minimises our porting from Informix. 
>  > Rewriting everything to use libpq would be too expensive.
>  > 
> 

-- 
  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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 15:59  Larry Rosenman <ler@lerctr.org>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Larry Rosenman @ 2003-03-28 15:59 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; Lee Kindness <lkindness@csl.co.uk>; +Cc: Philip Yarra <philip@utiba.com>; pgsql-interfaces@postgresql.org, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>



--On Friday, March 28, 2003 10:54:23 -0500 Bruce Momjian 
<pgman@candle.pha.pa.us> wrote:

>
> I have the libpq patch in my mailbox that just needs configure thread
> testing code.  I will get that in for 7.4.
I can help with the UnixWare threads stuff.  Also, Micheal Meskes now has 
an account
on my UnixWare box.

The threads are native on UW, but you need to invoke the cc -Kpthread 
option.

LER

>
> -------------------------------------------------------------------------
> --
>
> Lee Kindness wrote:
>> Philip,
>>
>> You can find the "patch so far" at:
>>
>>  http://services.csl.co.uk/postgresql/
>>
>> along with a libpq thread-safe patch.
>>
>> The thread referenced by Bruce's email details some of the issues
>> still to be looked at. The main work is integration with the build
>> system (testing for and linking in POSIX threads) and testing.
>>
>> I'm more than happy for you to look at at, I haven't had the time I
>> hoped to complete this.
>>
>> Thanks, Lee.
>>
>> Philip Yarra writes:
>>  > As I found out recently, ECPG is not thread-safe. This is a problem
>>  > for us, as  we really need to be able to use ECPG* in a
>>  > multi-threaded C application.  Michael mentioned that Lee is working
>>  > on fixing these problems, but was not  sure when it would be
>>  > complete.
>>  >
>>  > So, my questions are:
>>  > Lee/anyone, do you have an estimated completion date?
>>  > If not, can we (myself plus a "real" C programmer) help you?
>>  >
>>  > Regards, Philip Yarra.
>>  >
>>  > * Yes, we could use libpq, but ECPG minimises our porting from
>>  > Informix.  Rewriting everything to use libpq would be too expensive.
>>  >
>>
>
> --
>   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
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>



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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 16:00  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Larry Rosenman <ler@lerctr.org>
  0 siblings, 3 replies; 35+ messages in thread

From: Bruce Momjian @ 2003-03-28 16:00 UTC (permalink / raw)
  To: Larry Rosenman <ler@lerctr.org>; +Cc: Lee Kindness <lkindness@csl.co.uk>; Philip Yarra <philip@utiba.com>; pgsql-interfaces@postgresql.org, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>


Would someone take those patches and hunt around for proper 'configure'
tests?  I can do the configure coding, but I don't know what tests to
make.

	http://services.csl.co.uk/postgresql/


---------------------------------------------------------------------------

Larry Rosenman wrote:
> 
> 
> --On Friday, March 28, 2003 10:54:23 -0500 Bruce Momjian 
> <pgman@candle.pha.pa.us> wrote:
> 
> >
> > I have the libpq patch in my mailbox that just needs configure thread
> > testing code.  I will get that in for 7.4.
> I can help with the UnixWare threads stuff.  Also, Micheal Meskes now has 
> an account
> on my UnixWare box.
> 
> The threads are native on UW, but you need to invoke the cc -Kpthread 
> option.
> 
> LER
> 
> >
> > -------------------------------------------------------------------------
> > --
> >
> > Lee Kindness wrote:
> >> Philip,
> >>
> >> You can find the "patch so far" at:
> >>
> >>  http://services.csl.co.uk/postgresql/
> >>
> >> along with a libpq thread-safe patch.
> >>
> >> The thread referenced by Bruce's email details some of the issues
> >> still to be looked at. The main work is integration with the build
> >> system (testing for and linking in POSIX threads) and testing.
> >>
> >> I'm more than happy for you to look at at, I haven't had the time I
> >> hoped to complete this.
> >>
> >> Thanks, Lee.
> >>
> >> Philip Yarra writes:
> >>  > As I found out recently, ECPG is not thread-safe. This is a problem
> >>  > for us, as  we really need to be able to use ECPG* in a
> >>  > multi-threaded C application.  Michael mentioned that Lee is working
> >>  > on fixing these problems, but was not  sure when it would be
> >>  > complete.
> >>  >
> >>  > So, my questions are:
> >>  > Lee/anyone, do you have an estimated completion date?
> >>  > If not, can we (myself plus a "real" C programmer) help you?
> >>  >
> >>  > Regards, Philip Yarra.
> >>  >
> >>  > * Yes, we could use libpq, but ECPG minimises our porting from
> >>  > Informix.  Rewriting everything to use libpq would be too expensive.
> >>  >
> >>
> >
> > --
> >   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
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 6: Have you searched our list archives?
> >
> > http://archives.postgresql.org
> >
> 
> 
> 
> -- 
> Larry Rosenman                     http://www.lerctr.org/~ler
> Phone: +1 972-414-9812                 E-Mail: ler@lerctr.org
> US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
> 
> 
> 
> 

-- 
  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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 16:10  Larry Rosenman <ler@lerctr.org>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  2 siblings, 0 replies; 35+ messages in thread

From: Larry Rosenman @ 2003-03-28 16:10 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Lee Kindness <lkindness@csl.co.uk>; Philip Yarra <philip@utiba.com>; pgsql-interfaces@postgresql.org, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>



--On Friday, March 28, 2003 11:00:47 -0500 Bruce Momjian 
<pgman@candle.pha.pa.us> wrote:

>
> Would someone take those patches and hunt around for proper 'configure'
> tests?  I can do the configure coding, but I don't know what tests to
> make.
>
> 	http://services.csl.co.uk/postgresql/
I do know there are configure tests built for UnixWare's pthreads, but I 
don't know where.  I have seen them invoked as I've compiled stuff.

Also, once you compile a piece with -Kpthread you must compile ALL of it 
with -Kpthread.

You are welcome to read the UnixWare docs at http://www.lerctr.org:8458/ or 
on the SCO site.


>
>
> -------------------------------------------------------------------------
> --
>
> Larry Rosenman wrote:
>>
>>
>> --On Friday, March 28, 2003 10:54:23 -0500 Bruce Momjian
>> <pgman@candle.pha.pa.us> wrote:
>>
>> >
>> > I have the libpq patch in my mailbox that just needs configure thread
>> > testing code.  I will get that in for 7.4.
>> I can help with the UnixWare threads stuff.  Also, Micheal Meskes now
>> has  an account
>> on my UnixWare box.
>>
>> The threads are native on UW, but you need to invoke the cc -Kpthread
>> option.
>>
>> LER
>>
>> >
>> > ----------------------------------------------------------------------
>> > --- --
>> >
>> > Lee Kindness wrote:
>> >> Philip,
>> >>
>> >> You can find the "patch so far" at:
>> >>
>> >>  http://services.csl.co.uk/postgresql/
>> >>
>> >> along with a libpq thread-safe patch.
>> >>
>> >> The thread referenced by Bruce's email details some of the issues
>> >> still to be looked at. The main work is integration with the build
>> >> system (testing for and linking in POSIX threads) and testing.
>> >>
>> >> I'm more than happy for you to look at at, I haven't had the time I
>> >> hoped to complete this.
>> >>
>> >> Thanks, Lee.
>> >>
>> >> Philip Yarra writes:
>> >>  > As I found out recently, ECPG is not thread-safe. This is a problem
>> >>  > for us, as  we really need to be able to use ECPG* in a
>> >>  > multi-threaded C application.  Michael mentioned that Lee is
>> >>  > working on fixing these problems, but was not  sure when it would
>> >>  > be complete.
>> >>  >
>> >>  > So, my questions are:
>> >>  > Lee/anyone, do you have an estimated completion date?
>> >>  > If not, can we (myself plus a "real" C programmer) help you?
>> >>  >
>> >>  > Regards, Philip Yarra.
>> >>  >
>> >>  > * Yes, we could use libpq, but ECPG minimises our porting from
>> >>  > Informix.  Rewriting everything to use libpq would be too
>> >>  > expensive.
>> >>  >
>> >>
>> >
>> > --
>> >   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
>> >
>> >
>> > ---------------------------(end of
>> > broadcast)--------------------------- TIP 6: Have you searched our
>> > list archives?
>> >
>> > http://archives.postgresql.org
>> >
>>
>>
>>
>> --
>> Larry Rosenman                     http://www.lerctr.org/~ler
>> Phone: +1 972-414-9812                 E-Mail: ler@lerctr.org
>> US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
>>
>>
>>
>>
>
> --
>   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



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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 16:15  Lee Kindness <lkindness@csl.co.uk>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  2 siblings, 0 replies; 35+ messages in thread

From: Lee Kindness @ 2003-03-28 16:15 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Larry Rosenman <ler@lerctr.org>; Lee Kindness <lkindness@csl.co.uk>; Philip Yarra <philip@utiba.com>; pgsql-interfaces@postgresql.org, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>

I must have spent at least a day looking at configure threads tests
the past few months. Look at the tests in Python, OpenLDAP, MySQL,
Apache 2.0, Perl, ... each and everyone of them is different!
Ouch. Way above my experience in configure.

One of the packages (sorry cannot find my notes on which one!) I
looked at down the test on a per-OS level - supplying the tread
compile and link flags used on that OS and CC to see if they
worked... Probably the simplest way to go?

L.

Bruce Momjian writes:
 > 
 > Would someone take those patches and hunt around for proper 'configure'
 > tests?  I can do the configure coding, but I don't know what tests to
 > make.
 > 
 > 	http://services.csl.co.uk/postgresql/
 > 
 > 
 > ---------------------------------------------------------------------------
 > 
 > Larry Rosenman wrote:
 > > 
 > > 
 > > --On Friday, March 28, 2003 10:54:23 -0500 Bruce Momjian 
 > > <pgman@candle.pha.pa.us> wrote:
 > > 
 > > >
 > > > I have the libpq patch in my mailbox that just needs configure thread
 > > > testing code.  I will get that in for 7.4.
 > > I can help with the UnixWare threads stuff.  Also, Micheal Meskes now has 
 > > an account
 > > on my UnixWare box.
 > > 
 > > The threads are native on UW, but you need to invoke the cc -Kpthread 
 > > option.
 > > 
 > > LER
 > > 
 > > >
 > > > -------------------------------------------------------------------------
 > > > --
 > > >
 > > > Lee Kindness wrote:
 > > >> Philip,
 > > >>
 > > >> You can find the "patch so far" at:
 > > >>
 > > >>  http://services.csl.co.uk/postgresql/
 > > >>
 > > >> along with a libpq thread-safe patch.
 > > >>
 > > >> The thread referenced by Bruce's email details some of the issues
 > > >> still to be looked at. The main work is integration with the build
 > > >> system (testing for and linking in POSIX threads) and testing.
 > > >>
 > > >> I'm more than happy for you to look at at, I haven't had the time I
 > > >> hoped to complete this.
 > > >>
 > > >> Thanks, Lee.
 > > >>
 > > >> Philip Yarra writes:
 > > >>  > As I found out recently, ECPG is not thread-safe. This is a problem
 > > >>  > for us, as  we really need to be able to use ECPG* in a
 > > >>  > multi-threaded C application.  Michael mentioned that Lee is working
 > > >>  > on fixing these problems, but was not  sure when it would be
 > > >>  > complete.
 > > >>  >
 > > >>  > So, my questions are:
 > > >>  > Lee/anyone, do you have an estimated completion date?
 > > >>  > If not, can we (myself plus a "real" C programmer) help you?
 > > >>  >
 > > >>  > Regards, Philip Yarra.
 > > >>  >
 > > >>  > * Yes, we could use libpq, but ECPG minimises our porting from
 > > >>  > Informix.  Rewriting everything to use libpq would be too expensive.
 > > >>  >
 > > >>
 > > >
 > > > --
 > > >   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
 > > >
 > > >
 > > > ---------------------------(end of broadcast)---------------------------
 > > > TIP 6: Have you searched our list archives?
 > > >
 > > > http://archives.postgresql.org
 > > >
 > > 
 > > 
 > > 
 > > -- 
 > > Larry Rosenman                     http://www.lerctr.org/~ler
 > > Phone: +1 972-414-9812                 E-Mail: ler@lerctr.org
 > > US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
 > > 
 > > 
 > > 
 > > 
 > 
 > -- 
 >   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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 16:15  Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  2 siblings, 4 replies; 35+ messages in thread

From: Shridhar Daithankar @ 2003-03-28 16:15 UTC (permalink / raw)
  To: pgsql-hackers@postgresql.org

On Friday 28 March 2003 21:30, you wrote:
> Would someone take those patches and hunt around for proper 'configure'
> tests?  I can do the configure coding, but I don't know what tests to
> make.
>
> 	http://services.csl.co.uk/postgresql/

I also need configure tests for thread for one of my other application and 
don't know how to put them. So I have left those as additional ldflags 
options to users.

I suggest we somehow test following config to start with

1) Linuxthreads on linux
Threads are usually installed in /usr/ So pthread.h and -lpthread should work 
on most setups.

2) Native freeBSD threads
pthread.h in /usr/include and lc_r

3)linuxthreads on freeBSD, ports collection
/usr/local/include/pthreads/linuxthreads/pthread.h
/usr/local/lib/libpthread.so

For testing the library, I think it is enough to init an thread attr. like 
pthread_init_attr, that should be enough to test header and library.

I don't how we are going to let people specify thread implementation where 
there are multiple thread libraries are available .e.g. freeBSD.

HTH

 Shridhar




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 16:56  Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  3 siblings, 2 replies; 35+ messages in thread

From: Shridhar Daithankar @ 2003-03-28 16:56 UTC (permalink / raw)
  To: pgsql-hackers@postgresql.org

On Friday 28 March 2003 21:45, you wrote:
> For testing the library, I think it is enough to init an thread attr. like
> pthread_init_attr, that should be enough to test header and library.

And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.

 Shridhar




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-28 17:04  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  1 sibling, 0 replies; 35+ messages in thread

From: Bruce Momjian @ 2003-03-28 17:04 UTC (permalink / raw)
  To: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; +Cc: pgsql-hackers@postgresql.org


Yep.  I need someone who knows these OS's to get some tests together.

---------------------------------------------------------------------------

Shridhar Daithankar wrote:
> On Friday 28 March 2003 21:45, you wrote:
> > For testing the library, I think it is enough to init an thread attr. like
> > pthread_init_attr, that should be enough to test header and library.
> 
> And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> 
>  Shridhar
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
> 

-- 
  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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-30 14:06  Michael Meskes <meskes@postgresql.org>
  parent: Philip Yarra <philip@utiba.com>
  2 siblings, 2 replies; 35+ messages in thread

From: Michael Meskes @ 2003-03-30 14:06 UTC (permalink / raw)
  To: Philip Yarra <philip@utiba.com>; +Cc: Bruce Momjian <pgman@candle.pha.pa.us>; pgsql-interfaces

On Fri, Mar 28, 2003 at 05:49:04PM +1100, Philip Yarra wrote:
> Okay, thanks for that. Have grabbed the file, and started reading. I'll also 
> wait to hear from Michael or Lee before going too far on this. 

Don't be surprised if I'm a bit late in answering emails on the list.
I'm currently very busy.

I'd be interested to get ecpg thread safe. 

Is this the only problem you're facing with Informix? I'm currently
working on other Informix compatibility stuff. And I'd like to get that
tested as good as possible.

Michael
-- 
Michael Meskes
Email: Michael@Fam-Meskes.De
ICQ: 179140304
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-03-31 00:23  Philip Yarra <philip@utiba.com>
  parent: Michael Meskes <meskes@postgresql.org>
  1 sibling, 1 reply; 35+ messages in thread

From: Philip Yarra @ 2003-03-31 00:23 UTC (permalink / raw)
  To: Michael Meskes <meskes@postgresql.org>; +Cc: Bruce Momjian <pgman@candle.pha.pa.us>; pgsql-interfaces

On Mon, 31 Mar 2003 00:06, Michael Meskes wrote:
> Is this the only problem you're facing with Informix? I'm currently
> working on other Informix compatibility stuff. And I'd like to get that
> tested as good as possible.

Yes, I recall reading that you were working on better Informix compatibility - 
most welcome! Honestly, the changes we needed to make to port from Informix 
were pretty minor, as I recall: 
- some of the connection syntax differred
- figuring out that OID was not populated in sqlca if not auto-committing 
(makes sense really)
- our original code used non-standard ways to name a PREPAREd statement which 
threw ECPG (and according the Informix doco shouldn't really have worked for 
that either!) so I fixed that in both development streams

You can probably deduce from this that we are not really using a great deal of 
functionality in this app - what we have ported so far is a simple logging 
server. We really won't be porting any more until ECPG is thread-safe. It's a 
major show-stopper, since all of our apps are built on the same (pthreads) 
framework.

That said, we would love to help test further Informix compatibility stuff - 
anything that makes our future porting process easier would be welcome! Let 
us know what you'd like us to test. Diffs are fine.

Regards, Philip.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-04-10 17:20  Michael Meskes <meskes@postgresql.org>
  parent: Philip Yarra <philip@utiba.com>
  0 siblings, 0 replies; 35+ messages in thread

From: Michael Meskes @ 2003-04-10 17:20 UTC (permalink / raw)
  To: Philip Yarra <philip@utiba.com>; +Cc: Michael Meskes <meskes@postgresql.org>; Bruce Momjian <pgman@candle.pha.pa.us>; pgsql-interfaces

On Mon, Mar 31, 2003 at 11:23:04AM +1100, Philip Yarra wrote:
> That said, we would love to help test further Informix compatibility stuff - 
> anything that makes our future porting process easier would be welcome! Let 
> us know what you'd like us to test. Diffs are fine.

Can you take ecpg from CVS? I will not be able to answer email for about
a two week long vacation trip, but everything I've done so far is in
CVS.

Michael
-- 
Michael Meskes
Email: Michael@Fam-Meskes.De
ICQ: 179140304
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-04-22 04:05  Philip Yarra <philip@utiba.com>
  parent: Philip Yarra <philip@utiba.com>
  2 siblings, 0 replies; 35+ messages in thread

From: Philip Yarra @ 2003-04-22 04:05 UTC (permalink / raw)
  To: Michael Meskes <meskes@postgresql.org>; +Cc: pgsql-interfaces@postgresql.org, Bruce Momjian <pgman@candle.pha.pa.us>

On Fri, 28 Mar 2003 17:49, Philip Yarra wrote:
> On Fri, 28 Mar 2003 13:00, you wrote:
> > I have put a mailbox file at:
> >
> > 	ftp://candle.pha.pa.us/pub/postgresql/mypatches
> >
> > where there is a partial implementation of thread-safe ecpg.  Maybe you
> > can work with Michael to complete it.
>
> Okay, thanks for that. Have grabbed the file, and started reading. I'll
> also wait to hear from Michael or Lee before going too far on this.

I've had a few tries at testing the ECPG threadsafe patch, but so far no luck, 
probably due to my own lack of experience. Can someone help me out with how 
to test this? 

So far I have:
- run configure
- applied Lee's patch to the source tree for 7.3.2
- edited src/Makefile.global, adding -pthread to CFLAGS and and -lpthread to 
LIBS
- make and make install
- make our own pthread'd app, linking against newly installed pgsql
Then when I run our app with 3 DB threads, I can watch 2 of the threads fail 
to return from EXEC SQL, which is exactly the same behaviour we used to get.

Can anyone point me in the right direction? I'm building on RedHat Linux 7.3 
on Intel, using all standard tools for that version (except updated bison 
from 1.35 to 1.875). So gcc 2.96, gmake 3.79.1, etc. Let me know if more 
details are required.

Regards, Philip Yarra.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* ECPG thread-safety
@ 2003-04-23 08:47  Lee Kindness <lkindness@csl.co.uk>
  parent: Philip Yarra <philip@utiba.com>
  2 siblings, 2 replies; 35+ messages in thread

From: Lee Kindness @ 2003-04-23 08:47 UTC (permalink / raw)
  To: Philip Yarra <philip@utiba.com>; +Cc: Lee Kindness <lkindness@csl.co.uk>; Michael Meskes <meskes@postgresql.org>; pgsql-interfaces

Philip Yarra writes:
 > I've had a few tries at testing the ECPG threadsafe patch, but so
 > far no luck, probably due to my own lack of experience. Can someone
 > help me out with how to test this?
 > 
 > So far I have:
 > - run configure
 > - applied Lee's patch to the source tree for 7.3.2
 > - edited src/Makefile.global, adding -pthread to CFLAGS and and
 > -lpthread to LIBS
 > - make and make install
 > - make our own pthread'd app, linking against newly installed pgsql
 > Then when I run our app with 3 DB threads, I can watch 2 of the threads fai=
 > l=20
 > to return from EXEC SQL, which is exactly the same behaviour we used to get.
 > 
 > Can anyone point me in the right direction? I'm building on RedHat Linux 7.=
 > 3=20
 > on Intel, using all standard tools for that version (except updated bison=
 > =20
 > from 1.35 to 1.875). So gcc 2.96, gmake 3.79.1, etc. Let me know if more=20
 > details are required.

Even with this patch you'll still be limited by the underlying
libpq. So for example you cannot share a connection between threads
without implementing locking to prevent multiple access to that
connection.

I guess the best way would be to open a named connection for EACH
thread. This SHOULD work, but again not tested...

L.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-04-23 18:15  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Lee Kindness <lkindness@csl.co.uk>
  1 sibling, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-04-23 18:15 UTC (permalink / raw)
  To: Lee Kindness <lkindness@csl.co.uk>; +Cc: Philip Yarra <philip@utiba.com>; Michael Meskes <meskes@postgresql.org>; pgsql-interfaces


I have libpq thread-safe patch in my queue:

	http://momjian.postgresql.org/cgi-bin/pgpatches

Once I have a way to test thread flags for various OS's, I will apply
it.  Maybe you guys can help with that too.

---------------------------------------------------------------------------

Lee Kindness wrote:
> Philip Yarra writes:
>  > I've had a few tries at testing the ECPG threadsafe patch, but so
>  > far no luck, probably due to my own lack of experience. Can someone
>  > help me out with how to test this?
>  > 
>  > So far I have:
>  > - run configure
>  > - applied Lee's patch to the source tree for 7.3.2
>  > - edited src/Makefile.global, adding -pthread to CFLAGS and and
>  > -lpthread to LIBS
>  > - make and make install
>  > - make our own pthread'd app, linking against newly installed pgsql
>  > Then when I run our app with 3 DB threads, I can watch 2 of the threads fai=
>  > l=20
>  > to return from EXEC SQL, which is exactly the same behaviour we used to get.
>  > 
>  > Can anyone point me in the right direction? I'm building on RedHat Linux 7.=
>  > 3=20
>  > on Intel, using all standard tools for that version (except updated bison=
>  > =20
>  > from 1.35 to 1.875). So gcc 2.96, gmake 3.79.1, etc. Let me know if more=20
>  > details are required.
> 
> Even with this patch you'll still be limited by the underlying
> libpq. So for example you cannot share a connection between threads
> without implementing locking to prevent multiple access to that
> connection.
> 
> I guess the best way would be to open a named connection for EACH
> thread. This SHOULD work, but again not tested...
> 
> L.
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
> 

-- 
  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




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-04-24 00:17  Philip Yarra <philip@utiba.com>
  parent: Lee Kindness <lkindness@csl.co.uk>
  1 sibling, 0 replies; 35+ messages in thread

From: Philip Yarra @ 2003-04-24 00:17 UTC (permalink / raw)
  To: Lee Kindness <lkindness@csl.co.uk>; +Cc: Lee Kindness <lkindness@csl.co.uk>; Michael Meskes <meskes@postgresql.org>; pgsql-interfaces

On Wed, 23 Apr 2003 18:47, Lee Kindness wrote:
> Even with this patch you'll still be limited by the underlying
> libpq. So for example you cannot share a connection between threads
> without implementing locking to prevent multiple access to that
> connection.

Oh yes, I figured that. Each thread in this application opens its own 
connection, so this ought not to be the issue. Each DB insert actually gets 
the data into the table, but 2 of the 3 threads stop after that... possibly 
due to concurrently accessing sections of the sqlca struct? (that's just a 
guess though)

Our code is a bit tricky to get running - I might see if I can create a simple 
test harness to duplicate the problem and post it to you.

Regards, Philip.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-04-24 00:24  Philip Yarra <philip@utiba.com>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 0 replies; 35+ messages in thread

From: Philip Yarra @ 2003-04-24 00:24 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; Lee Kindness <lkindness@csl.co.uk>; +Cc: Michael Meskes <meskes@postgresql.org>; pgsql-interfaces

On Thu, 24 Apr 2003 04:15, Bruce Momjian wrote:
> I have libpq thread-safe patch in my queue:
> Once I have a way to test thread flags for various OS's, I will apply
> it.  Maybe you guys can help with that too.

Happy to help. We have various Linux flavours plus Tru64 Unix (OSF1 v4.0) that 
we can test on.

Regards, Philip.




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-05-26 05:09  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Michael Meskes <meskes@postgresql.org>
  1 sibling, 0 replies; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 05:09 UTC (permalink / raw)
  To: Michael Meskes <meskes@postgresql.org>; +Cc: Philip Yarra <philip@utiba.com>; pgsql-interfaces


Michael, I have the ecpg thread stuff in the patches queue:

	http://momjian.postgresql.org/cgi-bin/pgpatches

I need you to look at that and integrate it into ecpg soon so we can get
some testing before we hit 7.4 beta.

As far as the thread flags, I think we are going to just have to use a
HAVE_THREADS configure define, and then fill it in for every OS with
OS-specific tests.  I can do that part if you code with HAVE_THREADS.

---------------------------------------------------------------------------

Michael Meskes wrote:
> On Fri, Mar 28, 2003 at 05:49:04PM +1100, Philip Yarra wrote:
> > Okay, thanks for that. Have grabbed the file, and started reading. I'll also 
> > wait to hear from Michael or Lee before going too far on this. 
> 
> Don't be surprised if I'm a bit late in answering emails on the list.
> I'm currently very busy.
> 
> I'd be interested to get ecpg thread safe. 
> 
> Is this the only problem you're facing with Informix? I'm currently
> working on other Informix compatibility stuff. And I'd like to get that
> tested as good as possible.
> 
> Michael
> -- 
> Michael Meskes
> Email: Michael@Fam-Meskes.De
> ICQ: 179140304
> Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
> 
> http://www.postgresql.org/docs/faqs/FAQ.html
> 

-- 
  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



^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 17:01  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  3 siblings, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 17:01 UTC (permalink / raw)
  To: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; +Cc: PostgreSQL-patches <pgsql-patches@postgresql.org>


I have developed the following configure thread test based on your
information.  I have opted for a simple check for pthread.h, and we can
then fill in any additional library flags needed for various OS's.

---------------------------------------------------------------------------

Shridhar Daithankar wrote:
> On Friday 28 March 2003 21:30, you wrote:
> > Would someone take those patches and hunt around for proper 'configure'
> > tests?  I can do the configure coding, but I don't know what tests to
> > make.
> >
> > 	http://services.csl.co.uk/postgresql/
> 
> I also need configure tests for thread for one of my other application and 
> don't know how to put them. So I have left those as additional ldflags 
> options to users.
> 
> I suggest we somehow test following config to start with
> 
> 1) Linuxthreads on linux
> Threads are usually installed in /usr/ So pthread.h and -lpthread should work 
> on most setups.
> 
> 2) Native freeBSD threads
> pthread.h in /usr/include and lc_r
> 
> 3)linuxthreads on freeBSD, ports collection
> /usr/local/include/pthreads/linuxthreads/pthread.h
> /usr/local/lib/libpthread.so
> 
> For testing the library, I think it is enough to init an thread attr. like 
> pthread_init_attr, that should be enough to test header and library.
> 
> I don't how we are going to let people specify thread implementation where 
> there are multiple thread libraries are available .e.g. freeBSD.
> 
> HTH
> 
>  Shridhar
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
> 

-- 
  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
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.253
diff -c -c -r1.253 configure.in
*** configure.in	22 May 2003 16:39:28 -0000	1.253
--- configure.in	26 May 2003 16:57:51 -0000
***************
*** 506,511 ****
--- 506,514 ----
                [  --without-zlib          do not use Zlib])
  
  
+ #
+ # Elf
+ #
  
  # Assume system is ELF if it predefines __ELF__ as 1,
  # otherwise believe host_os based default.
***************
*** 527,533 ****
--- 530,557 ----
  fi])
  AC_SUBST(ELF_SYS)
  
+ #
+ # Pthreads
+ #
  
+ AC_CHECK_HEADER(pthread.h,
+ 	[AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])])
+ if test ! -z "$HAVE_THREADS"
+ then	
+ 	case $host_os in
+ 		# BSD/OS and NetBSD require no special libraries
+ 		netbsd*|bsdi*) THREAD_LIBS="" ;;
+ 		freebsd*) THREAD_LIBS="-lc_r" ;;
+ 		linux*) THREAD_LIBS="-lpthread" ;;
+ 	# other operating systems might fail because they have pthread.h but need
+ 	# special libs we don't know about yet.
+ 	esac
+ fi
+ AC_SUBST(THREAD_LIBS)
+ 
+ #
+ # Assignments
+ #
  
  CPPFLAGS="$CPPFLAGS $INCLUDES"
  LDFLAGS="$LDFLAGS $LIBDIRS"
Index: src/Makefile.global.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v
retrieving revision 1.162
diff -c -c -r1.162 Makefile.global.in
*** src/Makefile.global.in	11 May 2003 20:50:53 -0000	1.162
--- src/Makefile.global.in	26 May 2003 16:57:53 -0000
***************
*** 152,157 ****
--- 152,159 ----
  TK_LIB_SPEC		= @TK_LIB_SPEC@
  TK_XINCLUDES		= @TK_XINCLUDES@
  
+ THREAD_LIBS		= @THREAD_LIBS@
+ 
  have_docbook	= @have_docbook@
  DOCBOOKSTYLE	= @DOCBOOKSTYLE@
  COLLATEINDEX	= @COLLATEINDEX@
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v
retrieving revision 1.47
diff -c -c -r1.47 pg_config.h.in
*** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
--- src/include/pg_config.h.in	26 May 2003 16:57:57 -0000
***************
*** 465,470 ****
--- 465,473 ----
  /* Define to 1 if you have the <termios.h> header file. */
  #undef HAVE_TERMIOS_H
  
+ /* Define to 1 if you have the <pthread.h> header file. */
+ #undef HAVE_THREADS
+ 
  /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
     `HAVE_STRUCT_TM_TM_ZONE' instead. */
  #undef HAVE_TM_ZONE

Attachments:

/pgpatches/threads (text/plain, 2.4K) download Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.253 diff -c -c -r1.253 configure.in *** configure.in 22 May 2003 16:39:28 -0000 1.253 --- configure.in 26 May 2003 16:57:51 -0000 *************** *** 506,511 **** --- 506,514 ---- [ --without-zlib do not use Zlib]) + # + # Elf + # # Assume system is ELF if it predefines __ELF__ as 1, # otherwise believe host_os based default. *************** *** 527,533 **** --- 530,557 ---- fi]) AC_SUBST(ELF_SYS) + # + # Pthreads + # + AC_CHECK_HEADER(pthread.h, + [AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])]) + if test ! -z "$HAVE_THREADS" + then + case $host_os in + # BSD/OS and NetBSD require no special libraries + netbsd*|bsdi*) THREAD_LIBS="" ;; + freebsd*) THREAD_LIBS="-lc_r" ;; + linux*) THREAD_LIBS="-lpthread" ;; + # other operating systems might fail because they have pthread.h but need + # special libs we don't know about yet. + esac + fi + AC_SUBST(THREAD_LIBS) + + # + # Assignments + # CPPFLAGS="$CPPFLAGS $INCLUDES" LDFLAGS="$LDFLAGS $LIBDIRS" Index: src/Makefile.global.in =================================================================== RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v retrieving revision 1.162 diff -c -c -r1.162 Makefile.global.in *** src/Makefile.global.in 11 May 2003 20:50:53 -0000 1.162 --- src/Makefile.global.in 26 May 2003 16:57:53 -0000 *************** *** 152,157 **** --- 152,159 ---- TK_LIB_SPEC = @TK_LIB_SPEC@ TK_XINCLUDES = @TK_XINCLUDES@ + THREAD_LIBS = @THREAD_LIBS@ + have_docbook = @have_docbook@ DOCBOOKSTYLE = @DOCBOOKSTYLE@ COLLATEINDEX = @COLLATEINDEX@ Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v retrieving revision 1.47 diff -c -c -r1.47 pg_config.h.in *** src/include/pg_config.h.in 22 May 2003 16:39:30 -0000 1.47 --- src/include/pg_config.h.in 26 May 2003 16:57:57 -0000 *************** *** 465,470 **** --- 465,473 ---- /* Define to 1 if you have the <termios.h> header file. */ #undef HAVE_TERMIOS_H + /* Define to 1 if you have the <pthread.h> header file. */ + #undef HAVE_THREADS + /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE
^ permalink raw reply [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 17:06  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  1 sibling, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 17:06 UTC (permalink / raw)
  To: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; +Cc: PostgreSQL-patches <pgsql-patches@postgresql.org>

Shridhar Daithankar wrote:
> On Friday 28 March 2003 21:45, you wrote:
> > For testing the library, I think it is enough to init an thread attr. like
> > pthread_init_attr, that should be enough to test header and library.
> 
> And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.

Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
I need to run autoconf too.

-- 
  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
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.253
diff -c -c -r1.253 configure.in
*** configure.in	22 May 2003 16:39:28 -0000	1.253
--- configure.in	26 May 2003 17:05:52 -0000
***************
*** 506,511 ****
--- 506,514 ----
                [  --without-zlib          do not use Zlib])
  
  
+ #
+ # Elf
+ #
  
  # Assume system is ELF if it predefines __ELF__ as 1,
  # otherwise believe host_os based default.
***************
*** 527,533 ****
--- 530,560 ----
  fi])
  AC_SUBST(ELF_SYS)
  
+ #
+ # Pthreads
+ #
  
+ AC_CHECK_HEADER(pthread.h,
+ 	[AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])])
+ if test ! -z "$HAVE_THREADS"
+ then	
+ 	case $host_os in
+ 		# BSD/OS and NetBSD require no special libraries or flags
+ 		netbsd*|bsdi*) ;;
+ 		freebsd*) THREAD_LIBS="-lc_r"
+ 			  THREAD_CFLAGS="-pthread" ;;
+ 		linux*) THREAD_LIBS="-lpthread"
+ 			THREAD_CFLAGS="-D_REENTRANT" ;;
+ 	# other operating systems might fail because they have pthread.h but need
+ 	# special libs we don't know about yet.
+ 	esac
+ fi
+ AC_SUBST(THREAD_LIBS)
+ AC_SUBST(THREAD_CFLAGS)
+ 
+ #
+ # Assignments
+ #
  
  CPPFLAGS="$CPPFLAGS $INCLUDES"
  LDFLAGS="$LDFLAGS $LIBDIRS"
Index: src/Makefile.global.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v
retrieving revision 1.162
diff -c -c -r1.162 Makefile.global.in
*** src/Makefile.global.in	11 May 2003 20:50:53 -0000	1.162
--- src/Makefile.global.in	26 May 2003 17:05:54 -0000
***************
*** 152,157 ****
--- 152,160 ----
  TK_LIB_SPEC		= @TK_LIB_SPEC@
  TK_XINCLUDES		= @TK_XINCLUDES@
  
+ THREAD_CFLAGS		= @THREAD_CFLAGS@
+ THREAD_LIBS		= @THREAD_LIBS@
+ 
  have_docbook	= @have_docbook@
  DOCBOOKSTYLE	= @DOCBOOKSTYLE@
  COLLATEINDEX	= @COLLATEINDEX@
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v
retrieving revision 1.47
diff -c -c -r1.47 pg_config.h.in
*** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
--- src/include/pg_config.h.in	26 May 2003 17:05:56 -0000
***************
*** 465,470 ****
--- 465,473 ----
  /* Define to 1 if you have the <termios.h> header file. */
  #undef HAVE_TERMIOS_H
  
+ /* Define to 1 if you have the <pthread.h> header file. */
+ #undef HAVE_THREADS
+ 
  /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
     `HAVE_STRUCT_TM_TM_ZONE' instead. */
  #undef HAVE_TM_ZONE

Attachments:

/pgpatches/threads (text/plain, 2.6K) download Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.253 diff -c -c -r1.253 configure.in *** configure.in 22 May 2003 16:39:28 -0000 1.253 --- configure.in 26 May 2003 17:05:52 -0000 *************** *** 506,511 **** --- 506,514 ---- [ --without-zlib do not use Zlib]) + # + # Elf + # # Assume system is ELF if it predefines __ELF__ as 1, # otherwise believe host_os based default. *************** *** 527,533 **** --- 530,560 ---- fi]) AC_SUBST(ELF_SYS) + # + # Pthreads + # + AC_CHECK_HEADER(pthread.h, + [AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])]) + if test ! -z "$HAVE_THREADS" + then + case $host_os in + # BSD/OS and NetBSD require no special libraries or flags + netbsd*|bsdi*) ;; + freebsd*) THREAD_LIBS="-lc_r" + THREAD_CFLAGS="-pthread" ;; + linux*) THREAD_LIBS="-lpthread" + THREAD_CFLAGS="-D_REENTRANT" ;; + # other operating systems might fail because they have pthread.h but need + # special libs we don't know about yet. + esac + fi + AC_SUBST(THREAD_LIBS) + AC_SUBST(THREAD_CFLAGS) + + # + # Assignments + # CPPFLAGS="$CPPFLAGS $INCLUDES" LDFLAGS="$LDFLAGS $LIBDIRS" Index: src/Makefile.global.in =================================================================== RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v retrieving revision 1.162 diff -c -c -r1.162 Makefile.global.in *** src/Makefile.global.in 11 May 2003 20:50:53 -0000 1.162 --- src/Makefile.global.in 26 May 2003 17:05:54 -0000 *************** *** 152,157 **** --- 152,160 ---- TK_LIB_SPEC = @TK_LIB_SPEC@ TK_XINCLUDES = @TK_XINCLUDES@ + THREAD_CFLAGS = @THREAD_CFLAGS@ + THREAD_LIBS = @THREAD_LIBS@ + have_docbook = @have_docbook@ DOCBOOKSTYLE = @DOCBOOKSTYLE@ COLLATEINDEX = @COLLATEINDEX@ Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v retrieving revision 1.47 diff -c -c -r1.47 pg_config.h.in *** src/include/pg_config.h.in 22 May 2003 16:39:30 -0000 1.47 --- src/include/pg_config.h.in 26 May 2003 17:05:56 -0000 *************** *** 465,470 **** --- 465,473 ---- /* Define to 1 if you have the <termios.h> header file. */ #undef HAVE_TERMIOS_H + /* Define to 1 if you have the <pthread.h> header file. */ + #undef HAVE_THREADS + /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE
^ permalink raw reply [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 17:32  Rod Taylor <rbt@rbt.ca>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Rod Taylor @ 2003-05-26 17:32 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

On Mon, 2003-05-26 at 13:06, Bruce Momjian wrote:
> Shridhar Daithankar wrote:
> > On Friday 28 March 2003 21:45, you wrote:
> > > For testing the library, I think it is enough to init an thread attr. like
> > > pthread_init_attr, that should be enough to test header and library.
> > 
> > And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> > linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> 
> Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
> needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
> I need to run autoconf too.

If I'm not mistaken, you use -lpthread on FreeBSD 4.x, and -lc_r on
FreeBSD 5.x.

-- 
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Attachments:

  signature.asc (application/pgp-signature, 186B) download

^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 17:44  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Rod Taylor <rbt@rbt.ca>
  0 siblings, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 17:44 UTC (permalink / raw)
  To: Rod Taylor <rbt@rbt.ca>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

Rod Taylor wrote:
-- Start of PGP signed section.
> On Mon, 2003-05-26 at 13:06, Bruce Momjian wrote:
> > Shridhar Daithankar wrote:
> > > On Friday 28 March 2003 21:45, you wrote:
> > > > For testing the library, I think it is enough to init an thread attr. like
> > > > pthread_init_attr, that should be enough to test header and library.
> > > 
> > > And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> > > linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> > 
> > Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
> > needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
> > I need to run autoconf too.
> 
> If I'm not mistaken, you use -lpthread on FreeBSD 4.x, and -lc_r on
> FreeBSD 5.x.

Thanks.  Patch updated and attached.  Are there any FreeBSD 3.X machines
still around that have pthread.h?

-- 
  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
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.253
diff -c -c -r1.253 configure.in
*** configure.in	22 May 2003 16:39:28 -0000	1.253
--- configure.in	26 May 2003 17:38:28 -0000
***************
*** 506,511 ****
--- 506,514 ----
                [  --without-zlib          do not use Zlib])
  
  
+ #
+ # Elf
+ #
  
  # Assume system is ELF if it predefines __ELF__ as 1,
  # otherwise believe host_os based default.
***************
*** 527,533 ****
--- 530,560 ----
  fi])
  AC_SUBST(ELF_SYS)
  
+ #
+ # Pthreads
+ #
  
+ AC_CHECK_HEADER(pthread.h,
+ 	[AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])])
+ if test ! -z "$HAVE_THREADS"
+ then	
+ 	case $host_os in
+ 		# BSD/OS and NetBSD require no special libraries or flags
+ 		netbsd*|bsdi*) ;;
+ 		freebsd4*) THREAD_CFLAGS="-pthread" ;;
+ 		freebsd*) THREAD_LIBS="-lc_r" ;;
+ 		linux*) THREAD_LIBS="-lpthread"
+ 			THREAD_CFLAGS="-D_REENTRANT" ;;
+ 	# other operating systems might fail because they have pthread.h but need
+ 	# special libs we don't know about yet.
+ 	esac
+ fi
+ AC_SUBST(THREAD_LIBS)
+ AC_SUBST(THREAD_CFLAGS)
+ 
+ #
+ # Assignments
+ #
  
  CPPFLAGS="$CPPFLAGS $INCLUDES"
  LDFLAGS="$LDFLAGS $LIBDIRS"
Index: src/Makefile.global.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v
retrieving revision 1.162
diff -c -c -r1.162 Makefile.global.in
*** src/Makefile.global.in	11 May 2003 20:50:53 -0000	1.162
--- src/Makefile.global.in	26 May 2003 17:38:31 -0000
***************
*** 152,157 ****
--- 152,160 ----
  TK_LIB_SPEC		= @TK_LIB_SPEC@
  TK_XINCLUDES		= @TK_XINCLUDES@
  
+ THREAD_CFLAGS		= @THREAD_CFLAGS@
+ THREAD_LIBS		= @THREAD_LIBS@
+ 
  have_docbook	= @have_docbook@
  DOCBOOKSTYLE	= @DOCBOOKSTYLE@
  COLLATEINDEX	= @COLLATEINDEX@
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v
retrieving revision 1.47
diff -c -c -r1.47 pg_config.h.in
*** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
--- src/include/pg_config.h.in	26 May 2003 17:38:32 -0000
***************
*** 465,470 ****
--- 465,473 ----
  /* Define to 1 if you have the <termios.h> header file. */
  #undef HAVE_TERMIOS_H
  
+ /* Define to 1 if you have the <pthread.h> header file. */
+ #undef HAVE_THREADS
+ 
  /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
     `HAVE_STRUCT_TM_TM_ZONE' instead. */
  #undef HAVE_TM_ZONE

Attachments:

/pgpatches/threads (text/plain, 2.6K) download Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.253 diff -c -c -r1.253 configure.in *** configure.in 22 May 2003 16:39:28 -0000 1.253 --- configure.in 26 May 2003 17:38:28 -0000 *************** *** 506,511 **** --- 506,514 ---- [ --without-zlib do not use Zlib]) + # + # Elf + # # Assume system is ELF if it predefines __ELF__ as 1, # otherwise believe host_os based default. *************** *** 527,533 **** --- 530,560 ---- fi]) AC_SUBST(ELF_SYS) + # + # Pthreads + # + AC_CHECK_HEADER(pthread.h, + [AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])]) + if test ! -z "$HAVE_THREADS" + then + case $host_os in + # BSD/OS and NetBSD require no special libraries or flags + netbsd*|bsdi*) ;; + freebsd4*) THREAD_CFLAGS="-pthread" ;; + freebsd*) THREAD_LIBS="-lc_r" ;; + linux*) THREAD_LIBS="-lpthread" + THREAD_CFLAGS="-D_REENTRANT" ;; + # other operating systems might fail because they have pthread.h but need + # special libs we don't know about yet. + esac + fi + AC_SUBST(THREAD_LIBS) + AC_SUBST(THREAD_CFLAGS) + + # + # Assignments + # CPPFLAGS="$CPPFLAGS $INCLUDES" LDFLAGS="$LDFLAGS $LIBDIRS" Index: src/Makefile.global.in =================================================================== RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v retrieving revision 1.162 diff -c -c -r1.162 Makefile.global.in *** src/Makefile.global.in 11 May 2003 20:50:53 -0000 1.162 --- src/Makefile.global.in 26 May 2003 17:38:31 -0000 *************** *** 152,157 **** --- 152,160 ---- TK_LIB_SPEC = @TK_LIB_SPEC@ TK_XINCLUDES = @TK_XINCLUDES@ + THREAD_CFLAGS = @THREAD_CFLAGS@ + THREAD_LIBS = @THREAD_LIBS@ + have_docbook = @have_docbook@ DOCBOOKSTYLE = @DOCBOOKSTYLE@ COLLATEINDEX = @COLLATEINDEX@ Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v retrieving revision 1.47 diff -c -c -r1.47 pg_config.h.in *** src/include/pg_config.h.in 22 May 2003 16:39:30 -0000 1.47 --- src/include/pg_config.h.in 26 May 2003 17:38:32 -0000 *************** *** 465,470 **** --- 465,473 ---- /* Define to 1 if you have the <termios.h> header file. */ #undef HAVE_TERMIOS_H + /* Define to 1 if you have the <pthread.h> header file. */ + #undef HAVE_THREADS + /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE
^ permalink raw reply [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 17:55  Rod Taylor <rbt@rbt.ca>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Rod Taylor @ 2003-05-26 17:55 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

On Mon, 2003-05-26 at 13:44, Bruce Momjian wrote:
> Rod Taylor wrote:
> -- Start of PGP signed section.
> > On Mon, 2003-05-26 at 13:06, Bruce Momjian wrote:
> > > Shridhar Daithankar wrote:
> > > > On Friday 28 March 2003 21:45, you wrote:
> > > > > For testing the library, I think it is enough to init an thread attr. like
> > > > > pthread_init_attr, that should be enough to test header and library.
> > > > 
> > > > And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> > > > linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> > > 
> > > Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
> > > needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
> > > I need to run autoconf too.
> > 
> > If I'm not mistaken, you use -lpthread on FreeBSD 4.x, and -lc_r on
> > FreeBSD 5.x.
> 
> Thanks.  Patch updated and attached.  Are there any FreeBSD 3.X machines
> still around that have pthread.h?

You're more likely to run into a 2.x BSD box than a 3.x one :) Early
releases of 4.x were unusually good and very pain free for an upgrade
from 3.x.

I couldn't tell you about 3.x as I never did anything outside of
installing ports.
-- 
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Attachments:

  signature.asc (application/pgp-signature, 186B) download

^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:12  Tom Lane <tgl@sss.pgh.pa.us>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Tom Lane @ 2003-05-26 18:12 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL-patches <pgsql-patches@postgresql.org>

Bruce Momjian <pgman@candle.pha.pa.us> writes:
> diff -c -c -r1.47 pg_config.h.in
> *** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
> --- src/include/pg_config.h.in	26 May 2003 16:57:57 -0000

Bruce, you do realize that you're not supposed to hand-edit
pg_config.h.in anymore?  Use autoheader to build it from configure.in.

			regards, tom lane



^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:16  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Rod Taylor <rbt@rbt.ca>
  0 siblings, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 18:16 UTC (permalink / raw)
  To: Rod Taylor <rbt@rbt.ca>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

Rod Taylor wrote:
-- Start of PGP signed section.
> On Mon, 2003-05-26 at 13:44, Bruce Momjian wrote:
> > Rod Taylor wrote:
> > -- Start of PGP signed section.
> > > On Mon, 2003-05-26 at 13:06, Bruce Momjian wrote:
> > > > Shridhar Daithankar wrote:
> > > > > On Friday 28 March 2003 21:45, you wrote:
> > > > > > For testing the library, I think it is enough to init an thread attr. like
> > > > > > pthread_init_attr, that should be enough to test header and library.
> > > > > 
> > > > > And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> > > > > linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> > > > 
> > > > Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
> > > > needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
> > > > I need to run autoconf too.
> > > 
> > > If I'm not mistaken, you use -lpthread on FreeBSD 4.x, and -lc_r on
> > > FreeBSD 5.x.
> > 
> > Thanks.  Patch updated and attached.  Are there any FreeBSD 3.X machines
> > still around that have pthread.h?
> 
> You're more likely to run into a 2.x BSD box than a 3.x one :) Early
> releases of 4.x were unusually good and very pain free for an upgrade
> from 3.x.
> 
> I couldn't tell you about 3.x as I never did anything outside of
> installing ports.

When did pthread.h appear in FreeBSD?

-- 
  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



^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:18  Rod Taylor <rbt@rbt.ca>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Rod Taylor @ 2003-05-26 18:18 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

On Mon, 2003-05-26 at 14:16, Bruce Momjian wrote:
> Rod Taylor wrote:
> -- Start of PGP signed section.
> > On Mon, 2003-05-26 at 13:44, Bruce Momjian wrote:
> > > Rod Taylor wrote:
> > > -- Start of PGP signed section.
> > > > On Mon, 2003-05-26 at 13:06, Bruce Momjian wrote:
> > > > > Shridhar Daithankar wrote:
> > > > > > On Friday 28 March 2003 21:45, you wrote:
> > > > > > > For testing the library, I think it is enough to init an thread attr. like
> > > > > > > pthread_init_attr, that should be enough to test header and library.
> > > > > > 
> > > > > > And compiler flags, I forgot.. -pthread on freeBSD/gcc and -D_REENTRANT on 
> > > > > > linux at least. FreeBSD needs _THREAD_SAFE as well IIRC.
> > > > > 
> > > > > Are you saying FreeBSD actually has a -pthread compiler flag?  And Linux
> > > > > needs REENTRANT.  We can do that.  Here is an updated patch.  Of course,
> > > > > I need to run autoconf too.
> > > > 
> > > > If I'm not mistaken, you use -lpthread on FreeBSD 4.x, and -lc_r on
> > > > FreeBSD 5.x.
> > > 
> > > Thanks.  Patch updated and attached.  Are there any FreeBSD 3.X machines
> > > still around that have pthread.h?
> > 
> > You're more likely to run into a 2.x BSD box than a 3.x one :) Early
> > releases of 4.x were unusually good and very pain free for an upgrade
> > from 3.x.
> > 
> > I couldn't tell you about 3.x as I never did anything outside of
> > installing ports.
> 
> When did pthread.h appear in FreeBSD?

2.2.0

-- 
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Attachments:

  signature.asc (application/pgp-signature, 186B) download

^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:20  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 18:20 UTC (permalink / raw)
  To: Tom Lane <tgl@sss.pgh.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL-patches <pgsql-patches@postgresql.org>

Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > diff -c -c -r1.47 pg_config.h.in
> > *** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
> > --- src/include/pg_config.h.in	26 May 2003 16:57:57 -0000
> 
> Bruce, you do realize that you're not supposed to hand-edit
> pg_config.h.in anymore?  Use autoheader to build it from configure.in.

You mentioned that recently, and I wasn't sure exactly how you did it,
and figured I would research it later.

I got it working and here is the updated patch --- thanks.

-- 
  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
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.253
diff -c -c -r1.253 configure.in
*** configure.in	22 May 2003 16:39:28 -0000	1.253
--- configure.in	26 May 2003 18:19:14 -0000
***************
*** 506,511 ****
--- 506,514 ----
                [  --without-zlib          do not use Zlib])
  
  
+ #
+ # Elf
+ #
  
  # Assume system is ELF if it predefines __ELF__ as 1,
  # otherwise believe host_os based default.
***************
*** 527,533 ****
--- 530,560 ----
  fi])
  AC_SUBST(ELF_SYS)
  
+ #
+ # Pthreads
+ #
  
+ AC_CHECK_HEADER(pthread.h,
+ 	[AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])])
+ if test ! -z "$HAVE_THREADS"
+ then	
+ 	case $host_os in
+ 		# BSD/OS and NetBSD require no special libraries or flags
+ 		netbsd*|bsdi*) ;;
+ 		freebsd4*) THREAD_CFLAGS="-pthread" ;;
+ 		freebsd*) THREAD_LIBS="-lc_r" ;;
+ 		linux*) THREAD_LIBS="-lpthread"
+ 			THREAD_CFLAGS="-D_REENTRANT" ;;
+ 	# other operating systems might fail because they have pthread.h but need
+ 	# special libs we don't know about yet.
+ 	esac
+ fi
+ AC_SUBST(THREAD_LIBS)
+ AC_SUBST(THREAD_CFLAGS)
+ 
+ #
+ # Assignments
+ #
  
  CPPFLAGS="$CPPFLAGS $INCLUDES"
  LDFLAGS="$LDFLAGS $LIBDIRS"
Index: src/Makefile.global.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v
retrieving revision 1.162
diff -c -c -r1.162 Makefile.global.in
*** src/Makefile.global.in	11 May 2003 20:50:53 -0000	1.162
--- src/Makefile.global.in	26 May 2003 18:19:15 -0000
***************
*** 152,157 ****
--- 152,160 ----
  TK_LIB_SPEC		= @TK_LIB_SPEC@
  TK_XINCLUDES		= @TK_XINCLUDES@
  
+ THREAD_CFLAGS		= @THREAD_CFLAGS@
+ THREAD_LIBS		= @THREAD_LIBS@
+ 
  have_docbook	= @have_docbook@
  DOCBOOKSTYLE	= @DOCBOOKSTYLE@
  COLLATEINDEX	= @COLLATEINDEX@
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v
retrieving revision 1.47
diff -c -c -r1.47 pg_config.h.in
*** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
--- src/include/pg_config.h.in	26 May 2003 18:19:16 -0000
***************
*** 465,470 ****
--- 465,473 ----
  /* Define to 1 if you have the <termios.h> header file. */
  #undef HAVE_TERMIOS_H
  
+ /* Define to 1 if you have the threads interface. */
+ #undef HAVE_THREADS
+ 
  /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
     `HAVE_STRUCT_TM_TM_ZONE' instead. */
  #undef HAVE_TM_ZONE

Attachments:

/pgpatches/threads (text/plain, 2.6K) download Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.253 diff -c -c -r1.253 configure.in *** configure.in 22 May 2003 16:39:28 -0000 1.253 --- configure.in 26 May 2003 18:19:14 -0000 *************** *** 506,511 **** --- 506,514 ---- [ --without-zlib do not use Zlib]) + # + # Elf + # # Assume system is ELF if it predefines __ELF__ as 1, # otherwise believe host_os based default. *************** *** 527,533 **** --- 530,560 ---- fi]) AC_SUBST(ELF_SYS) + # + # Pthreads + # + AC_CHECK_HEADER(pthread.h, + [AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])]) + if test ! -z "$HAVE_THREADS" + then + case $host_os in + # BSD/OS and NetBSD require no special libraries or flags + netbsd*|bsdi*) ;; + freebsd4*) THREAD_CFLAGS="-pthread" ;; + freebsd*) THREAD_LIBS="-lc_r" ;; + linux*) THREAD_LIBS="-lpthread" + THREAD_CFLAGS="-D_REENTRANT" ;; + # other operating systems might fail because they have pthread.h but need + # special libs we don't know about yet. + esac + fi + AC_SUBST(THREAD_LIBS) + AC_SUBST(THREAD_CFLAGS) + + # + # Assignments + # CPPFLAGS="$CPPFLAGS $INCLUDES" LDFLAGS="$LDFLAGS $LIBDIRS" Index: src/Makefile.global.in =================================================================== RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v retrieving revision 1.162 diff -c -c -r1.162 Makefile.global.in *** src/Makefile.global.in 11 May 2003 20:50:53 -0000 1.162 --- src/Makefile.global.in 26 May 2003 18:19:15 -0000 *************** *** 152,157 **** --- 152,160 ---- TK_LIB_SPEC = @TK_LIB_SPEC@ TK_XINCLUDES = @TK_XINCLUDES@ + THREAD_CFLAGS = @THREAD_CFLAGS@ + THREAD_LIBS = @THREAD_LIBS@ + have_docbook = @have_docbook@ DOCBOOKSTYLE = @DOCBOOKSTYLE@ COLLATEINDEX = @COLLATEINDEX@ Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v retrieving revision 1.47 diff -c -c -r1.47 pg_config.h.in *** src/include/pg_config.h.in 22 May 2003 16:39:30 -0000 1.47 --- src/include/pg_config.h.in 26 May 2003 18:19:16 -0000 *************** *** 465,470 **** --- 465,473 ---- /* Define to 1 if you have the <termios.h> header file. */ #undef HAVE_TERMIOS_H + /* Define to 1 if you have the threads interface. */ + #undef HAVE_THREADS + /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE
^ permalink raw reply [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:25  Tom Lane <tgl@sss.pgh.pa.us>
  parent: Bruce Momjian <pgman@candle.pha.pa.us>
  0 siblings, 1 reply; 35+ messages in thread

From: Tom Lane @ 2003-05-26 18:25 UTC (permalink / raw)
  To: Bruce Momjian <pgman@candle.pha.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL-patches <pgsql-patches@postgresql.org>

Bruce Momjian <pgman@candle.pha.pa.us> writes:
>> Bruce, you do realize that you're not supposed to hand-edit
>> pg_config.h.in anymore?  Use autoheader to build it from configure.in.

> You mentioned that recently, and I wasn't sure exactly how you did it,
> and figured I would research it later.

You just run autoheader immediately after autoconf --- it's no different
from building configure from configure.in.

			regards, tom lane



^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:28  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Rod Taylor <rbt@rbt.ca>
  0 siblings, 0 replies; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 18:28 UTC (permalink / raw)
  To: Rod Taylor <rbt@rbt.ca>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL Patches <pgsql-patches@postgresql.org>

Rod Taylor wrote:
> > > You're more likely to run into a 2.x BSD box than a 3.x one :) Early
> > > releases of 4.x were unusually good and very pain free for an upgrade
> > > from 3.x.
> > > 
> > > I couldn't tell you about 3.x as I never did anything outside of
> > > installing ports.
> > 
> > When did pthread.h appear in FreeBSD?
> 
> 2.2.0

OK, updated patch for FreeBSD 2-4.

-- 
  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
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql-server/configure.in,v
retrieving revision 1.253
diff -c -c -r1.253 configure.in
*** configure.in	22 May 2003 16:39:28 -0000	1.253
--- configure.in	26 May 2003 18:27:14 -0000
***************
*** 506,511 ****
--- 506,514 ----
                [  --without-zlib          do not use Zlib])
  
  
+ #
+ # Elf
+ #
  
  # Assume system is ELF if it predefines __ELF__ as 1,
  # otherwise believe host_os based default.
***************
*** 527,533 ****
--- 530,560 ----
  fi])
  AC_SUBST(ELF_SYS)
  
+ #
+ # Pthreads
+ #
  
+ AC_CHECK_HEADER(pthread.h,
+ 	[AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])])
+ if test ! -z "$HAVE_THREADS"
+ then	
+ 	case $host_os in
+ 		# BSD/OS and NetBSD require no special libraries or flags
+ 		netbsd*|bsdi*) ;;
+ 		freebsd2*|freebsd3*|freebsd4*) THREAD_CFLAGS="-pthread" ;;
+ 		freebsd*) THREAD_LIBS="-lc_r" ;;
+ 		linux*) THREAD_LIBS="-lpthread"
+ 			THREAD_CFLAGS="-D_REENTRANT" ;;
+ 	# other operating systems might fail because they have pthread.h but need
+ 	# special libs we don't know about yet.
+ 	esac
+ fi
+ AC_SUBST(THREAD_LIBS)
+ AC_SUBST(THREAD_CFLAGS)
+ 
+ #
+ # Assignments
+ #
  
  CPPFLAGS="$CPPFLAGS $INCLUDES"
  LDFLAGS="$LDFLAGS $LIBDIRS"
Index: src/Makefile.global.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v
retrieving revision 1.162
diff -c -c -r1.162 Makefile.global.in
*** src/Makefile.global.in	11 May 2003 20:50:53 -0000	1.162
--- src/Makefile.global.in	26 May 2003 18:27:16 -0000
***************
*** 152,157 ****
--- 152,160 ----
  TK_LIB_SPEC		= @TK_LIB_SPEC@
  TK_XINCLUDES		= @TK_XINCLUDES@
  
+ THREAD_CFLAGS		= @THREAD_CFLAGS@
+ THREAD_LIBS		= @THREAD_LIBS@
+ 
  have_docbook	= @have_docbook@
  DOCBOOKSTYLE	= @DOCBOOKSTYLE@
  COLLATEINDEX	= @COLLATEINDEX@
Index: src/include/pg_config.h.in
===================================================================
RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v
retrieving revision 1.47
diff -c -c -r1.47 pg_config.h.in
*** src/include/pg_config.h.in	22 May 2003 16:39:30 -0000	1.47
--- src/include/pg_config.h.in	26 May 2003 18:27:19 -0000
***************
*** 465,470 ****
--- 465,473 ----
  /* Define to 1 if you have the <termios.h> header file. */
  #undef HAVE_TERMIOS_H
  
+ /* Define to 1 if you have the threads interface. */
+ #undef HAVE_THREADS
+ 
  /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
     `HAVE_STRUCT_TM_TM_ZONE' instead. */
  #undef HAVE_TM_ZONE

Attachments:

/pgpatches/threads (text/plain, 2.6K) download Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.253 diff -c -c -r1.253 configure.in *** configure.in 22 May 2003 16:39:28 -0000 1.253 --- configure.in 26 May 2003 18:27:14 -0000 *************** *** 506,511 **** --- 506,514 ---- [ --without-zlib do not use Zlib]) + # + # Elf + # # Assume system is ELF if it predefines __ELF__ as 1, # otherwise believe host_os based default. *************** *** 527,533 **** --- 530,560 ---- fi]) AC_SUBST(ELF_SYS) + # + # Pthreads + # + AC_CHECK_HEADER(pthread.h, + [AC_DEFINE(HAVE_THREADS, 1, [Define to 1 if you have the threads interface.])]) + if test ! -z "$HAVE_THREADS" + then + case $host_os in + # BSD/OS and NetBSD require no special libraries or flags + netbsd*|bsdi*) ;; + freebsd2*|freebsd3*|freebsd4*) THREAD_CFLAGS="-pthread" ;; + freebsd*) THREAD_LIBS="-lc_r" ;; + linux*) THREAD_LIBS="-lpthread" + THREAD_CFLAGS="-D_REENTRANT" ;; + # other operating systems might fail because they have pthread.h but need + # special libs we don't know about yet. + esac + fi + AC_SUBST(THREAD_LIBS) + AC_SUBST(THREAD_CFLAGS) + + # + # Assignments + # CPPFLAGS="$CPPFLAGS $INCLUDES" LDFLAGS="$LDFLAGS $LIBDIRS" Index: src/Makefile.global.in =================================================================== RCS file: /cvsroot/pgsql-server/src/Makefile.global.in,v retrieving revision 1.162 diff -c -c -r1.162 Makefile.global.in *** src/Makefile.global.in 11 May 2003 20:50:53 -0000 1.162 --- src/Makefile.global.in 26 May 2003 18:27:16 -0000 *************** *** 152,157 **** --- 152,160 ---- TK_LIB_SPEC = @TK_LIB_SPEC@ TK_XINCLUDES = @TK_XINCLUDES@ + THREAD_CFLAGS = @THREAD_CFLAGS@ + THREAD_LIBS = @THREAD_LIBS@ + have_docbook = @have_docbook@ DOCBOOKSTYLE = @DOCBOOKSTYLE@ COLLATEINDEX = @COLLATEINDEX@ Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql-server/src/include/pg_config.h.in,v retrieving revision 1.47 diff -c -c -r1.47 pg_config.h.in *** src/include/pg_config.h.in 22 May 2003 16:39:30 -0000 1.47 --- src/include/pg_config.h.in 26 May 2003 18:27:19 -0000 *************** *** 465,470 **** --- 465,473 ---- /* Define to 1 if you have the <termios.h> header file. */ #undef HAVE_TERMIOS_H + /* Define to 1 if you have the threads interface. */ + #undef HAVE_THREADS + /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use `HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE
^ permalink raw reply [nested|flat] 35+ messages in thread

* Re: [HACKERS] ECPG thread-safety
@ 2003-05-26 18:32  Bruce Momjian <pgman@candle.pha.pa.us>
  parent: Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 0 replies; 35+ messages in thread

From: Bruce Momjian @ 2003-05-26 18:32 UTC (permalink / raw)
  To: Tom Lane <tgl@sss.pgh.pa.us>; +Cc: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; PostgreSQL-patches <pgsql-patches@postgresql.org>

Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> >> Bruce, you do realize that you're not supposed to hand-edit
> >> pg_config.h.in anymore?  Use autoheader to build it from configure.in.
> 
> > You mentioned that recently, and I wasn't sure exactly how you did it,
> > and figured I would research it later.
> 
> You just run autoheader immediately after autoconf --- it's no different
> from building configure from configure.in.
> 

Yes, I see now.  I thought autoheader was for generating include
dependencies, actually.
-- 
  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



^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-06-01 09:10  Manfred Spraul <manfred@colorfullife.com>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  3 siblings, 0 replies; 35+ messages in thread

From: Manfred Spraul @ 2003-06-01 09:10 UTC (permalink / raw)
  To: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>; +Cc: pgsql-hackers@postgresql.org

Shridhar Daithankar wrote:

>2) Native freeBSD threads
>pthread.h in /usr/include and lc_r
>
>  
>
Do you know if FreeBSD supports pthread_rwlock with 
PTHREAD_PROCESS_SHARED? I'm trying to replace the LWLocks with 
pthread_rwlocks.

What about other Unices?
--
    Manfred




^ permalink  raw  reply  [nested|flat] 35+ messages in thread

* Re: ECPG thread-safety
@ 2003-06-02 06:55  Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  parent: Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
  3 siblings, 0 replies; 35+ messages in thread

From: Shridhar Daithankar @ 2003-06-02 06:55 UTC (permalink / raw)
  To: pgsql-hackers@postgresql.org

On 1 Jun 2003 at 11:10, Manfred Spraul wrote:

> Shridhar Daithankar wrote:
> 
> >2) Native freeBSD threads
> >pthread.h in /usr/include and lc_r
> >
> >  
> >
> Do you know if FreeBSD supports pthread_rwlock with 
> PTHREAD_PROCESS_SHARED? I'm trying to replace the LWLocks with 
> pthread_rwlocks.
> 
> What about other Unices?

I am sorry for late reply. Hasn't been able to boot into freeBSD due to day job 
for weeks. I will check and let you know.

Bye
 Shridhar

--
We'll pivot at warp 2 and bring all tubes to bear, Mr. Sulu!




^ permalink  raw  reply  [nested|flat] 35+ messages in thread


end of thread, other threads:[~2003-06-02 06:55 UTC | newest]

Thread overview: 35+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2003-03-28 00:44 ECPG thread-safety Philip Yarra <philip@utiba.com>
2003-03-28 02:00 ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-03-28 06:49   ` Philip Yarra <philip@utiba.com>
2003-03-30 14:06     ` Michael Meskes <meskes@postgresql.org>
2003-03-31 00:23       ` Philip Yarra <philip@utiba.com>
2003-04-10 17:20         ` Michael Meskes <meskes@postgresql.org>
2003-05-26 05:09       ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-04-22 04:05     ` Philip Yarra <philip@utiba.com>
2003-04-23 08:47     ` Lee Kindness <lkindness@csl.co.uk>
2003-04-23 18:15       ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-04-24 00:24         ` Philip Yarra <philip@utiba.com>
2003-04-24 00:17       ` Philip Yarra <philip@utiba.com>
2003-03-28 09:37 ` Lee Kindness <lkindness@csl.co.uk>
2003-03-28 15:54   ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-03-28 15:59     ` Larry Rosenman <ler@lerctr.org>
2003-03-28 16:00       ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-03-28 16:10         ` Larry Rosenman <ler@lerctr.org>
2003-03-28 16:15         ` Lee Kindness <lkindness@csl.co.uk>
2003-03-28 16:15         ` Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
2003-03-28 16:56           ` Shridhar Daithankar <shridhar_daithankar@persistent.co.in>
2003-03-28 17:04             ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 17:06             ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 17:32               ` Rod Taylor <rbt@rbt.ca>
2003-05-26 17:44                 ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 17:55                   ` Rod Taylor <rbt@rbt.ca>
2003-05-26 18:16                     ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 18:18                       ` Rod Taylor <rbt@rbt.ca>
2003-05-26 18:28                         ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 17:01           ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 18:12             ` Tom Lane <tgl@sss.pgh.pa.us>
2003-05-26 18:20               ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-05-26 18:25                 ` Tom Lane <tgl@sss.pgh.pa.us>
2003-05-26 18:32                   ` Bruce Momjian <pgman@candle.pha.pa.us>
2003-06-01 09:10           ` Manfred Spraul <manfred@colorfullife.com>
2003-06-02 06:55           ` Shridhar Daithankar <shridhar_daithankar@persistent.co.in>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox