@@ -58,7 +58,7 @@ type Reporter struct {
5858
5959 conf Config
6060 kvConfig kv.Config
61- cluster * ClusterSeed
61+ cluster ClusterSeed
6262 lastReport time.Time
6363}
6464
@@ -77,11 +77,11 @@ func NewReporter(config Config, kvConfig kv.Config, objectClient phlareobjstore.
7777 return r , nil
7878}
7979
80- func (rep * Reporter ) initLeader (ctx context.Context ) * ClusterSeed {
80+ func (rep * Reporter ) initLeader (ctx context.Context ) ClusterSeed {
8181 kvClient , err := kv .NewClient (rep .kvConfig , JSONCodec , nil , rep .logger )
8282 if err != nil {
8383 level .Info (rep .logger ).Log ("msg" , "failed to create kv client" , "err" , err )
84- return nil
84+ return ClusterSeed {}
8585 }
8686 // Try to become leader via the kv client
8787 backoff := backoff .New (ctx , backoff.Config {
@@ -126,14 +126,14 @@ func (rep *Reporter) initLeader(ctx context.Context) *ClusterSeed {
126126 backoff .Wait ()
127127 continue
128128 }
129- return & seed
129+ return seed
130130 }
131131 backoff .Wait ()
132132 continue
133133 }
134134 return remoteSeed
135135 }
136- return nil
136+ return ClusterSeed {}
137137}
138138
139139// ensureStableKey ensures that the cluster seed is stable for at least 30seconds.
@@ -182,7 +182,7 @@ func (rep *Reporter) init(ctx context.Context) {
182182
183183// fetchSeed fetches the cluster seed from the object store and try until it succeeds.
184184// continueFn allow you to decide if we should continue retrying. Nil means always retry
185- func (rep * Reporter ) fetchSeed (ctx context.Context , continueFn func (err error ) bool ) (* ClusterSeed , error ) {
185+ func (rep * Reporter ) fetchSeed (ctx context.Context , continueFn func (err error ) bool ) (ClusterSeed , error ) {
186186 var (
187187 backoff = backoff .New (ctx , backoff.Config {
188188 MinBackoff : time .Second ,
@@ -208,21 +208,21 @@ func (rep *Reporter) fetchSeed(ctx context.Context, continueFn func(err error) b
208208 backoff .Wait ()
209209 continue
210210 }
211- return nil , err
211+ return ClusterSeed {} , err
212212 }
213213 return seed , nil
214214 }
215- return nil , backoff .Err ()
215+ return ClusterSeed {} , backoff .Err ()
216216}
217217
218218// readSeedFile reads the cluster seed file from the object store.
219- func (rep * Reporter ) readSeedFile (ctx context.Context ) (* ClusterSeed , error ) {
219+ func (rep * Reporter ) readSeedFile (ctx context.Context ) (ClusterSeed , error ) {
220220 reader , err := rep .bucket .Get (ctx , ClusterSeedFileName )
221221 if err != nil {
222- return nil , err
222+ return ClusterSeed {} , err
223223 }
224224 if err != nil {
225- return nil , err
225+ return ClusterSeed {} , err
226226 }
227227 defer func () {
228228 if err := reader .Close (); err != nil {
@@ -231,13 +231,13 @@ func (rep *Reporter) readSeedFile(ctx context.Context) (*ClusterSeed, error) {
231231 }()
232232 data , err := io .ReadAll (reader )
233233 if err != nil {
234- return nil , err
234+ return ClusterSeed {} , err
235235 }
236236 seed , err := JSONCodec .Decode (data )
237237 if err != nil {
238- return nil , err
238+ return ClusterSeed {} , err
239239 }
240- return seed .(* ClusterSeed ), nil
240+ return * ( seed .(* ClusterSeed ) ), nil
241241}
242242
243243// writeSeedFile writes the cluster seed to the object store.
@@ -253,7 +253,7 @@ func (rep *Reporter) writeSeedFile(ctx context.Context, seed ClusterSeed) error
253253func (rep * Reporter ) running (ctx context.Context ) error {
254254 rep .init (ctx )
255255
256- if rep .cluster == nil {
256+ if rep .cluster . UID == "" {
257257 <- ctx .Done ()
258258 if err := ctx .Err (); ! errors .Is (err , context .Canceled ) {
259259 return err
0 commit comments