MCPcopy Create free account
hub / github.com/devaccuracy/ledgerforge / resolveQueueNames

Function resolveQueueNames

tests/loadtest/tools/queue_benchmark.go:280–311  ·  view source on GitHub ↗
(inspector *asynq.Inspector, cfg benchmarkConfig)

Source from the content-addressed store, hash-verified

278}
279
280func resolveQueueNames(inspector *asynq.Inspector, cfg benchmarkConfig) ([]string, error) {
281 names := make(map[string]struct{})
282
283 for _, raw := range strings.Split(cfg.queueNames, ",") {
284 name := strings.TrimSpace(raw)
285 if name != "" {
286 names[name] = struct{}{}
287 }
288 }
289
290 prefixes := configuredPrefixes(cfg)
291 if len(prefixes) > 0 {
292 all, err := inspector.Queues()
293 if err != nil {
294 return nil, err
295 }
296 for _, name := range all {
297 for _, prefix := range prefixes {
298 if strings.HasPrefix(name, prefix) {
299 names[name] = struct{}{}
300 break
301 }
302 }
303 }
304 }
305
306 resolved := make([]string, 0, len(names))
307 for name := range names {
308 resolved = append(resolved, name)
309 }
310 return resolved, nil
311}
312
313func configuredPrefixes(cfg benchmarkConfig) []string {
314 prefixSet := make(map[string]struct{})

Callers 1

takeSnapshotFunction · 0.85

Calls 1

configuredPrefixesFunction · 0.85

Tested by

no test coverage detected