Skip to content

Commit

Permalink
Add get_sizes_for_queues_and_states
Browse files Browse the repository at this point in the history
  • Loading branch information
thomasst committed Jul 17, 2024
1 parent ede958a commit eb03e65
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions tasktiger/tasktiger.py
Original file line number Diff line number Diff line change
Expand Up @@ -489,6 +489,23 @@ def get_queue_sizes(self, queue: str) -> Dict[str, int]:
results = pipeline.execute()
return dict(zip(states, results))

def get_sizes_for_queues_and_states(
self, queues_and_states: List[Tuple[str, str]]
) -> List[int]:
"""
Get the sizes for the specific queues and states.
queues_and_states: List of tuples (queue_name, state).
Returns a list of queue sizes in the order of the passed
queues_and_states.
"""
pipeline = self.connection.pipeline()
for queue, state in queues_and_states:
pipeline.zcard(self._key(state, queue))
results = pipeline.execute()
return results

def get_total_queue_size(self, queue: str) -> int:
"""Get total queue size for QUEUED, SCHEDULED, and ACTIVE states."""

Expand Down

0 comments on commit eb03e65

Please sign in to comment.