storj/satellite/nodeselection
paul cannon 6e46a926bb satellite/nodeselection: expand SelectedNode
In the repair subsystem, it is necessary to acquire several extra
properties of nodes that are holding pieces of things or may be
selected to hold pieces. We need to know if a node is 'online' (the
definition of "online" may change somewhat depending on the situation),
if a node is in the process of graceful exit, and whether a node is
suspended. We can't just filter out nodes with all of these properties,
because sometimes we need to know properties about nodes even when the
nodes are suspended or gracefully exiting.

I thought the best way to do this was to add fields to SelectedNode,
and (to avoid any confusion) arrange for the added fields to be
populated wherever SelectedNode is returned, whether or not the new
fields are necessarily going to be used.

If people would rather I use a separate type from SelectedNode, I can do
that instead.

Change-Id: I7804a0e0a15cfe34c8ff47a227175ea5862a4ebc
2023-08-07 12:44:49 +00:00
..
gen satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
common.go satellite: move satellite/nodeselection/uploadselection => satellite/nodeselection 2023-07-07 10:32:03 +02:00
filter_test.go satellite/{nodeselection,overlay}: use location.Set 2023-07-11 17:16:30 +00:00
filter.go satellite/nodeselection: remove CountryCodeExclude 2023-08-02 09:48:36 +00:00
node.go satellite/nodeselection: expand SelectedNode 2023-08-07 12:44:49 +00:00
primes.go satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
rand_test.go satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
rand.go satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
region.go satellite/{nodeselection,overlay}: use location.Set 2023-07-11 17:16:30 +00:00
selector_test.go satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
selector.go satellite/nodeselection: SelectBySubnet should use placement filters for all nodes 2023-08-04 10:48:15 +02:00
state_test.go satellite/nodeselection: remove stats/size from nodeselection state 2023-08-01 18:29:41 +00:00
state.go satellite/nodeselection: remove stats/size from nodeselection state 2023-08-01 18:29:41 +00:00