[Sqlrelay-discussion] One more fault tolerance patch
Brought to you by:
mused
From: Renat S. <sr...@st...> - 2011-06-29 14:18:08
|
Hi David, I am continue testing and generating ideas :) If sqlr-connection is killed between signalListenerToRead() and waitForListenerToFinishReading(), sem(3) starts growing above one. This consequently breaks listener-connection communication and leads to hanging listener processes under high load. The patch changes wait points for sem(3) and sem(2) so the values of this semaphores is set to 0 after wait() completed. Since we can not use "WithUndo" on inter-process communication semaphores, I suppose it is a good idea in general to check the state and revert it to normal. -- Renat Sabitov e-mail: sr...@st... Stack Soft jid: sr...@ja... |