9 Commits

Author SHA1 Message Date
Bryan Boreham
24ffaa5ea9 fix: merging active controls on host
Need to do the special-case merge before `n.Latest.Merge()`, otherwise
it picks just one set of controls.

Also modified the test to call `Merge()` where the problem happened.
2021-05-21 09:19:08 +00:00
Bryan Boreham
c6def0a92b refactor: add a generic MergeActiveControls method
Use this instead of hard-coded knowledge about expected
controls and counts when merging host topology.
2021-05-18 14:07:35 +00:00
Bryan Boreham
c03aeb5d43 Move Counters into Latest
The only place Counters are used is in rendering, for the number of
nodes under a topology, so the overhead of holding a unique data
structure in every Node is unwarranted.

Counters are not set in the probe, so we don't need any
backwards-compatibility in report decoding. Similarly they are not set
until after all nodes are merged, so we don't need that logic.
2020-03-10 12:30:05 +00:00
Bryan Boreham
ba656a37f7 Fix WithLatests() de-duplication
The fixup() method was modifying a copy of its input, so you could get
duplicate keys in the output. Change it to return the new slice.

Thankfully this is rare: in most cases WithLatests() is called with
fields that are not duplicates of existing ones.
2018-07-25 11:58:08 +00:00
Jonathan Lange
1020fc5f85 Use test.Diff from common 2016-12-07 11:22:40 +00:00
Jonathan Lange
e8085b01b6 Use 'common' library 2016-12-07 11:22:38 +00:00
Paul Bellamy
1edeb8d190 Removing report.Node.WithID (#1315)
* removing usage of report.Node.WithID

* report.Topology.AddNode can use the node's ID field
2016-04-19 16:48:03 +01:00
Paul Bellamy
5751db2a5a Always merge into the larger ps.Map
Because they are commutative and immutable, we can do this!
2016-01-25 15:25:01 +00:00
Tom Wilkie
e125fb5e88 Add tests for counters 2016-01-24 14:04:08 -08:00