Large number of albums cause rendering issues when selected - New Timeline #6585

Open
opened 2026-02-20 04:13:58 -05:00 by deekerman · 1 comment
Owner

Originally created by @EmTeeAge on GitHub (Aug 31, 2025).

Originally assigned to: @mertalev on GitHub.

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

  • Yes

The bug

Hi,

I have an user on Immich with a large number of local albums on an Android device (thousands). The idea is to sync the local albums to Immich as-is. Before the update that introduced the New Timeline, I had to click every single album individually in order to back it up, which was not feasible.

After installing the New Timeline update (and turning the feature on), I used the newly added "Select all" button to add all albums to backup. Unfortunately, the app tries to render all the album names, which causes the behavior seen in the attached video. This also happens on the screen where you select albums, but worse because each album has a box around it. This currently makes me unable to select or deselect any albums since the GUI struggles so much, it basically halts to a stop.

Is there a way to handle this situation using some kind of "Show more" button when detecting more than X number of albums, so it doesn't cause these issues? Or perhaps use a less performance impacting method of selecting albums to backup (some easily searchable list to quickly add/remove albums) instead of rendering all album names at once?

I understand this is a bit of a niche use case and users aren't expected to have so many albums, but I can see this causing issues with much less albums (like 50+).

Thank you!

The OS that Immich Server is running on

Debian 12

Version of Immich Server

v1.140.1

Version of Immich Mobile App

v1.140.1

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

OnePlus 6T

Your docker-compose.yml content

version: "3.8"

#
# WARNING: Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.
#

name: immich

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - stack.env
    ports:
      - 2283:2283
    depends_on:
      - redis
      - database
    restart: always

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

  redis:
    container_name: immich_redis
    image: docker.io/valkey/valkey:8-bookworm@sha256:ff21bc0f8194dc9c105b769aeabf9585fea6a8ed649c0781caeac5cb3c247884
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always

  database:
    container_name: immich_postgres
    image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0-pgvectors0.2.0
    env_file:
      - stack.env
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

volumes:
  pgdata:
  model-cache:

Your .env content

UPLOAD_LOCATION=/data/immich/uploads/
IMMICH_VERSION=release
TYPESENSE_API_KEY=XXXXXXXXXXXXXXXXXXX
DB_PASSWORD=XXXXXXXXXXXXXXXXXXX
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich_redis
LIBRARY_LOCATION=/data/immich/library/
THUMBS_LOCATION=/var/immich/thumbs/
PROFILE_LOCATION=/var/immich/profile/
VIDEO_LOCATION=/data/immich/encoded-video/

Reproduction steps

  1. Create large number of albums on local Androd device with large number of photos and videos
  2. Go the Immich and click Select-all albums for backup
  3. See the GUI struggle with rendering all album names every time you open the backup menu

Relevant log output


Additional information

Image
Originally created by @EmTeeAge on GitHub (Aug 31, 2025). Originally assigned to: @mertalev on GitHub. ### I have searched the existing issues, both open and closed, to make sure this is not a duplicate report. - [x] Yes ### The bug Hi, I have an user on Immich with a large number of local albums on an Android device (thousands). The idea is to sync the local albums to Immich as-is. Before the update that introduced the New Timeline, I had to click every single album individually in order to back it up, which was not feasible. After installing the New Timeline update (and turning the feature on), I used the newly added "Select all" button to add all albums to backup. Unfortunately, the app tries to render all the album names, which causes the behavior seen in the attached video. This also happens on the screen where you select albums, but worse because each album has a box around it. This currently makes me unable to select or deselect any albums since the GUI struggles so much, it basically halts to a stop. Is there a way to handle this situation using some kind of "Show more" button when detecting more than X number of albums, so it doesn't cause these issues? Or perhaps use a less performance impacting method of selecting albums to backup (some easily searchable list to quickly add/remove albums) instead of rendering all album names at once? I understand this is a bit of a niche use case and users aren't expected to have so many albums, but I can see this causing issues with much less albums (like 50+). Thank you! ### The OS that Immich Server is running on Debian 12 ### Version of Immich Server v1.140.1 ### Version of Immich Mobile App v1.140.1 ### Platform with the issue - [ ] Server - [ ] Web - [x] Mobile ### Device make and model OnePlus 6T ### Your docker-compose.yml content ```YAML version: "3.8" # # WARNING: Make sure to use the docker-compose.yml of the current release: # # https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml # # The compose file on main may not be compatible with the latest release. # name: immich services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - stack.env ports: - 2283:2283 depends_on: - redis - database restart: always immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} volumes: - model-cache:/cache env_file: - stack.env restart: always redis: container_name: immich_redis image: docker.io/valkey/valkey:8-bookworm@sha256:ff21bc0f8194dc9c105b769aeabf9585fea6a8ed649c0781caeac5cb3c247884 healthcheck: test: redis-cli ping || exit 1 restart: always database: container_name: immich_postgres image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0-pgvectors0.2.0 env_file: - stack.env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: '--data-checksums' volumes: - pgdata:/var/lib/postgresql/data restart: always volumes: pgdata: model-cache: ``` ### Your .env content ```Shell UPLOAD_LOCATION=/data/immich/uploads/ IMMICH_VERSION=release TYPESENSE_API_KEY=XXXXXXXXXXXXXXXXXXX DB_PASSWORD=XXXXXXXXXXXXXXXXXXX DB_HOSTNAME=immich_postgres DB_USERNAME=postgres DB_DATABASE_NAME=immich REDIS_HOSTNAME=immich_redis LIBRARY_LOCATION=/data/immich/library/ THUMBS_LOCATION=/var/immich/thumbs/ PROFILE_LOCATION=/var/immich/profile/ VIDEO_LOCATION=/data/immich/encoded-video/ ``` ### Reproduction steps 1. Create large number of albums on local Androd device with large number of photos and videos 2. Go the Immich and click Select-all albums for backup 3. See the GUI struggle with rendering all album names every time you open the backup menu ### Relevant log output ```shell ``` ### Additional information <img width="820" height="1776" alt="Image" src="https://github.com/user-attachments/assets/c306d0b1-e9ae-42e8-add3-97a1d08e32ae" />
Author
Owner

@EmTeeAge commented on GitHub (Aug 31, 2025):

For some reason, I'm unable to upload the video here directly to the issue or comment, here's a link at least: https://streamable.com/02kn6p

@EmTeeAge commented on GitHub (Aug 31, 2025): For some reason, I'm unable to upload the video here directly to the issue or comment, here's a link at least: https://streamable.com/02kn6p
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/immich#6585
No description provided.