From 492ca1692dd1bd1673d4c53138d98ac17cf7afbb Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Thu, 22 Oct 2015 09:01:53 +0000 Subject: [PATCH] Review feedback --- probe/endpoint/conntrack.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/probe/endpoint/conntrack.go b/probe/endpoint/conntrack.go index 45c7a92e7..531e000cb 100644 --- a/probe/endpoint/conntrack.go +++ b/probe/endpoint/conntrack.go @@ -122,6 +122,11 @@ var ConntrackModulePresent = func() bool { } func (c *conntracker) loop() { + // conntrack can sometimes fail with ENOBUFS, when there is a particularly + // high connection rate. In these cases just retry in a loop, so we can + // survive the spike. For sustained loads this degrades nicely, as we + // read the table before starting to handle events - basically degrading to + // polling. for { c.run() c.clearFlows()