Details

Description

After HADOOP-6713, the new IPC "Reader" threads are not properly stopped when the server shuts down. One repercussion of this is that conditions that are supposed to shut down a daemon no longer work (eg the TT doesn't shut itself down if it detects an incompatible build version)

Tom White
added a comment - 14/Feb/11 20:56 This looks fine, but I wonder if it would be simpler to act on the InterruptedException in Reader (rather than just log it as the code currently does) so the thread exits when the pool is shutdown?
Minor nit: add messages to the test assertions so that the case of zero running threads can be more easily distinguished for the before and after case.

adds a try{}finally{} in the test so as to avoid causing problems if the test fails

Tom and I discussed his idea about interrupts offline - we decided that using interrupt() is a bit harsh since we don't want to catch a reader in the middle of a readAndProcess(). Using selector.wakeup is cleaner.

Todd Lipcon
added a comment - 14/Feb/11 21:21 New rev of the patch:
improves test assertions as suggested by Tom
adds a try{}finally{} in the test so as to avoid causing problems if the test fails
Tom and I discussed his idea about interrupts offline - we decided that using interrupt() is a bit harsh since we don't want to catch a reader in the middle of a readAndProcess(). Using selector.wakeup is cleaner.

Ivan Mitic
added a comment - 20/Jun/13 21:34 Looks like we merged HADOOP-6713 to branch-1 but missed this Jira. I run into an issue where TT didn't shut itself down because of running IPC reader threads.
Reopening for backport to branch-1 and branch-1-win.