Re: [Sqlrelay-discussion] listener hang with open database port
Brought to you by:
mused
From: Cal H. <ca...@fb...> - 2010-05-27 20:51:00
|
Session counter is incremented in listener when client session is > authorized. It is decremented when connection finishs processing client > session's requests. What happens with you client session? Does it get an > error or what? Does listener complete socket handoff procedure to > client? The client seems to handle the errors correctly. After the autoCommitOff() returns false, sendQuery() fails with error message "Failed to authenticate. A network error may have ocurred." When handoff exits with error, there might be the best place to > decrement counter? > > ---- > if (dynamicscaling) { > incrementSessionCount(); > } > passstatus=handOffClient(clientsock); > // addition: > if (!passstatus) { > decrementSessionCount(); // this function is > not exist yet > } > ---- > This is the strange part -- I added a print statement after handOffClient() to see what the return status is, and it never prints. It is getting to it though, authstatus is 1. I don't really understand how handOffClient() works, but it must never return? I have my listenertimeout config setting to 5 seconds, and it appears that the listener times out each time the client receives an error back. (Changing this value changes how fast the client gets an error message) Could that have something to do with it? Thanks, --Cal |