{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/5470","labels_url":"https://api.github.com/repos/apache/spark/issues/5470/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/5470/comments","events_url":"https://api.github.com/repos/apache/spark/issues/5470/events","html_url":"https://github.com/apache/spark/pull/5470","id":67786800,"number":5470,"title":"[SPARK-6860][Streaming][WebUI] Fix the possible inconsistency of StreamingPage","user":{"login":"zsxwing","id":1000778,"avatar_url":"https://avatars.githubusercontent.com/u/1000778?v=3","gravatar_id":"","url":"https://api.github.com/users/zsxwing","html_url":"https://github.com/zsxwing","followers_url":"https://api.github.com/users/zsxwing/followers","following_url":"https://api.github.com/users/zsxwing/following{/other_user}","gists_url":"https://api.github.com/users/zsxwing/gists{/gist_id}","starred_url":"https://api.github.com/users/zsxwing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zsxwing/subscriptions","organizations_url":"https://api.github.com/users/zsxwing/orgs","repos_url":"https://api.github.com/users/zsxwing/repos","events_url":"https://api.github.com/users/zsxwing/events{/privacy}","received_events_url":"https://api.github.com/users/zsxwing/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-04-11T13:40:32Z","updated_at":"2015-04-12T16:47:07Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/5470","html_url":"https://github.com/apache/spark/pull/5470","diff_url":"https://github.com/apache/spark/pull/5470.diff","patch_url":"https://github.com/apache/spark/pull/5470.patch"},"body":"Because `StreamingPage.render` doesn't hold the `listener` lock when generating the content, the different parts of content may have some inconsistent values if `listener` updates its status at the same time. And it will confuse people.\r\n\r\nThis PR added `listener.synchronized` to make sure we have a consistent view of StreamingJobProgressListener when creating the content."},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/92086776","html_url":"https://github.com/apache/spark/pull/5470#issuecomment-92086776","issue_url":"https://api.github.com/repos/apache/spark/issues/5470","id":92086776,"user":{"login":"srowen","id":822522,"avatar_url":"https://avatars.githubusercontent.com/u/822522?v=3","gravatar_id":"","url":"https://api.github.com/users/srowen","html_url":"https://github.com/srowen","followers_url":"https://api.github.com/users/srowen/followers","following_url":"https://api.github.com/users/srowen/following{/other_user}","gists_url":"https://api.github.com/users/srowen/gists{/gist_id}","starred_url":"https://api.github.com/users/srowen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/srowen/subscriptions","organizations_url":"https://api.github.com/users/srowen/orgs","repos_url":"https://api.github.com/users/srowen/repos","events_url":"https://api.github.com/users/srowen/events{/privacy}","received_events_url":"https://api.github.com/users/srowen/received_events","type":"User","site_admin":false},"created_at":"2015-04-12T16:47:07Z","updated_at":"2015-04-12T16:47:07Z","body":"LGTM. The first commit fixes a problem that would indeed in rare cases cause the page to display an inconsistent view of the state, which is probably minor but still bad. The second synchronizes access to mutable data structures that were inconsistently synchronized."}}