Skip to content

Conversation

@zli
Copy link
Contributor

@zli zli commented Dec 14, 2015

No description provided.

@johnelse
Copy link
Contributor

Code looks sensible; the comment above could do with an update so that it reflects the new behaviour :-)

@simonjbeaumont
Copy link
Contributor

Ignore my last (deleted) comment bit early and read the diff the wrong way around.

With the current implementation, perfmon's actual idle intervals are between
(defined_value - some_dither) and (defined_value + some_dither). It means that
there are close to 50% cases where the actual idle/waiting periods are smaller
than the defined value.

This triggered an edge cases on alarm generation. When the alarm inhibite
period is the same as perfmon's defined interval (i.e. the 5 min minimum),
there are good chances that many alarms would be deferred until the next
iteration as the inhibit period since last alarm has not fully expired (even
though quite close). In cases where the same alarm should be generated
continuously (at each iteration), the proportion of missing alarms would appear
to be very high.

This change makes sure that the actual waiting interval of perfmon covers at
least the defined value.

Signed-off-by: Zheng Li <[email protected]>
@zli
Copy link
Contributor Author

zli commented Dec 14, 2015

Updated wrt @johnelse's review comment, good catch!

@johnelse
Copy link
Contributor

Looks good, thanks! Ready to go in once we've unfrozen the staging branch.

johnelse added a commit that referenced this pull request Dec 16, 2015
CA-189076: Make sure perfmon wait at least the defined interval
@johnelse johnelse merged commit cabcb51 into xapi-project:master Dec 16, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants