MCPcopy
hub / github.com/grafana/dskit / ClaimTokens

Method ClaimTokens

ring/model.go:90–104  ·  view source on GitHub ↗

ClaimTokens transfers all the tokens from one ingester to another, returning the claimed token. This method assumes that Ring is in the correct state, 'to' ingester has no tokens anywhere. Tokens list must be sorted properly. If all of this is true, everything will be fine.

(from, to string)

Source from the content-addressed store, hash-verified

88// This method assumes that Ring is in the correct state, 'to' ingester has no tokens anywhere.
89// Tokens list must be sorted properly. If all of this is true, everything will be fine.
90func (d *Desc) ClaimTokens(from, to string) Tokens {
91 var result Tokens
92
93 if fromDesc, found := d.Ingesters[from]; found {
94 result = fromDesc.Tokens
95 fromDesc.Tokens = nil
96 d.Ingesters[from] = fromDesc
97 }
98
99 ing := d.Ingesters[to]
100 ing.Tokens = result
101 d.Ingesters[to] = ing
102
103 return result
104}
105
106// FindIngestersByState returns the list of ingesters in the given state
107func (d *Desc) FindIngestersByState(state InstanceState) []InstanceDesc {

Callers 2

ClaimTokensForMethod · 0.80

Calls

no outgoing calls