MCPcopy Create free account
hub / github.com/cortexproject/cortex / ScanUsers

Method ScanUsers

pkg/util/users/scanner.go:186–228  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

184}
185
186func (s *shardedScanner) ScanUsers(ctx context.Context) ([]string, []string, []string, error) {
187 baseActiveUsers, baseDeletingUsers, baseDeletedUsers, err := s.scanner.ScanUsers(ctx)
188 if err != nil {
189 return nil, nil, nil, err
190 }
191
192 activeUsers := make([]string, 0, len(baseActiveUsers))
193 deletingUsers := make([]string, 0, len(baseDeletingUsers))
194 deletedUsers := make([]string, 0, len(baseDeletedUsers))
195
196 for _, userID := range baseActiveUsers {
197 // Filter out users not owned by this instance.
198 if owned, err := s.isOwned(userID); err != nil {
199 level.Warn(s.logger).Log("msg", "unable to check if user is owned by this shard", "user", userID, "err", err)
200 continue
201 } else if !owned {
202 continue
203 }
204 activeUsers = append(activeUsers, userID)
205 }
206 for _, userID := range baseDeletingUsers {
207 // Filter out users not owned by this instance.
208 if owned, err := s.isOwned(userID); err != nil {
209 level.Warn(s.logger).Log("msg", "unable to check if user is owned by this shard", "user", userID, "err", err)
210 continue
211 } else if !owned {
212 continue
213 }
214 deletingUsers = append(deletingUsers, userID)
215 }
216 for _, userID := range baseDeletedUsers {
217 // Filter out users not owned by this instance.
218 if owned, err := s.isOwned(userID); err != nil {
219 level.Warn(s.logger).Log("msg", "unable to check if user is owned by this shard", "user", userID, "err", err)
220 continue
221 } else if !owned {
222 continue
223 }
224 deletedUsers = append(deletedUsers, userID)
225 }
226
227 return activeUsers, deletingUsers, deletedUsers, nil
228}

Callers 1

Calls 2

ScanUsersMethod · 0.65
LogMethod · 0.45

Tested by 1