mirror of
https://github.com/tailscale/tailscale.git
synced 2025-12-02 07:52:05 +01:00
tka: don't panic if no clock set in tka.Mem
This is causing confusing panics in tailscale/corp#34485. We'll keep using the tka.ChonkMem constructor as much as we can, but don't panic if you create a tka.Mem directly -- we know what the sensible thing is. Updates #cleanup Signed-off-by: Alex Chan <alexc@tailscale.com> Change-Id: I49309f5f403fc26ce4f9a6cf0edc8eddf6a6f3a4
This commit is contained in:
parent
c679aaba32
commit
ce95bc77fb
@ -193,7 +193,7 @@ updateLoop:
|
||||
for _, aum := range updates {
|
||||
aumHash := aum.Hash()
|
||||
c.aums[aumHash] = aum
|
||||
c.commitTimes[aumHash] = c.clock.Now()
|
||||
c.commitTimes[aumHash] = c.now()
|
||||
|
||||
parent, ok := aum.Parent()
|
||||
if ok {
|
||||
@ -209,6 +209,16 @@ updateLoop:
|
||||
return nil
|
||||
}
|
||||
|
||||
// now returns the current time, optionally using the overridden
|
||||
// clock if set.
|
||||
func (c *Mem) now() time.Time {
|
||||
if c.clock == nil {
|
||||
return time.Now()
|
||||
} else {
|
||||
return c.clock.Now()
|
||||
}
|
||||
}
|
||||
|
||||
// RemoveAll permanently and completely clears the TKA state.
|
||||
func (c *Mem) RemoveAll() error {
|
||||
c.mu.Lock()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user