Skip to content

Smart search, face detection, etc. jobs don't respect ML disabled status #23281

Description

@LoveShakeDev

I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.

  • Yes

The bug

Per the ML settings:

If disabled, all ML features will be disabled regardless of the below settings.

I had ML disabled, but the enabled toggles within that section were still affecting jobs.

Image

The OS that Immich Server is running on

Mint 22.2

Version of Immich Server

v2.1.0

Version of Immich Mobile App

N/A

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

No response

Your docker-compose.yml content

name: immich

services:
  immich-server:
    container_name: immich_server_data
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      - ${UPLOAD_LOCATION}:/data
      - /etc/localtime:/etc/localtime:ro
      - /volume1/redacted/redacted:/external/redacted:ro
    env_file:
      - .env
    ports:
      - '2284:2283'
    depends_on:
      - redis
      - database
    restart: always
    healthcheck:
      disable: false

  immich-machine-learning:
    container_name: immich_machine_learning_data
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: always
    healthcheck:
      disable: false

  redis:
    container_name: immich_redis_data
    ports:
      - "63791:6379"
    image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always

  database:
    container_name: immich_postgres_data
    image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a
    ports:
      - "54321:5432"
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
    volumes:
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    shm_size: 128mb
    restart: always

volumes:
  model-cache:

Your .env content

UPLOAD_LOCATION=./library
DB_DATA_LOCATION=./postgres
TZ=America/New_York
IMMICH_VERSION=release
DB_PASSWORD=redacted
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

Reproduction steps

  1. Disable machine learning but leave the inner switches enabled
  2. Upload enough new images with low enough job concurrency that thumbnail/metadata jobs don't complete quickly
  3. Eventually, even though the jobs say they are disabled, smart search and facial recognition will queue up items. You can verify this by looking at the postgres database tables afterward.

Workaround: Re-enable ML, disable inner settings, disable ML, save. The jobs still seemingly run, but nothing is put into the database.

Relevant log output

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions