You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if (match) {
long evalInterval = alertConverge.getEvalInterval() * 1000;
long now = System.currentTimeMillis();
if (evalInterval <= 0) {
return true;
}
......
}
The type of integer multiplied by integer is integer. When alertConverge.getEvalInterval() is set to the maximum value of integer, overflow will occur after multiplying by 1000, and the result will be 0, which leads to the condition if (evalInterval <= 0) becoming true, and cannot perform alarm convergence.
Expected Behavior
if (match) {
long evalInterval = alertConverge.getEvalInterval() * 1000L;
long now = System.currentTimeMillis();
if (evalInterval <= 0) {
return true;
}
......
}
The type of alertConverge.getEvalInterval() * 1000L is long,will not overflow.
Steps To Reproduce
None
Environment
v1.4.4
Debug logs
None
Anything else?
None
The text was updated successfully, but these errors were encountered:
Is there an existing issue for this?
Current Behavior
org.dromara.hertzbeat.alert.reduce.AlarmConvergeReduce#filterConverge
The type of integer multiplied by integer is integer. When alertConverge.getEvalInterval() is set to the maximum value of integer, overflow will occur after multiplying by 1000, and the result will be 0, which leads to the condition if (evalInterval <= 0) becoming true, and cannot perform alarm convergence.
Expected Behavior
The type of alertConverge.getEvalInterval() * 1000L is long,will not overflow.
Steps To Reproduce
None
Environment
Debug logs
None
Anything else?
None
The text was updated successfully, but these errors were encountered: