{"action":"created","issue":{"url":"https://api.github.com/repos/apache/samza/issues/436","repository_url":"https://api.github.com/repos/apache/samza","labels_url":"https://api.github.com/repos/apache/samza/issues/436/labels{/name}","comments_url":"https://api.github.com/repos/apache/samza/issues/436/comments","events_url":"https://api.github.com/repos/apache/samza/issues/436/events","html_url":"https://github.com/apache/samza/pull/436","id":302881947,"number":436,"title":"SD-1599: Improve the efficiency of the AsynRunLoop when some partitio…","user":{"login":"jwlent55","id":835248,"avatar_url":"https://avatars0.githubusercontent.com/u/835248?v=4","gravatar_id":"","url":"https://api.github.com/users/jwlent55","html_url":"https://github.com/jwlent55","followers_url":"https://api.github.com/users/jwlent55/followers","following_url":"https://api.github.com/users/jwlent55/following{/other_user}","gists_url":"https://api.github.com/users/jwlent55/gists{/gist_id}","starred_url":"https://api.github.com/users/jwlent55/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwlent55/subscriptions","organizations_url":"https://api.github.com/users/jwlent55/orgs","repos_url":"https://api.github.com/users/jwlent55/repos","events_url":"https://api.github.com/users/jwlent55/events{/privacy}","received_events_url":"https://api.github.com/users/jwlent55/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-03-06T21:54:37Z","updated_at":"2018-03-19T22:33:38Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/apache/samza/pulls/436","html_url":"https://github.com/apache/samza/pull/436","diff_url":"https://github.com/apache/samza/pull/436.diff","patch_url":"https://github.com/apache/samza/pull/436.patch"},"body":"…ns are empty."},"comment":{"url":"https://api.github.com/repos/apache/samza/issues/comments/374406752","html_url":"https://github.com/apache/samza/pull/436#issuecomment-374406752","issue_url":"https://api.github.com/repos/apache/samza/issues/436","id":374406752,"user":{"login":"xinyuiscool","id":24738423,"avatar_url":"https://avatars0.githubusercontent.com/u/24738423?v=4","gravatar_id":"","url":"https://api.github.com/users/xinyuiscool","html_url":"https://github.com/xinyuiscool","followers_url":"https://api.github.com/users/xinyuiscool/followers","following_url":"https://api.github.com/users/xinyuiscool/following{/other_user}","gists_url":"https://api.github.com/users/xinyuiscool/gists{/gist_id}","starred_url":"https://api.github.com/users/xinyuiscool/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xinyuiscool/subscriptions","organizations_url":"https://api.github.com/users/xinyuiscool/orgs","repos_url":"https://api.github.com/users/xinyuiscool/repos","events_url":"https://api.github.com/users/xinyuiscool/events{/privacy}","received_events_url":"https://api.github.com/users/xinyuiscool/received_events","type":"User","site_admin":false},"created_at":"2018-03-19T22:33:38Z","updated_at":"2018-03-19T22:33:38Z","author_association":"CONTRIBUTOR","body":"@jwlent55 : I think you might misunderstood my first question. Now we have two waits here: one for the poll (task.poll.interval.ms), and the other for no work (task.max.no.work.wait.ms). My question is that since we can now use the second wait to control the polling (if there is no work, don't poll until task.max.no.work.wait.ms), seems we don't need the first wait anymore (equal to set task.poll.interval.ms=0). The AsyncRunLoop was relying on the first poll timer to avoid busy looping, but now it should be fine to return immediately after polling any SystemConsumer. This seems to be the goal we want to achieve here: AsyncRunLoop will control the polling by knowing whether there is worker available to process the message. And this should be much more efficient as you experiments demonstrated. What do you think?"}}
{"actor":{"display_login":"xinyuiscool"}}