| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Tomas Berndtsson <tomas(at)nocrew(dot)org> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: big text field -> message type 0x44 |
| Date: | 2002-12-04 23:00:19 |
| Message-ID: | 20610.1039042819@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Tomas Berndtsson <tomas(at)nocrew(dot)org> writes:
> After it tries again, it always gets error from recv() for some reason
> that I don't know. I also don't understand why errno is set to ENOTTY
> at this point, that makes no sense at all.
Are you sure it is set? Try setting errno=0 just before recv() (inside
the retry loop). Maybe recv() is neglecting to set it in this case.
I suddenly have a recollection of something about some platform failing
to set errno when using threads. Try searching the PG archives.
> By skipping the trying again if-statement, pqReadData() will always
> return proper data, and let the calling function deal with the fact
> that there is more data to be read.
I have no confidence in this. If the calling function comes back for
more data, why wouldn't the recv() fail the same way? A few more
instructions in between shouldn't change its behavior, one would think.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2002-12-05 00:00:38 | Re: PQnotifies() in 7.3 broken? |
| Previous Message | Tomas Berndtsson | 2002-12-04 22:05:54 | Re: big text field -> message type 0x44 |