{"action":"created","issue":{"url":"https://api.github.com/repos/apache/incubator-doris/issues/2447","repository_url":"https://api.github.com/repos/apache/incubator-doris","labels_url":"https://api.github.com/repos/apache/incubator-doris/issues/2447/labels{/name}","comments_url":"https://api.github.com/repos/apache/incubator-doris/issues/2447/comments","events_url":"https://api.github.com/repos/apache/incubator-doris/issues/2447/events","html_url":"https://github.com/apache/incubator-doris/pull/2447","id":536943668,"node_id":"MDExOlB1bGxSZXF1ZXN0MzUyMzg1NzE3","number":2447,"title":"Finish schema change after try three times","user":{"login":"WingsGo","id":22497357,"node_id":"MDQ6VXNlcjIyNDk3MzU3","avatar_url":"https://avatars0.githubusercontent.com/u/22497357?v=4","gravatar_id":"","url":"https://api.github.com/users/WingsGo","html_url":"https://github.com/WingsGo","followers_url":"https://api.github.com/users/WingsGo/followers","following_url":"https://api.github.com/users/WingsGo/following{/other_user}","gists_url":"https://api.github.com/users/WingsGo/gists{/gist_id}","starred_url":"https://api.github.com/users/WingsGo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WingsGo/subscriptions","organizations_url":"https://api.github.com/users/WingsGo/orgs","repos_url":"https://api.github.com/users/WingsGo/repos","events_url":"https://api.github.com/users/WingsGo/events{/privacy}","received_events_url":"https://api.github.com/users/WingsGo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2019-12-12T12:18:00Z","updated_at":"2019-12-16T13:32:41Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/apache/incubator-doris/pulls/2447","html_url":"https://github.com/apache/incubator-doris/pull/2447","diff_url":"https://github.com/apache/incubator-doris/pull/2447.diff","patch_url":"https://github.com/apache/incubator-doris/pull/2447.patch"},"body":"#2410 "},"comment":{"url":"https://api.github.com/repos/apache/incubator-doris/issues/comments/566062488","html_url":"https://github.com/apache/incubator-doris/pull/2447#issuecomment-566062488","issue_url":"https://api.github.com/repos/apache/incubator-doris/issues/2447","id":566062488,"node_id":"MDEyOklzc3VlQ29tbWVudDU2NjA2MjQ4OA==","user":{"login":"WingsGo","id":22497357,"node_id":"MDQ6VXNlcjIyNDk3MzU3","avatar_url":"https://avatars0.githubusercontent.com/u/22497357?v=4","gravatar_id":"","url":"https://api.github.com/users/WingsGo","html_url":"https://github.com/WingsGo","followers_url":"https://api.github.com/users/WingsGo/followers","following_url":"https://api.github.com/users/WingsGo/following{/other_user}","gists_url":"https://api.github.com/users/WingsGo/gists{/gist_id}","starred_url":"https://api.github.com/users/WingsGo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WingsGo/subscriptions","organizations_url":"https://api.github.com/users/WingsGo/orgs","repos_url":"https://api.github.com/users/WingsGo/repos","events_url":"https://api.github.com/users/WingsGo/events{/privacy}","received_events_url":"https://api.github.com/users/WingsGo/received_events","type":"User","site_admin":false},"created_at":"2019-12-16T13:32:41Z","updated_at":"2019-12-16T13:32:41Z","author_association":"CONTRIBUTOR","body":"> > > You'd better not deal with AlterJob's error logic here, as this will lead to a messy code structure.\r\n> > > Here is my advise:\r\n> > > \r\n> > > 1. In `MasterImpl.java`\r\n> > >    You will find a comment `// We start to let FE perceive the task's error msg`. And you should add\r\n> > >    \"&& taskType != TTaskType.ALTER\" in the following `if` clause. So that even this is a failure task\r\n> > >    report, it can still be passed to `finishAlterTask()`.\r\n> > > 2. In `finishAlterTask()`\r\n> > >    We are currently only dealing with successful tasks here, and you need to modify this method to\r\n> > >    also deal with the failed task. And you can just set some error msgs of failure counter into the\r\n> > >    agent task. And no need to get the AlterJob.\r\n> > > 3. In `RollupJobV2` and `SchemaChangeJobV2`\r\n> > >    Both `RollupJobV2` and `SchemaChangeJobV2` have method `runRunningJob()`. In this method,\r\n> > >    you can check the tasks' status in `rollupBatchTask` or `schemaChangeBatchTask`. The tasks here\r\n> > >    are same as you got in `finishAlterTask()`. And if you find that some of tasks are failed more than 3\r\n> > >    times. you can just throw an `AlterCancelException`, so that the job will be cancelled automatically.\r\n> > \r\n> > \r\n> > I think the error msgs of failure counter have been record in following, so I think I only need to change SchemaChangeJobV2 and RollupJobV2.\r\n> > ```\r\n> > if (taskStatus.getStatus_code() != TStatusCode.OK) {\r\n> >                 task.failed();\r\n> >                 // We start to let FE perceive the task's error msg\r\n> > }\r\n> > ```\r\n> \r\n> Yes you are right. But this only count the error, no error msg left. Maybe you can optimize it.\r\n\r\nDone"}}
{"actor":{"display_login":"WingsGo"}}