Hi all.
I have the following IceGrid: 2 nodes, one running server A, exchanging data with server B, running on the other node (doesn't matter whether both nodes are running on the same computer or not). Server B calls CreateProcess to run a separate App (for example, notepad.exe).
The problem is that if I stop server A through IceGridGUI or icegridadmin.exe, and App was started inheriting handles of server B - A hangs for a minute, then stops. If I kill App - server A stops instantly. If App doesn't inherit B's handles - A stops instantly.
ProcessExplorer shows that App inherits from server B several objects of type 'File' with name '\Device\Afd'.
TCPView shows a single established connection between A and B, which disappeares only in a minute after I stop server A.
Trace:
-- 05/04/11 10:54:48.875 A.server: Network: sent 14 of 14 bytes via tcp
local address = 172.16.130.31:34454
remote address = 172.16.130.31:34453
but there is no corresponding 'Network: closing tcp connection' message for this ports, like this:
-- 05/04/11 10:54:48.875 A.server: Network: sent 14 of 14 bytes via tcp
local address = 172.16.130.31:34460
remote address = 172.16.130.31:32412
-- 05/04/11 10:54:48.875 A.server: Network: closing tcp connection
local address = 172.16.130.31:34460
remote address = 172.16.130.31:32412
In my scenario server A might not send any stop signal to server B, causing App to stop, and I need to stop A instantly. How can I achieve this?
Windows XP x64, ICE 3.4.1.
Thanks.

Reply With Quote