mirror of https://github.com/apache/cloudstack.git
CLOUDSTACK-7595: Config parameters "job.expire.minutes" and "job.cancel.threshold.minutes" incorrectly getting multiplied by a factor of 60
Removed the unnecessary multiply factor for both the config parameters. Also removed the duplicate entries from Config.java as these are not required
(cherry picked from commit a6ee4112a5)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
parent
afd7996776
commit
c44262bfc2
|
|
@ -38,7 +38,6 @@ import org.apache.log4j.NDC;
|
|||
|
||||
import org.apache.cloudstack.api.ApiErrorCode;
|
||||
import org.apache.cloudstack.context.CallContext;
|
||||
import org.apache.cloudstack.framework.config.ConfigDepot;
|
||||
import org.apache.cloudstack.framework.config.ConfigKey;
|
||||
import org.apache.cloudstack.framework.config.Configurable;
|
||||
import org.apache.cloudstack.framework.jobs.AsyncJob;
|
||||
|
|
@ -83,10 +82,10 @@ import com.cloud.utils.mgmt.JmxUtil;
|
|||
|
||||
public class AsyncJobManagerImpl extends ManagerBase implements AsyncJobManager, ClusterManagerListener, Configurable {
|
||||
// Advanced
|
||||
private static final ConfigKey<Long> JobExpireMinutes = new ConfigKey<Long>(Long.class, "job.expire.minutes", "Advanced", "1440",
|
||||
"Time (in minutes) for async-jobs to be kept in system", true, ConfigKey.Scope.Global, 60l);
|
||||
private static final ConfigKey<Long> JobCancelThresholdMinutes = new ConfigKey<Long>(Long.class, "job.cancel.threshold.minutes", "Advanced", "60",
|
||||
"Time (in minutes) for async-jobs to be forcely cancelled if it has been in process for long", true, ConfigKey.Scope.Global, 240l);
|
||||
private static final ConfigKey<Long> JobExpireMinutes = new ConfigKey<Long>("Advanced", Long.class, "job.expire.minutes", "1440",
|
||||
"Time (in minutes) for async-jobs to be kept in system", true, ConfigKey.Scope.Global);
|
||||
private static final ConfigKey<Long> JobCancelThresholdMinutes = new ConfigKey<Long>("Advanced", Long.class, "job.cancel.threshold.minutes", "60",
|
||||
"Time (in minutes) for async-jobs to be forcely cancelled if it has been in process for long", true, ConfigKey.Scope.Global);
|
||||
|
||||
private static final Logger s_logger = Logger.getLogger(AsyncJobManagerImpl.class);
|
||||
|
||||
|
|
@ -112,8 +111,6 @@ public class AsyncJobManagerImpl extends ManagerBase implements AsyncJobManager,
|
|||
private MessageBus _messageBus;
|
||||
@Inject
|
||||
private AsyncJobMonitor _jobMonitor;
|
||||
@Inject
|
||||
private ConfigDepot _configDepot;
|
||||
|
||||
private volatile long _executionRunNumber = 1;
|
||||
|
||||
|
|
@ -765,16 +762,16 @@ public class AsyncJobManagerImpl extends ManagerBase implements AsyncJobManager,
|
|||
|
||||
// limit to 100 jobs per turn, this gives cleanup throughput as 600 jobs per minute
|
||||
// hopefully this will be fast enough to balance potential growth of job table
|
||||
//1) Expire unfinished jobs that weren't processed yet
|
||||
List<AsyncJobVO> l = _jobDao.getExpiredUnfinishedJobs(cutTime, 100);
|
||||
for (AsyncJobVO job : l) {
|
||||
// 1) Expire unfinished jobs that weren't processed yet
|
||||
List<AsyncJobVO> unfinishedJobs = _jobDao.getExpiredUnfinishedJobs(cutTime, 100);
|
||||
for (AsyncJobVO job : unfinishedJobs) {
|
||||
s_logger.info("Expunging unfinished job " + job);
|
||||
|
||||
_jobMonitor.unregisterByJobId(job.getId());
|
||||
expungeAsyncJob(job);
|
||||
}
|
||||
|
||||
//2) Expunge finished jobs
|
||||
// 2) Expunge finished jobs
|
||||
List<AsyncJobVO> completedJobs = _jobDao.getExpiredCompletedJobs(cutTime, 100);
|
||||
for (AsyncJobVO job : completedJobs) {
|
||||
s_logger.trace("Expunging completed job " + job);
|
||||
|
|
@ -812,7 +809,7 @@ public class AsyncJobManagerImpl extends ManagerBase implements AsyncJobManager,
|
|||
@Override
|
||||
public void doInTransactionWithoutResult(TransactionStatus status) {
|
||||
_jobDao.expunge(job.getId());
|
||||
//purge corresponding sync queue item
|
||||
// purge corresponding sync queue item
|
||||
_queueMgr.purgeAsyncJobQueueItemId(job.getId());
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -521,15 +521,6 @@ public enum Config {
|
|||
KVMSnapshotEnabled("Snapshots", SnapshotManager.class, Boolean.class, "kvm.snapshot.enabled", "false", "whether snapshot is enabled for KVM hosts", null),
|
||||
|
||||
// Advanced
|
||||
JobExpireMinutes("Advanced", ManagementServer.class, String.class, "job.expire.minutes", "1440", "Time (in minutes) for async-jobs to be kept in system", null),
|
||||
JobCancelThresholdMinutes(
|
||||
"Advanced",
|
||||
ManagementServer.class,
|
||||
String.class,
|
||||
"job.cancel.threshold.minutes",
|
||||
"60",
|
||||
"Time (in minutes) for async-jobs to be forcely cancelled if it has been in process for long",
|
||||
null),
|
||||
EventPurgeInterval(
|
||||
"Advanced",
|
||||
ManagementServer.class,
|
||||
|
|
|
|||
Loading…
Reference in New Issue