(PE-2675) Change the order that filters are applied for events#820
Closed
cprice404 wants to merge 4 commits intopuppetlabs:1.5.3.xfrom
Closed
Conversation
cprice404
commented
Jan 30, 2014
This patch fixes an rspec failure we were having on the terminus due to the recent bump from mocha from 0.14.1 to 1.0.0. Previously mocha seems to have been ignoring private method calls for whatever reason. With the new version of mocha it is throwing exceptions (as it rightly should). This patch removes the use of the `private` declaration and converts all of these methods to be document `@api private` in YARD instead migrating a language enforcement to a documentation enforcement instead. As an aside I noticed that char_encoding.rb had a 3 space indent convention, this has been converted to 2 space as per our standard. Signed-off-by: Ken Barber <ken@bob.sh> Conflicts: Gemfile
When using the `distinct-resources` flag of an event query, the previous behavior was that we would do the filtering of the events *before* we would eliminate duplicate resources. This was not the expected behavior in many cases in the UI; for example, when filtering events based on event status, the desired behavior was to find all of the most recent events for each resource *first*, and then apply the filter to that set of resources. If we did the status filtering first, then we might end up in a state where we found the most recent 'failed' event and showed it in the UI even if there were 'success' events on that resource afterwards. This commit changes the order that the filtering happens in. We now do the `distinct` portion of the query before we do the filtering. However, in order to achieve reasonable performance, we need to at least include timestamp filtering in the `distinct` query; otherwise that portion of the query has to work against the entire table, and becomes prohibitively expensive. Since the existing timestamp filtering can be nested arbitrarily inside of the query (inside of boolean logic, etc.), it was not going to be possible to re-use that to handle the timestamp filtering for the `distinct` part of the query; thus, we had to introduce two new query parameters to go along with `distinct-resources`: `distinct-start-time` and `distinct-end-time`. These are now required when using `distinct-resources`. This functionality is fairly specific to PE and should probably be separated into a PE-specific query endpoint in the future.
Contributor
|
🔴 Test failed. |
Contributor
|
🔴 Test failed. |
Contributor
|
@puppetlabs-jenkins retest this please. |
Contributor
|
🔴 Test failed. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.