MM-16796: reduce plugin job interval to once per day (#11521)

* MM-16796: reduce plugin job interval to once per day

The Jobs infrastructure isn't currently setup for running frequent jobs,
as it spams the Jobs table with useless records. Update the plugin job
interval to run less frequently -- since the cleanup doesn't affect
semantics anyway -- and clean up the previously created entries in the Jobs table.
This commit is contained in:
Jesse Hallam
2019-07-05 20:11:11 -03:00
committed by GitHub
parent 8d100af052
commit 0d05fe32af
2 changed files with 6 additions and 1 deletions

View File

@@ -11,6 +11,8 @@ import (
"github.com/mattermost/mattermost-server/model"
)
const pluginsJobInterval = 24 * 60 * 60 * time.Second
type Scheduler struct {
App *app.App
}
@@ -32,7 +34,7 @@ func (scheduler *Scheduler) Enabled(cfg *model.Config) bool {
}
func (scheduler *Scheduler) NextScheduleTime(cfg *model.Config, now time.Time, pendingJobs bool, lastSuccessfulJob *model.Job) *time.Time {
nextTime := time.Now().Add(60 * time.Second)
nextTime := time.Now().Add(pluginsJobInterval)
return &nextTime
}

View File

@@ -699,6 +699,9 @@ func UpgradeDatabaseToVersion512(sqlStore SqlStore) {
func UpgradeDatabaseToVersion513(sqlStore SqlStore) {
if shouldPerformUpgrade(sqlStore, VERSION_5_12_0, VERSION_5_13_0) {
// The previous jobs ran once per minute, cluttering the Jobs table with somewhat useless entries. Clean that up.
sqlStore.GetMaster().Exec("DELETE FROM Jobs WHERE Type = 'plugins'")
saveSchemaVersion(sqlStore, VERSION_5_13_0)
}
}