{"action":"created","issue":{"url":"https://api.github.com/repos/druid-io/druid/issues/3335","repository_url":"https://api.github.com/repos/druid-io/druid","labels_url":"https://api.github.com/repos/druid-io/druid/issues/3335/labels{/name}","comments_url":"https://api.github.com/repos/druid-io/druid/issues/3335/comments","events_url":"https://api.github.com/repos/druid-io/druid/issues/3335/events","html_url":"https://github.com/druid-io/druid/pull/3335","id":169987677,"number":3335,"title":"More useful query errors.","user":{"login":"gianm","id":1214075,"avatar_url":"https://avatars.githubusercontent.com/u/1214075?v=3","gravatar_id":"","url":"https://api.github.com/users/gianm","html_url":"https://github.com/gianm","followers_url":"https://api.github.com/users/gianm/followers","following_url":"https://api.github.com/users/gianm/following{/other_user}","gists_url":"https://api.github.com/users/gianm/gists{/gist_id}","starred_url":"https://api.github.com/users/gianm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gianm/subscriptions","organizations_url":"https://api.github.com/users/gianm/orgs","repos_url":"https://api.github.com/users/gianm/repos","events_url":"https://api.github.com/users/gianm/events{/privacy}","received_events_url":"https://api.github.com/users/gianm/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/druid-io/druid/labels/Improvement","name":"Improvement","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/druid-io/druid/milestones/20","html_url":"https://github.com/druid-io/druid/milestones/0.9.2","labels_url":"https://api.github.com/repos/druid-io/druid/milestones/20/labels","id":1571409,"number":20,"title":"0.9.2","description":"","creator":{"login":"fjy","id":428325,"avatar_url":"https://avatars.githubusercontent.com/u/428325?v=3","gravatar_id":"","url":"https://api.github.com/users/fjy","html_url":"https://github.com/fjy","followers_url":"https://api.github.com/users/fjy/followers","following_url":"https://api.github.com/users/fjy/following{/other_user}","gists_url":"https://api.github.com/users/fjy/gists{/gist_id}","starred_url":"https://api.github.com/users/fjy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fjy/subscriptions","organizations_url":"https://api.github.com/users/fjy/orgs","repos_url":"https://api.github.com/users/fjy/repos","events_url":"https://api.github.com/users/fjy/events{/privacy}","received_events_url":"https://api.github.com/users/fjy/received_events","type":"User","site_admin":false},"open_issues":24,"closed_issues":101,"state":"open","created_at":"2016-02-08T22:01:21Z","updated_at":"2016-08-08T18:08:42Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2016-08-08T18:08:42Z","updated_at":"2016-08-08T18:50:53Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/druid-io/druid/pulls/3335","html_url":"https://github.com/druid-io/druid/pull/3335","diff_url":"https://github.com/druid-io/druid/pull/3335.diff","patch_url":"https://github.com/druid-io/druid/pull/3335.patch"},"body":"Follow-up to #1773, which meant to add more useful query errors but\r\ndid not actually do so. Since that patch, any error other than\r\ninterrupt/cancel/timeout was reported as `{\"error\":\"Unknown exception\"}`.\r\n\r\nWith this patch, the error fields are:\r\n\r\n- error, one of the specific strings \"Query interrupted\", \"Query timeout\",\r\n  \"Query cancelled\", or \"Unknown exception\" (same behavior as before).\r\n- errorMessage, the message of the topmost non-QueryInterruptedException\r\n  in the causality chain.\r\n- errorClass, the class of the topmost non-QueryInterruptedException\r\n  in the causality chain.\r\n- host, the host that generated the original exception."},"comment":{"url":"https://api.github.com/repos/druid-io/druid/issues/comments/238338561","html_url":"https://github.com/druid-io/druid/pull/3335#issuecomment-238338561","issue_url":"https://api.github.com/repos/druid-io/druid/issues/3335","id":238338561,"user":{"login":"gianm","id":1214075,"avatar_url":"https://avatars.githubusercontent.com/u/1214075?v=3","gravatar_id":"","url":"https://api.github.com/users/gianm","html_url":"https://github.com/gianm","followers_url":"https://api.github.com/users/gianm/followers","following_url":"https://api.github.com/users/gianm/following{/other_user}","gists_url":"https://api.github.com/users/gianm/gists{/gist_id}","starred_url":"https://api.github.com/users/gianm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gianm/subscriptions","organizations_url":"https://api.github.com/users/gianm/orgs","repos_url":"https://api.github.com/users/gianm/repos","events_url":"https://api.github.com/users/gianm/events{/privacy}","received_events_url":"https://api.github.com/users/gianm/received_events","type":"User","site_admin":false},"created_at":"2016-08-08T18:50:53Z","updated_at":"2016-08-08T18:50:53Z","body":"Some examples of errors from the broker, before and after.\r\n\r\nQuery timeout,\r\n\r\n- before: `{\"error\":\"Query timeout\"}`\r\n- after: `{\"error\":\"Query timeout\",\"errorMessage\":\"Timeout waiting for task.\",\"errorClass\":\"java.util.concurrent.TimeoutException\",\"host\":\"druid1.example.com:8083\"}`\r\n\r\ngroupBy maxResults exceeded,\r\n\r\n- before: `{\"error\":\"Unknown exception\"}`\r\n- after: `{\"error\":\"Unknown exception\",\"errorMessage\":\"Maximum number of rows [500000] reached\",\"errorClass\":\"com.metamx.common.ISE\",\"host\":\"druid1.example.com:8083\"}`"}}
{"actor":{"display_login":"gianm"}}