【优化】合并PR-3605,避免子任务是任务本身导致死循环;

【修复】合并PR-3585,修复全局密码长度不一致问题;
2.5.0
xuxueli 8 months ago
commit 90ce467efd

@ -2408,6 +2408,7 @@ public void execute() {
- 6、【优化】合并PR-3616代码结构注释优化
- 7、【优化】合并PR-3619避免调度过程中任务停止边界情况处理逻辑
- 8、【优化】合并PR-3605避免子任务是任务本身导致死循环
- 9、【修复】合并PR-3585修复全局密码长度不一致问题
- 4、[规划中]升级springboot3.x解决2.x老版本漏洞类问题。注意springboot3.x依赖jdk17
- 5、[规划中]安全功能增强通讯加密参数改用加密数据避免AccessToken明文 降低token泄漏风险

@ -56,7 +56,13 @@ public class XxlJobCompleter {
for (int i = 0; i < childJobIds.length; i++) {
int childJobId = (childJobIds[i]!=null && childJobIds[i].trim().length()>0 && isNumeric(childJobIds[i]))?Integer.valueOf(childJobIds[i]):-1;
if (childJobId > 0) {
// valid
if (childJobId == xxlJobLog.getJobId()) {
logger.debug(">>>>>>>>>>> xxl-job, XxlJobCompleter-finishJob ignore childJobId, childJobId {} is self.", childJobId);
continue;
}
// trigger child job
JobTriggerPoolHelper.trigger(childJobId, TriggerTypeEnum.PARENT, -1, null, null, null);
ReturnT<String> triggerChildResult = ReturnT.SUCCESS;

@ -222,7 +222,14 @@ public class XxlJobServiceImpl implements XxlJobService {
String[] childJobIds = jobInfo.getChildJobId().split(",");
for (String childJobIdItem: childJobIds) {
if (childJobIdItem!=null && childJobIdItem.trim().length()>0 && isNumeric(childJobIdItem)) {
XxlJobInfo childJobInfo = xxlJobInfoDao.loadById(Integer.parseInt(childJobIdItem));
// parse child
int childJobId = Integer.parseInt(childJobIdItem);
if (childJobId == jobInfo.getId()) {
return new ReturnT<String>(ReturnT.FAIL_CODE, (I18nUtil.getString("jobinfo_field_childJobId")+"("+childJobId+")"+I18nUtil.getString("system_unvalid")) );
}
// valid child
XxlJobInfo childJobInfo = xxlJobInfoDao.loadById(childJobId);
if (childJobInfo==null) {
return new ReturnT<String>(ReturnT.FAIL_CODE,
MessageFormat.format((I18nUtil.getString("jobinfo_field_childJobId")+"({0})"+I18nUtil.getString("system_not_found")), childJobIdItem));

@ -16,12 +16,12 @@ $(function(){
userName : {
required : true ,
minlength: 4,
maxlength: 18
maxlength: 20
},
password : {
required : true ,
minlength: 4,
maxlength: 18
maxlength: 20
}
},
messages : {
@ -32,7 +32,7 @@ $(function(){
password : {
required : I18n.login_password_empty ,
minlength : I18n.login_password_lt_4
/*,maxlength:"登录密码不应超过18位"*/
/*,maxlength:"登录密码不应超过20位"*/
}
},
highlight : function(element) {

@ -15,11 +15,11 @@
<div class="login-box-body">
<p class="login-box-msg">${I18n.admin_name}</p>
<div class="form-group has-feedback">
<input type="text" name="userName" class="form-control" placeholder="${I18n.login_username_placeholder}" maxlength="18" >
<input type="text" name="userName" class="form-control" placeholder="${I18n.login_username_placeholder}" maxlength="20" >
<span class="glyphicon glyphicon-envelope form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<input type="password" name="password" class="form-control" placeholder="${I18n.login_password_placeholder}" maxlength="18" >
<input type="password" name="password" class="form-control" placeholder="${I18n.login_password_placeholder}" maxlength="20" >
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="row">

Loading…
Cancel
Save