{"push_id":1137832714,"size":1,"distinct_size":1,"ref":"refs/heads/cdh5-trunk","head":"a4b9036c3828d36359f07c2a9d2f2f83eb294c7d","before":"aa0a43f4ff25ee02428573bb60c0d45f7634fabe","commits":[{"sha":"a4b9036c3828d36359f07c2a9d2f2f83eb294c7d","author":{"name":"Tim Armstrong","email":"fe64fd088b711818286897e35b3f900c59dcb393@cloudera.com"},"message":"IMPALA-3633: cancel fragment if coordinator is gone\n\nThe bug is that return_val.status is an optional field, so setting\nthe status without __isset is equivalent to Status::OK(). This\nmeant that fragment did not get notified when reporting status\nif the coordinator had gone away. This means that is a cancel\nRPC was lost, we could be left with zombie fragments with no\ncoordinator that kept on running until completion.\n\nTesting:\nI couldn't see a way to replicate this reliably with our existing test\nsetup, since it requires some RPCs to be dropped to get into this state.\nI manually tested by commenting out CancelRemoteFragments(), starting a\nlong-running query then cancelling it. Before the patch, perf top showed\nthat the fragments continue to execute the query. After the patch, the\nfragments stopped executing quickly.\n\nChange-Id: I62ab6f4df7c0ee60c6aa6291513f9f0cbfac3fe7\nReviewed-on: http://gerrit.cloudera.org:8080/3238\nReviewed-by: Tim Armstrong <tarmstrong@cloudera.com>\nTested-by: Internal Jenkins","distinct":true,"url":"https://api.github.com/repos/cloudera/Impala/commits/a4b9036c3828d36359f07c2a9d2f2f83eb294c7d"}]}
{"actor":{"display_login":"cloudera-gerrit"}}