CodeGrade / orca

Grading job server for CS student submissions.
1 stars 1 forks source link

Refactor: Web Server Validations and Queue Operations #43

Closed williams-jack closed 1 year ago

williams-jack commented 1 year ago

Feature/Problem Description

A previously implemented anti-pattern for all redis operations, where calls to redis return a result of [T | null, Error | null] made control flow extremely hard. This PR is mainly focused around correcting this logic.

Changes also focus on implementing the Redis' locking mechanism in the code, as well as allowing multiple connections to the Redis DB when concurrent requests are handled.

Finally, a new orca_key property is added to ensure uniqueness across a job's key and response_url components.

Solution (Changes Made)

williams-jack commented 1 year ago

TODO: add container_response_url to validation schemas once #46 is merged into main.