Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Check duplicate external labels for all stores included existed store
When we change the external labels after store has already joined into
storesets that will makes the external labels duplicated

Check duplicate external labels before checking whether the store is exist or not
  • Loading branch information
godliness authored and Chao Ma committed May 17, 2019
commit f2dd970c0352f7efdd14a3667d3d399cb7435281
10 changes: 5 additions & 5 deletions pkg/query/storeset.go
Original file line number Diff line number Diff line change
Expand Up @@ -236,11 +236,6 @@ func (s *StoreSet) Update(ctx context.Context) {

// Add stores that are not yet in s.stores.
for addr, store := range healthyStores {
if _, ok := s.stores[addr]; ok {
s.updateStoreStatus(store, nil)
continue
}

// Check if it has some external labels specified.
// No external labels means strictly store gateway or ruler and it is fine to have access to multiple instances of them.
//
Expand All @@ -252,6 +247,11 @@ func (s *StoreSet) Update(ctx context.Context) {
continue
}

if _, ok := s.stores[addr]; ok {
s.updateStoreStatus(store, nil)
continue
}

s.stores[addr] = store
s.updateStoreStatus(store, nil)
level.Info(s.logger).Log("msg", "adding new store to query storeset", "address", addr)
Expand Down