diff --git a/kernel/model/history.go b/kernel/model/history.go index d1c5329e6..11da3f07d 100644 --- a/kernel/model/history.go +++ b/kernel/model/history.go @@ -680,7 +680,15 @@ func clearOutdatedHistoryDir(historyDir string) { logging.LogErrorf("read history dir [%s] failed: %s", dir.Name(), err) continue } - if dirInfo.ModTime().Unix() < ago { + + var nameTime int64 + if dirName := dirInfo.Name(); len(dirName) > len("2006-01-02-150405") { + if t, parseErr := time.Parse("2006-01-02-150405", dirName[:len("2006-01-02-150405")]); nil == parseErr { + nameTime = t.Unix() + } + } + + if dirInfo.ModTime().Unix() < ago || (0 != nameTime && nameTime < ago) { removes = append(removes, filepath.Join(historyDir, dir.Name())) } }