We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a1aecb0 commit a93bc26Copy full SHA for a93bc26
spanner/session.go
@@ -724,6 +724,12 @@ func (p *sessionPool) getLongRunningSessionsLocked() []*sessionHandle {
724
for element != nil {
725
sh := element.Value.(*sessionHandle)
726
sh.mu.Lock()
727
+ if sh.session == nil {
728
+ // sessionHandle has already been recycled/destroyed.
729
+ sh.mu.Unlock()
730
+ element = element.Next()
731
+ continue
732
+ }
733
diff := time.Now().Sub(sh.lastUseTime)
734
if !sh.eligibleForLongRunning && diff.Seconds() >= p.idleTimeThreshold.Seconds() {
735
if (p.ActionOnInactiveTransaction == Warn || p.ActionOnInactiveTransaction == WarnAndClose) && !sh.isSessionLeakLogged {
0 commit comments