You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Goroutine leak in RegisterView causes memory exhaustion in long-running systems #1318
The RegisterView launches a goroutine that never terminates if public parameters are unavailable or context is cancelled, causing memory leaks in production.
for {
pp:=tms.PublicParametersManager().PublicParameters()
ifpp==nil {
logger.Debugf("public parameters not yet available, wait...")
time.Sleep(500*time.Millisecond)
continue
}
logger.Debugf("public parameters available, set certification service...")
iferr:=r.startCertificationService(context, tms, pp); err!=nil {
logger.Errorf("failed to start certification service [%s]", err)
}
break
}
}()
Problems:
No timeout - runs forever if parameters never arrive
No context cancellation check - ignores context.Context().Done()
No cleanup mechanism - cannot be stopped once started
Activity