> > > I've sent you some messages in the past regarding the Linux fflush()
> > > problem, the one that made psql receive a EPIPE signal.
> > > I've downloaded the latest available version 6.3.2 and has the
> > > same problem.
> > > If you don't remember, there was a fflush() called in fe-misc.c,
> > > exactly in pqPuts() function that receives EPIPE and it's currently
> > > not ignored.
> > > I don't know if this is Linux specific or not, but it'd be great to
> > > fix the problem in the distribution. Do you agree?
>
> Yes, I recall the "broken pipe" problem and thought that someone had
> fixed it (most platforms didn't seem to see the problem, but Linux did).
>
> I'm not currently running v6.3.2, having rev-locked on 980408 to get
> some development done for v6.4. Did you supply a patch to fix the
> problem earlier?
>
Well, kind of. I've tracked the problem down to PQexec() and suggested
some way to fix it.
I've checked the current psql and the problem is when it calls to
PQconnectdb(). At this point EPIPE isn't ignored. Inside PQconnectdb()
there is a call to PQexec() to see if the database exists.
Then PQexec() calls pqPuts() and you get the broken pipe.
Before the call to PQconnectdb in psql there isn't any call to pqsignal.
Federico Schwindt