From 13c206fe05859888e62ebbb85b304921eb1c2d53 Mon Sep 17 00:00:00 2001 From: tidwall Date: Tue, 8 Oct 2019 09:25:50 -0700 Subject: [PATCH] Fixed data race for hooks with ttls issue #497 --- internal/expire/expire.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/expire/expire.go b/internal/expire/expire.go index 899df507..4c040036 100644 --- a/internal/expire/expire.go +++ b/internal/expire/expire.go @@ -41,9 +41,10 @@ func (list *List) bg() { } if now > list.queue.peek().unix { // now.After(list.queue.peek().unix) n := list.queue.pop() + exfn := list.Expired list.mu.Unlock() - if list.Expired != nil { - list.Expired(n.item) + if exfn != nil { + exfn(n.item) } } else { list.mu.Unlock()