Re: 7.4.2 on Solaris 9 - Error

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Jan Wieck <JanWieck(at)Yahoo(dot)com>
Cc: wespvp(at)syntegra(dot)com, Kris Jurka <books(at)ejurka(dot)com>, Carmen Gloria Sepulveda Dedes <csepulveda(at)atichile(dot)com>, pgsql <pgsql-general(at)postgresql(dot)org>
Subject: Re: 7.4.2 on Solaris 9 - Error
Date: 2004-03-25 21:43:27
Message-ID: 200403252143.i2PLhRQ15922@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Jan Wieck wrote:
> Changing config.status, now that's what I call a quick and dirty hack.
>
> The attached diff against 7.4.2 incorporates Joe Conway's checks for
> getqwuid_r() has 4/5 arguments with a pthread compile autoconf check
> that I found a while back in the gnu autoconf archives.
>
> I think we should change alltogether to that pthread check.
>

Intersting. Would this change require us to update to a newer version
of autoconf?

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

>
> Jan
>
> wespvp(at)syntegra(dot)com wrote:
>
> > On 3/25/04 7:27 AM, "Jan Wieck" <JanWieck(at)yahoo(dot)com> wrote:
> >
> >> One other problem I am looking into (and why I tried to compile with
> >> thread safety in the first place) is that this somehow did not turn on
> >> -D_REENTRANT in the CFLAGS for libpq. And that leads to libpq not using
> >> the threadsafe definition of errno, leading to serious communication
> >> trouble in the end (pqReadData() failing with ENOENT while the real
> >> error is a harmless EAGAIN from a nonblocking recv()).
> >
> > This sounds like the problem I just solved late yesterday, except that I'm
> > seeing it manifest itself in ecpglib with C programs build using ecpg. I had
> > absolutely no error handling. The error flag was never set. I put some
> > debug code into the various library functions and found it was setting the
> > error code in sqlca - but in a different copy of sqlca than was active.
> >
> > The root problem turns out to be that configure is setting -pthread instead
> > of -lpthread in config.status. I manually changed the config.status line
> >
> > s,@THREAD_LIBS@,-pthread,;t t
> >
> > To
> >
> > s,@THREAD_LIBS@,-lpthread,;t t
> >
> > And everything appears to be working now. I don't see -D_REENTRANT being
> > set, but everything appears to work now.
> >
> > Let me know if this solves your test case also.
> >
> > Wes
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>
>
> --
> #======================================================================#
> # It's easier to get forgiveness for being wrong than for being right. #
> # Let's break this rule - forgive me. #
> #================================================== JanWieck(at)Yahoo(dot)com #

[ application/x-gzip is not supported, skipping... ]

>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: don't forget to increase your free space map settings

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

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2004-03-25 21:54:18 Re: Solaris ecpg program doesn't work - pulling my hair
Previous Message Bruce Momjian 2004-03-25 21:43:03 Re: 7.4.2 on Solaris 9 - Error