[Sqlrelay-discussion] Possible hang at receiveFileDescriptor (rudiments)
Brought to you by:
mused
From: Georgiy K. <ge...@st...> - 2012-05-23 14:56:47
|
Hi, In some cases sqlr-connection will hang at this call: result=recvmsg(pvt- >_fd,&messageheader,0); (filedescriptor.cpp:1876, filedescriptor::receiveFileDescriptor) - this is gdb backtrace. Before this safePoll(120,0,false,true) is called, but it wait POLLOUT event instead of POLLIN (read(false) and write(true) params). In this case, when sqlr-listener fail before passFileDescriptor, sqlr-connect will hang. I think, correct call is safePoll(120,0,true,false) - we should wait POLLIN event. I test this solution, and in my case have no problem. |