Skip to content

refactor: split redis_backend/jobs.rs into submodule#96

Merged
pratyush618 merged 1 commit intomasterfrom
refactor/redis-jobs-split
May 1, 2026
Merged

refactor: split redis_backend/jobs.rs into submodule#96
pratyush618 merged 1 commit intomasterfrom
refactor/redis-jobs-split

Conversation

@pratyush618
Copy link
Copy Markdown
Collaborator

Summary

  • Convert flat redis_backend/jobs.rs (1199 lines) into a redis_backend/jobs/ submodule
  • Each submodule holds a partial impl RedisStorage block grouped by concern
  • Mirrors the pattern already used by crates/taskito-core/src/scheduler/
  • Largest submodule: enqueue.rs at 302 lines

What moved where

  • jobs/mod.rs — module declarations + dequeue_score helper (used by enqueue/retry paths)
  • jobs/enqueue.rsenqueue, enqueue_batch, enqueue_unique, validate_dep_ids
  • jobs/dequeue.rsdequeue, dequeue_from
  • jobs/state.rscomplete, fail, retry, cancel_job, request_cancel, is_cancel_requested, mark_cancelled, cascade_cancel, get_dependencies, get_dependents, update_progress
  • jobs/query.rsget_job, list_jobs, list_jobs_filtered, stats, count_running_by_task, stats_by_queue, stats_all_queues
  • jobs/maintenance.rspurge_completed, purge_completed_with_ttl, reap_stale_jobs, expire_pending_jobs, cancel_pending_by_queue, cancel_pending_by_task
  • jobs/errors.rsrecord_error, get_job_errors, purge_job_errors
  • jobs/helpers.rsload_job, get_job_required, save_job_and_move_status, delete_job_fully (private to backend)

Test plan

  • cargo check --workspace
  • cargo check --workspace --features postgres
  • cargo check --workspace --features redis
  • cargo clippy --workspace --features redis
  • cargo test --workspace — all 78 tests pass
  • No public API changes; partial impl blocks aggregate into the same RedisStorage type

Move 1199-line jobs.rs into a folder module split by concern:
enqueue, dequeue, state, query, maintenance, errors, helpers.
Each submodule holds a partial impl block. No behavior changes.
@pratyush618 pratyush618 merged commit 079b41b into master May 1, 2026
19 checks passed
@pratyush618 pratyush618 deleted the refactor/redis-jobs-split branch May 2, 2026 05:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant