Fix for memory expiration and age timer

Signed-off-by: Derek Collison <derek@nats.io>
This commit is contained in:
Derek Collison
2020-06-18 14:02:11 -07:00
parent a13402cd01
commit 95462cde57

View File

@@ -215,11 +215,17 @@ func (ms *memStore) expireMsgs() {
ms.deleteFirstMsgOrPanic()
} else {
if !ok {
ms.ageChk.Stop()
ms.ageChk = nil
if ms.ageChk != nil {
ms.ageChk.Stop()
ms.ageChk = nil
}
} else {
fireIn := time.Duration(sm.ts-now) + ms.cfg.MaxAge
ms.ageChk.Reset(fireIn)
if ms.ageChk != nil {
ms.ageChk.Reset(fireIn)
} else {
ms.ageChk = time.AfterFunc(fireIn, ms.expireMsgs)
}
}
return
}