可控制dc是否对其他dc下的节点的任务进行扫描

This commit is contained in:
chenjinsong
2018-11-01 13:54:02 +08:00
parent 32a1746aaa
commit ddc5ea685a
3 changed files with 17 additions and 10 deletions

View File

@@ -412,7 +412,7 @@ public class Constants {
// public static final Integer TEST_SWITCH;
//static final 自变量的初始化
//当前业务系统id
public static final String CURRENT_SYSTEM_ID;
public static final String MISSION_SINGLE;
public static final String DB_TYPE;
public static final boolean IS_MYSQL;
@@ -782,7 +782,7 @@ public class Constants {
* 是否是 mysql 数据库
*/
CURRENT_SYSTEM_ID = Config.getString("system.id", "-1");
MISSION_SINGLE = Config.getString("mission.single", "0");
IS_MYSQL = "mysql".equalsIgnoreCase(DB_TYPE);
/**

View File

@@ -55,8 +55,6 @@ public class UpgradeService extends CommonService{
*/
public ArrayList<MissionStateTable> getNewMessionList(Long missionId){
//-- 查询可执行的任务
String systemSql = "-1".equals(Constants.CURRENT_SYSTEM_ID) ? "" : "and mst.system_id=" + Constants.CURRENT_SYSTEM_ID + " ";
StringBuffer searchSQL = new StringBuffer();
searchSQL.append("select mst.mission_id,");
searchSQL.append("mst.mission_type,");
@@ -69,7 +67,6 @@ public class UpgradeService extends CommonService{
searchSQL.append("mst.loop_delay ");
searchSQL.append("from mission_state_table mst ");
searchSQL.append("where 1=1 ");
searchSQL.append(systemSql);
//2012-03-20 取消任务时间过滤,将对所有任务进行处理
// searchSQL.append("and (mst.end_time>sysdate or mst.end_time is null) ");// 周期任务(未过时) or 非周期任务
if (missionId!=null && missionId.longValue() !=0l) {
@@ -126,8 +123,6 @@ public class UpgradeService extends CommonService{
*/
public ArrayList<MissionStateTable> getStartMessionList(String ids){
//-- 查询可执行的任务
String systemSql = "-1".equals(Constants.CURRENT_SYSTEM_ID) ? "" : "and mst.system_id=" + Constants.CURRENT_SYSTEM_ID + " ";
StringBuffer searchSQL = new StringBuffer();
searchSQL.append("select mst.mission_id,");
searchSQL.append("mst.mission_type,");
@@ -140,7 +135,6 @@ public class UpgradeService extends CommonService{
searchSQL.append("mst.loop_delay ");
searchSQL.append("from mission_state_table mst ");
searchSQL.append("where 1=1 ");
searchSQL.append(systemSql);
// searchSQL.append("and (mst.end_time>sysdate or mst.end_time is null) ");
searchSQL.append("and mst.mission_state in(2,6) ");
if(StringUtils.isNotEmpty(ids)){
@@ -772,8 +766,19 @@ public class UpgradeService extends CommonService{
}
//查询任务下发节点sql-管理范围外节点
//是否限制为当前dc范围
boolean missionSingle = Constants.MISSION_SINGLE.equals("1") ? true : false;
StringBuffer msSql = new StringBuffer("");
if (missionSingle) {
Long serverId = Common.getServerTable().getId();
msSql.append("and sis.server_id=");
msSql.append(serverId);
msSql.append(" ");
}
ArrayList<String> ipnSegmentFields = new ArrayList<String>();
StringBuffer ipnSegmentSQL = new StringBuffer("select sis.start_ipn,sis.end_ipn from server_ip_segment sis left join server_table st on st.id = sis.server_id where st.server_state='0' and nvl(sis.segment_state,0) <>-1");
StringBuffer ipnSegmentSQL = new StringBuffer("select sis.start_ipn,sis.end_ipn from server_ip_segment sis left join server_table st on st.id = sis.server_id where st.server_state='0' and nvl(sis.segment_state,0) <>-1 ");
ipnSegmentSQL.append(msSql);
ipnSegmentFields.add("start_ipn");
ipnSegmentFields.add("end_ipn");
ArrayList<Map<String, String>> omNodeMapList = dao.dbSelect(ipnSegmentSQL.toString(), ipnSegmentFields);
@@ -797,7 +802,7 @@ public class UpgradeService extends CommonService{
if(omNodeMapList!= null && omNodeMapList.size()>0){
omNode:for(Map<String, String> map : omNodeMapList){
if(nodeMap.get("seq_id").equals(map.get("seq_id"))){//管理范围外节点失败结果
params.add(new String[]{missionId.longValue()+"",nodeMap.get("seq_id")+"","1",MissionConstants.ERROR_RESULT_UN_MANAGEMENT_NODE});
//params.add(new String[]{missionId.longValue()+"",nodeMap.get("seq_id")+"","1",MissionConstants.ERROR_RESULT_UN_MANAGEMENT_NODE});
continue node;
}
}

View File

@@ -48,6 +48,8 @@ email.host =
web.socket.port = 60703
#---Common-------
##--分中心只执行自身范围内client的任务 0 关闭;1 开启;
mission.single = 1
##--全局文本解析编码与web端、Agent端一致不可修改
common.text.coding = UTF-8
##--全局日期格式化方式,须与数据库 日期数据格式化方式db.date.format保持一致不建议修改