Skip to content

Commit 4be35ba

Browse files
craig[bot]wenyihu6
andcommitted
Merge #146024
146024: kvclient/rangefeed: release resource properly for restartActiveRangeFeeds r=stevendanna a=wenyihu6 Previously, resources were not properly released when restartActiveRangeFeeds returned early due to an error, without calling restartActiveRangeFeed on each toRestart rangefeed. This commit fixes the resource leak. Fixes: #129486 Release note: none Co-authored-by: wenyihu6 <[email protected]>
2 parents a83af6f + 1386486 commit 4be35ba

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

pkg/kv/kvclient/kvcoord/dist_sender_mux_rangefeed.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -529,8 +529,12 @@ func (m *rangefeedMuxer) receiveEventsFromNode(
529529
func (m *rangefeedMuxer) restartActiveRangeFeeds(
530530
ctx context.Context, reason error, toRestart []*activeMuxRangeFeed,
531531
) error {
532-
for _, active := range toRestart {
532+
for i, active := range toRestart {
533533
if err := m.restartActiveRangeFeed(ctx, active, reason); err != nil {
534+
// Release all remaining rangefeeds that we won't restart.
535+
for _, remaining := range toRestart[i+1:] {
536+
remaining.release()
537+
}
534538
return err
535539
}
536540
}

0 commit comments

Comments
 (0)