]> git.feebdaed.xyz Git - 0xmirror/quic-go.git/commitdiff
don’t arm connection timer for connection ID retirement (#5449)
authorMarten Seemann <martenseemann@gmail.com>
Thu, 20 Nov 2025 14:24:37 +0000 (22:24 +0800)
committerGitHub <noreply@github.com>
Thu, 20 Nov 2025 14:24:37 +0000 (15:24 +0100)
It should be sufficient to retire connection IDs the next time the run
loops wakes up anyway, e.g. when a packet is received, or when a new
packet is sent.

conn_id_generator.go
conn_id_generator_test.go
connection.go

index c2b354505263f490fe2fad223bba19d97220f811..133932a6a5ab9b00436ed7a2eec0dd17b311b4e8 100644 (file)
@@ -157,13 +157,6 @@ func (m *connIDGenerator) SetHandshakeComplete(connIDExpiry monotime.Time) {
        }
 }
 
-func (m *connIDGenerator) NextRetireTime() monotime.Time {
-       if len(m.connIDsToRetire) == 0 {
-               return 0
-       }
-       return m.connIDsToRetire[0].t
-}
-
 func (m *connIDGenerator) RemoveRetiredConnIDs(now monotime.Time) {
        if len(m.connIDsToRetire) == 0 {
                return
index be531ba9b7a5c3c3c1dacbdff6fbd27c171a552b..9eade628d94418156c38d9a14c1321499952abf7 100644 (file)
@@ -135,14 +135,6 @@ func TestConnIDGeneratorRetiring(t *testing.T) {
                require.NoError(t, g.Retire(uint64(i+1), protocol.ParseConnectionID([]byte{9, 9, 9, 9}), t2))
                retirements[added[i]] = t2
 
-               var nextRetirement monotime.Time
-               for _, r := range retirements {
-                       if nextRetirement.IsZero() || r.Before(nextRetirement) {
-                               nextRetirement = r
-                       }
-               }
-               require.Equal(t, nextRetirement, g.NextRetireTime())
-
                if rand.IntN(2) == 0 {
                        now = now.Add(time.Duration(rand.IntN(500)) * time.Millisecond)
                        g.RemoveRetiredConnIDs(now)
index 64dbc7d21d41ae8143eda031b90eede2bb4a7400..faf9f1101cefb5d98dd919f5dac014556e42a884 100644 (file)
@@ -885,9 +885,6 @@ func (c *Conn) maybeResetTimer() {
                return
        }
 
-       if t := c.connIDGenerator.NextRetireTime(); !t.IsZero() && t.Before(deadline) {
-               deadline = t
-       }
        if !c.pacingDeadline.IsZero() && c.pacingDeadline.Before(deadline) {
                deadline = c.pacingDeadline
        }