From: | Jan Wieck <JanWieck(at)Yahoo(dot)com> |
---|---|
To: | wespvp(at)syntegra(dot)com |
Cc: | 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 18:37:01 |
Message-ID: | 406326CD.4020500@Yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
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.
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 #
Attachment | Content-Type | Size |
---|---|---|
threadsafe-libpq-742.diff.gz | application/x-gzip | 6.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-03-25 18:38:18 | Re: Memory usage during vacuum |
Previous Message | Anoop Rajendra | 2004-03-25 18:36:58 | Problem with inserting into a triggerable table; |