{"action":"created","issue":{"url":"https://api.github.com/repos/apache/reef/issues/1175","repository_url":"https://api.github.com/repos/apache/reef","labels_url":"https://api.github.com/repos/apache/reef/issues/1175/labels{/name}","comments_url":"https://api.github.com/repos/apache/reef/issues/1175/comments","events_url":"https://api.github.com/repos/apache/reef/issues/1175/events","html_url":"https://github.com/apache/reef/pull/1175","id":186464075,"number":1175,"title":"[REEF-1658] Gracefully shut down all threads at the end of the REEF job","user":{"login":"motus","id":31380,"avatar_url":"https://avatars.githubusercontent.com/u/31380?v=3","gravatar_id":"","url":"https://api.github.com/users/motus","html_url":"https://github.com/motus","followers_url":"https://api.github.com/users/motus/followers","following_url":"https://api.github.com/users/motus/following{/other_user}","gists_url":"https://api.github.com/users/motus/gists{/gist_id}","starred_url":"https://api.github.com/users/motus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/motus/subscriptions","organizations_url":"https://api.github.com/users/motus/orgs","repos_url":"https://api.github.com/users/motus/repos","events_url":"https://api.github.com/users/motus/events{/privacy}","received_events_url":"https://api.github.com/users/motus/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2016-11-01T05:47:35Z","updated_at":"2016-11-02T17:49:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/reef/pulls/1175","html_url":"https://github.com/apache/reef/pull/1175","diff_url":"https://github.com/apache/reef/pull/1175.diff","patch_url":"https://github.com/apache/reef/pull/1175.patch"},"body":"\r\nThis work is part of \"REEF as a library\" project [REEF-1561](https://issues.apache.org/jira/browse/REEF-1561)\r\n\r\nAfter this update, REEF Driver should be able to close *without* explicit `System.exit(0)` invocation at the end. We will keep that call until we test all corner cases more thoroughly to make sure we always clean up the resources on REEF job exit.\r\n\r\nSummary of changes:\r\n  * Close the `EvaluatorIdlenessThreadPool` in `DriverRuntimeStopHandler`\r\n  * Make `EvaluatorIdlenessThreadPool` `AutoCloseable` to close the local thread pool\r\n  * Implement `EvaluatorManager.shutdown()` method and call it when removing evaluator from `Evaluators`\r\n  * Make sure `.close()` methods never throw in `DispatchingEStage` and `EvaluatorMessageDispatcher`\r\n  * Give better thread names in `EvaluatorIdlenessThreadPool`\r\n  * Improve logging and error handling in `.close()` methods in all path of the driver shutdown\r\n\r\nJIRA: [REEF-1658](https://issues.apache.org/jira/browse/REEF-1658)"},"comment":{"url":"https://api.github.com/repos/apache/reef/issues/comments/257944587","html_url":"https://github.com/apache/reef/pull/1175#issuecomment-257944587","issue_url":"https://api.github.com/repos/apache/reef/issues/1175","id":257944587,"user":{"login":"motus","id":31380,"avatar_url":"https://avatars.githubusercontent.com/u/31380?v=3","gravatar_id":"","url":"https://api.github.com/users/motus","html_url":"https://github.com/motus","followers_url":"https://api.github.com/users/motus/followers","following_url":"https://api.github.com/users/motus/following{/other_user}","gists_url":"https://api.github.com/users/motus/gists{/gist_id}","starred_url":"https://api.github.com/users/motus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/motus/subscriptions","organizations_url":"https://api.github.com/users/motus/orgs","repos_url":"https://api.github.com/users/motus/repos","events_url":"https://api.github.com/users/motus/events{/privacy}","received_events_url":"https://api.github.com/users/motus/received_events","type":"User","site_admin":false},"created_at":"2016-11-02T17:49:57Z","updated_at":"2016-11-02T17:49:57Z","body":"Done with the fixes! @markusweimer please have a look. Thanks!"}}
{"actor":{"display_login":"motus"}}