Unverified Commit 7b058f55 authored by lgcareer's avatar lgcareer Committed by GitHub
Browse files

Merge pull request #459 from lgcareer/branch-1.0.2

The SQL task fails if the mail delivery fails
parents 44f1eb94 c7684453
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -160,6 +160,7 @@ public class MailUtils {
                return retMap;
            }catch (Exception e){
                handleException(receivers, retMap, e);
                return retMap;
            }
        }
        return retMap;
+7 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package cn.escheduler.server.worker.task.sql;

import cn.escheduler.alert.utils.MailUtils;
import cn.escheduler.api.enums.Status;
import cn.escheduler.common.Constants;
import cn.escheduler.common.enums.DbType;
import cn.escheduler.common.enums.ShowType;
@@ -310,6 +311,7 @@ public class SqlTask extends AbstractTask {
            }
        } catch (Exception e) {
            logger.error(e.getMessage(),e);
            throw new RuntimeException(e.getMessage());
        }
        return connection;
    }
@@ -371,9 +373,13 @@ public class SqlTask extends AbstractTask {

        String showTypeName = sqlParameters.getShowType().replace(Constants.COMMA,"").trim();
        if(EnumUtils.isValidEnum(ShowType.class,showTypeName)){
            MailUtils.sendMails(receviersList,receviersCcList,title, content, ShowType.valueOf(showTypeName));
            Map<String, Object> mailResult = MailUtils.sendMails(receviersList, receviersCcList, title, content, ShowType.valueOf(showTypeName));
            if(!(Boolean) mailResult.get(cn.escheduler.api.utils.Constants.STATUS)){
                throw new RuntimeException("send mail failed!");
            }
        }else{
            logger.error("showType: {} is not valid "  ,showTypeName);
            throw new RuntimeException(String.format("showType: %s is not valid ",showTypeName));
        }
    }