A dead lock in DNS response handler #5565
Labels
area/network-policy
Issues or PRs related to network policies.
kind/bug
Categorizes issue or PR as related to a bug.
priority/critical-urgent
Highest priority. Must be actively worked on as someone's top priority right now.
reported-by/end-user
Issues reported by end users.
Describe the bug
It's reported that Pods running a particular Node can't resolve any domains since a time point. antrea-agent shows the following errors:
After investigation, I found a dead lock in
fqdnController.syncDirtyRules
:antrea/pkg/agent/controller/networkpolicy/fqdn.go
Lines 499 to 515 in f43477f
If
dirtyRules
is not empty,f.ruleSyncTracker.subscribe
will try to acquire the same lock another time and will never succeed, then all DNS responses won't be sent out.To Reproduce
I haven't reproduced myself but it should be reproducible by constructing a case that would make the above
dirtyRule
not empty.Versions:
Found in v1.11.3 but perhaps existing in all versions.
The text was updated successfully, but these errors were encountered: