Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixing grouped node count for filtered children nodes #1371

Merged
merged 3 commits into from
Apr 28, 2016

Conversation

paulbellamy
Copy link
Contributor

@paulbellamy paulbellamy commented Apr 22, 2016

Fixes #1219, Fixes #1130

Does not fix #815

Filtered children are still shown in the details panel, because otherwise one of them stopping could make the detail panel go empty, when the node disappears, which is slightly odd. But this means that a container image could say "1 container" (if it has 4 stopped and one running), then show all 5 containers in the detail panel, which is also slightly odd.

I'm not really sure about the naming of APITopologyDesc.filteredRenderer, or about having two different fields for this. I was hoping to have just one field, so all the renderers would have the same signature. But, since only some of them need the filters injected, it feels odd to force that requirement on the others.

This will (at the moment) also break memoisation for some of the rendering pipelines. There is an assumption that the map/reduce pipelines survive between requests, but this is no longer the case for all pipelines.

Will squash stuff before merging.

@paulbellamy paulbellamy force-pushed the 1219-grouped-node-counts-2 branch 3 times, most recently from a8525dd to 465aeb0 Compare April 22, 2016 16:40
@paulbellamy
Copy link
Contributor Author

@tomwilkie, PTAL

@tomwilkie
Copy link
Contributor

But this means that a container image could say "1 container" (if it has 4 stopped and one running), then show all 5 containers in the detail panel, which is also slightly odd.

Perhaps we should include the containers state in the details panel child table?

@paulbellamy
Copy link
Contributor Author

state, and whether or not it's a system container...

@paulbellamy paulbellamy force-pushed the 1219-grouped-node-counts-2 branch from 57821d7 to a426ca2 Compare April 25, 2016 11:44
@tomwilkie
Copy link
Contributor

tomwilkie commented Apr 27, 2016

Seem to have lots the stats on the number of containers filtered (on the containers view)

@tomwilkie
Copy link
Contributor

And needs a good squash. Otherwise, LGTM.

@paulbellamy paulbellamy force-pushed the 1219-grouped-node-counts-2 branch 6 times, most recently from 682c02e to 3d2aff5 Compare April 28, 2016 10:42
@tomwilkie
Copy link
Contributor

LGTM filter changes.

Squash of:

* We have to keep all the container hostnames until the end so we can
  count how many we've filtered

* Adding tests for ContainerHostnameRenderer and PodServiceRenderer with
  filters

* Because we filter on image name we need the image name before
  filtering

* Alternative approach to passing decorators.

* Refactor out some of the decorator capture

* Don't memoise decorated calls to Render

* Fixing filtered counts on containers topology

  Tricky, because we need the filters to be silent sometimes (when they're
  in the middle), but not when they're at the top, so we take the "top"
  filter's stats. However, this means we have to compose all
  user-specified filters into a single Filter layer, so we can get all
  stats.

  There are no more Silent filters, as all filters are silent (unless they
  are at the top).

  Additionally, I clarified some of the filters as their usage/terminology
  was inconsistent and confused. Now Filter(IsFoo, ...) *keeps* only nodes
  where IsFoo is true.
@paulbellamy paulbellamy force-pushed the 1219-grouped-node-counts-2 branch from 3d2aff5 to 3d3aed2 Compare April 28, 2016 11:24
@paulbellamy
Copy link
Contributor Author

Squashed, will wait for circle, before merging

@paulbellamy paulbellamy merged commit 64450a4 into master Apr 28, 2016
@paulbellamy paulbellamy deleted the 1219-grouped-node-counts-2 branch April 28, 2016 12:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants