Skip to content

Feat:Backend Image Processing Blocks the Single-Worker ProcessPoolExecutor #1183

@akhil06232

Description

@akhil06232

Describe the feature

Heavy processing tasks like AI tagging + face detection + face clustering are all submitted to this single worker. If a user adds a large folder, every subsequent request (sync, AI tagging enable) is queued behind it.Additionally, in
images.py #L105-L137, images are processed one-by-one in a loop — no batching or parallelism.

Add ScreenShots

Proposed Fix:
--Increase max_workers or use a proper async task queue (e.g., Celery, RQ, or even asyncio.to_thread)
--Implement batch inference for YOLO/FaceNet instead of per-image model invocations
--Add progress reporting (SSE or WebSocket) to the frontend

Record

  • I agree to follow this project's Code of Conduct
  • I want to work on this issue

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions