Add retries to conntracker.ClearEntries()

Signed-off-by: Daman Arora <aroradaman@gmail.com>
This commit is contained in:
Adrian Moisey 2025-01-30 20:09:30 +02:00
parent 90a42e0dc0
commit b6f49d0728
No known key found for this signature in database
GPG Key ID: 41AE4AE32747C7CF

View File

@ -75,7 +75,15 @@ func (ct *conntracker) ClearEntries(ipFamily uint8, filters ...netlink.CustomCon
return 0, nil
}
n, err := ct.handler.ConntrackDeleteFilters(netlink.ConntrackTable, netlink.InetFamily(ipFamily), filters...)
var n uint
var err error
err = retry.OnError(util.MaxAttemptsEINTR, util.ShouldRetryOnEINTR, func() error {
var count uint
count, err = ct.handler.ConntrackDeleteFilters(netlink.ConntrackTable, netlink.InetFamily(ipFamily), filters...)
n += count
return err
})
if err != nil {
return int(n), fmt.Errorf("error deleting conntrack entries, error: %w", err)
}