|
From: Leif M. <le...@ta...> - 2004-07-01 13:12:59
|
Venkatesh,
Great, glad that worked. The logs you sent me showed what I expected.
Go ahead and remove those debug log_printfs and use that until I am able
to get
the 3.1.1 release out the door. That should be fairly soon I am
working with a
couple users to get a FreeBSD issue resolved with it and then it is out
the door
It has been bugging as to why things had been working for you when DEBUG
was not enabled however.
Looking at the code, I see the problem. So make this one additional
change:
From the patch I sent you today:
---
if (len == SOCKET_ERROR) {
err = wrapperGetLastError();
if (wrapperData->isDebugging) {
if ((err != EWOULDBLOCK) && (err != EAGAIN)
&& (err != ENOTSOCK) && (err != ECONNRESET)) {
log_printf(WRAPPER_SOURCE_PROTOCOL, LEVEL_DEBUG,
"socket read failed. (%s)", getLastErrorText());
wrapperProtocolClose();
}
}
---
Notice that the location of the isDebugging check is wrong. It should
be changed to
the following:
---
if (len == SOCKET_ERROR) {
err = wrapperGetLastError();
if ((err != EWOULDBLOCK) && (err != EAGAIN)
&& (err != ENOTSOCK) && (err != ECONNRESET)) {
if (wrapperData->isDebugging) {
log_printf(WRAPPER_SOURCE_PROTOCOL, LEVEL_DEBUG,
"socket read failed. (%s)", getLastErrorText());
}
wrapperProtocolClose();
}
---
Now things should be correct if such a problem is ever encountered again.
Cheers,
Leif
.
Venkatesh Sellappa wrote:
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>Please read the disclaimer at the bottom of this e-mail.
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>Leif,
>
>Bingo !!!.
>It worked.
>
>On applying the below two patches, it worked.
>
>I think the key is that
>0.EWOULDBLOCK and EAGAIN constants in HP-UX have different values
>1.The test must be made for EAGAIN on accept and receive(for HP-UX)
>2.The constant EAGAIN is 11
>
>I have mailed you the log with the STATE_OUTPUT=TRUE.
>
>Thanks again for all the help.Much appreciated.
>Let me know if there is something else i can do.
>( removing the extra log_printf statements is a start ).
>
>Cheers,
>
>
|