fix: No operations allowed after statement closed when running sql task (#2265)
* sqlTask failed to run * get correct attribute value and logger content Co-authored-by: songqh <songquanhe@foxmail.com>
This commit is contained in:
parent
5d0f0e9490
commit
fc18d4a216
|
|
@ -419,13 +419,13 @@ public class OSUtils {
|
|||
* @return check memory and cpu usage
|
||||
*/
|
||||
public static Boolean checkResource(double systemCpuLoad, double systemReservedMemory){
|
||||
// judging usage
|
||||
// system load average
|
||||
double loadAverage = OSUtils.loadAverage();
|
||||
//
|
||||
// system available physical memory
|
||||
double availablePhysicalMemorySize = OSUtils.availablePhysicalMemorySize();
|
||||
|
||||
if(loadAverage > systemCpuLoad || availablePhysicalMemorySize < systemReservedMemory){
|
||||
logger.warn("load or availablePhysicalMemorySize(G) is too high, it's availablePhysicalMemorySize(G):{},loadAvg:{}", availablePhysicalMemorySize , loadAverage);
|
||||
logger.warn("load is too high or availablePhysicalMemorySize(G) is too low, it's availablePhysicalMemorySize(G):{},loadAvg:{}", availablePhysicalMemorySize , loadAverage);
|
||||
return false;
|
||||
}else{
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public class WorkerConfig {
|
|||
@Value("${worker.max.cpuload.avg}")
|
||||
private int workerMaxCpuloadAvg;
|
||||
|
||||
@Value("${master.reserved.memory}")
|
||||
@Value("${worker.reserved.memory}")
|
||||
private double workerReservedMemory;
|
||||
|
||||
public int getWorkerExecThreads() {
|
||||
|
|
|
|||
|
|
@ -363,20 +363,20 @@ public class SqlTask extends AbstractTask {
|
|||
// is the timeout set
|
||||
boolean timeoutFlag = taskProps.getTaskTimeoutStrategy() == TaskTimeoutStrategy.FAILED ||
|
||||
taskProps.getTaskTimeoutStrategy() == TaskTimeoutStrategy.WARNFAILED;
|
||||
try (PreparedStatement stmt = connection.prepareStatement(sqlBinds.getSql())) {
|
||||
if(timeoutFlag){
|
||||
stmt.setQueryTimeout(taskProps.getTaskTimeout());
|
||||
}
|
||||
Map<Integer, Property> params = sqlBinds.getParamsMap();
|
||||
if(params != null) {
|
||||
for (Map.Entry<Integer, Property> entry : params.entrySet()) {
|
||||
Property prop = entry.getValue();
|
||||
ParameterUtils.setInParameter(entry.getKey(), stmt, prop.getType(), prop.getValue());
|
||||
}
|
||||
}
|
||||
logger.info("prepare statement replace sql : {} ", stmt);
|
||||
return stmt;
|
||||
// prepare statement
|
||||
PreparedStatement stmt = connection.prepareStatement(sqlBinds.getSql());
|
||||
if(timeoutFlag){
|
||||
stmt.setQueryTimeout(taskProps.getTaskTimeout());
|
||||
}
|
||||
Map<Integer, Property> params = sqlBinds.getParamsMap();
|
||||
if(params != null) {
|
||||
for (Map.Entry<Integer, Property> entry : params.entrySet()) {
|
||||
Property prop = entry.getValue();
|
||||
ParameterUtils.setInParameter(entry.getKey(), stmt, prop.getType(), prop.getValue());
|
||||
}
|
||||
}
|
||||
logger.info("prepare statement replace sql : {} ", stmt);
|
||||
return stmt;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue