Skip to content

Latest commit

 

History

History
17 lines (13 loc) · 1.83 KB

PULL_REQUEST_TEMPLATE.md

File metadata and controls

17 lines (13 loc) · 1.83 KB

Bug / Requirement Description

  • Implemented Worker-Specific Task Assignment Capabilities.

Solution description

  • Added default parameter workers_name to store uid of workers in Task.
  • Added variable is_picked_up to keep track of task assignment in Task.
  • Added dictionary queue_map in TaskQueue to keep separate task queue for all workers in case of need, or else it will be stored in default queue.
  • If there is non-empty workers_name given in Task object, means task needs to run by given uid workers only, else it can be run by anyone.
  • Create separate queue for each uid of workers_name & manage it through queue_map.
  • While assigning Task to Worker and popping from queue, check if task is picked up by another worker already or not through Task.is_picked_up variable.
  • If Task.is_picked_up is True then don't assign anything for that pull request, else assign it & mark Task.is_picked_up True.
  • While _handle_taskresults, _decommission_worker, _discard_task, discard_pending_tasks, mark Task.is_picked_up False.

Checklist:

  • Test