Web browser hangs on all devices #7939

Closed
opened 2026-02-05 13:25:35 +03:00 by OVERLORD · 4 comments
Owner

Originally created by @ifuller1 on GitHub (Nov 27, 2025).

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

  • Yes

The bug

I am happily using the Android app and image services.

However I recently went to load the web version (wanted to upload a photo) and it shows maybe 1 or two images (memories) before hanging.

It does this on every browser flavour I have, including in ignocnito mode.

I don't see any console output, and the browser hangs so bad I can't really debug it in any way.

The OS that Immich Server is running on

Ubuntu LTS inside docker compose

Version of Immich Server

v2.2.1

Version of Immich Mobile App

Most recent but not issue

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

Not android issue

Your docker-compose.yml content

immich-server:
        cpus: 1
        mem_limit: 2g   
        container_name: immich_server
        image: ghcr.io/immich-app/immich-server:release
        volumes:
            - "{{ server_directories.immich_data_upload.host_path }}:/data"
            - "{{ server_directories.immich_data_config.host_path }}:/config"
            - /etc/localtime:/etc/localtime:ro
        environment:
            DB_HOSTNAME: immich_postgres
            DB_USERNAME: "{{ immich_db_user }}"
            DB_PASSWORD: "{{ immich_db_password }}"
            DB_DATABASE_NAME: "{{ immich_db_name }}"
            REDIS_HOSTNAME: immich_redis
            IMMICH_CONFIG_FILE: "/config/immich.json"
            OIDC_ENABLED: "true"
            OIDC_ISSUER_URL: "https://{{ keycloak_domain }}/realms/{{keycloak_realm_name}}"
            OIDC_CLIENT_ID: "immich-docker"
            OIDC_CLIENT_SECRET: "{{ immich_oidc_client_secret }}"
            OIDC_SCOPES: "openid profile email"
            OIDC_BUTTON_TEXT: "Login with Keycloak"
            PUID: {{ app_user_id }}
            PGID: {{ app_group_id }}
        ports:
            - "2283:2283"
        depends_on:
            - immich_redis
            - immich_postgres
        restart: unless-stopped

    immich-machine-learning:
        cpus: 1
        mem_limit: 4g
        container_name: immich_machine_learning
        image: ghcr.io/immich-app/immich-machine-learning:release
        volumes:
            - "{{ server_directories.immich_data_cache.host_path }}:/cache"
        environment:
            DB_HOSTNAME: immich_postgres
            DB_USERNAME: "{{ immich_db_user }}"
            DB_PASSWORD: "{{ immich_db_password }}"
            DB_DATABASE_NAME: "{{ immich_db_name }}"
            REDIS_HOSTNAME: immich_redis
            PUID: {{ app_user_id }}
            PGID: {{ app_group_id }}
        restart: unless-stopped

    immich_redis:
        cpus: 0.5
        mem_limit: 1g
        container_name: immich_redis
        image: docker.io/valkey/valkey:8-bookworm@sha256:fea8b3e67b15729d4bb70589eb03367bab9ad1ee89c876f54327fc7c6e618571
        restart: unless-stopped
        environment:
            PUID: {{ app_user_id }}
            PGID: {{ app_group_id }}

    immich_postgres:
        cpus: 0.5
        mem_limit: 1g
        container_name: immich_postgres
        image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:8d292bdb796aa58bbbaa47fe971c8516f6f57d6a47e7172e62754feb6ed4e7b0
        environment:
            POSTGRES_PASSWORD: "{{ immich_db_password }}"
            POSTGRES_USER: "{{ immich_db_user }}"
            POSTGRES_DB: "{{ immich_db_name }}"
            POSTGRES_INITDB_ARGS: "--data-checksums"
            PUID: {{ app_user_id }}
            PGID: {{ app_group_id }}
        volumes:
            - "{{ server_directories.immich_data_database.host_path }}:/var/lib/postgresql/data"
        restart: unless-stopped

Your .env content

All done via compose?

Reproduction steps

  1. Open immich on the web
  2. Sign in via oauth (the sign in flow works)
  3. Go back to website - it starts to load (I can see 1 or two memories)
  4. Browser hangs, warns about resource usage

Relevant log output

No server error logs - no console logs.

Additional information

No response

Originally created by @ifuller1 on GitHub (Nov 27, 2025). ### I have searched the existing issues, both open and closed, to make sure this is not a duplicate report. - [x] Yes ### The bug I am happily using the Android app and image services. However I recently went to load the web version (wanted to upload a photo) and it shows maybe 1 or two images (memories) before hanging. It does this on every browser flavour I have, including in ignocnito mode. I don't see any console output, and the browser hangs so bad I can't really debug it in any way. ### The OS that Immich Server is running on Ubuntu LTS inside docker compose ### Version of Immich Server v2.2.1 ### Version of Immich Mobile App Most recent but not issue ### Platform with the issue - [ ] Server - [x] Web - [ ] Mobile ### Device make and model Not android issue ### Your docker-compose.yml content ```YAML immich-server: cpus: 1 mem_limit: 2g container_name: immich_server image: ghcr.io/immich-app/immich-server:release volumes: - "{{ server_directories.immich_data_upload.host_path }}:/data" - "{{ server_directories.immich_data_config.host_path }}:/config" - /etc/localtime:/etc/localtime:ro environment: DB_HOSTNAME: immich_postgres DB_USERNAME: "{{ immich_db_user }}" DB_PASSWORD: "{{ immich_db_password }}" DB_DATABASE_NAME: "{{ immich_db_name }}" REDIS_HOSTNAME: immich_redis IMMICH_CONFIG_FILE: "/config/immich.json" OIDC_ENABLED: "true" OIDC_ISSUER_URL: "https://{{ keycloak_domain }}/realms/{{keycloak_realm_name}}" OIDC_CLIENT_ID: "immich-docker" OIDC_CLIENT_SECRET: "{{ immich_oidc_client_secret }}" OIDC_SCOPES: "openid profile email" OIDC_BUTTON_TEXT: "Login with Keycloak" PUID: {{ app_user_id }} PGID: {{ app_group_id }} ports: - "2283:2283" depends_on: - immich_redis - immich_postgres restart: unless-stopped immich-machine-learning: cpus: 1 mem_limit: 4g container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:release volumes: - "{{ server_directories.immich_data_cache.host_path }}:/cache" environment: DB_HOSTNAME: immich_postgres DB_USERNAME: "{{ immich_db_user }}" DB_PASSWORD: "{{ immich_db_password }}" DB_DATABASE_NAME: "{{ immich_db_name }}" REDIS_HOSTNAME: immich_redis PUID: {{ app_user_id }} PGID: {{ app_group_id }} restart: unless-stopped immich_redis: cpus: 0.5 mem_limit: 1g container_name: immich_redis image: docker.io/valkey/valkey:8-bookworm@sha256:fea8b3e67b15729d4bb70589eb03367bab9ad1ee89c876f54327fc7c6e618571 restart: unless-stopped environment: PUID: {{ app_user_id }} PGID: {{ app_group_id }} immich_postgres: cpus: 0.5 mem_limit: 1g container_name: immich_postgres image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:8d292bdb796aa58bbbaa47fe971c8516f6f57d6a47e7172e62754feb6ed4e7b0 environment: POSTGRES_PASSWORD: "{{ immich_db_password }}" POSTGRES_USER: "{{ immich_db_user }}" POSTGRES_DB: "{{ immich_db_name }}" POSTGRES_INITDB_ARGS: "--data-checksums" PUID: {{ app_user_id }} PGID: {{ app_group_id }} volumes: - "{{ server_directories.immich_data_database.host_path }}:/var/lib/postgresql/data" restart: unless-stopped ``` ### Your .env content ```Shell All done via compose? ``` ### Reproduction steps 1. Open immich on the web 2. Sign in via oauth (the sign in flow works) 3. Go back to website - it starts to load (I can see 1 or two memories) 4. Browser hangs, warns about resource usage ### Relevant log output ```shell No server error logs - no console logs. ``` ### Additional information _No response_
Author
Owner

@ifuller1 commented on GitHub (Nov 27, 2025):

I manged to get some logs in Chrome (safari and firefox and brave didn't show anything... although on Chrome it's possible I was already signed in as admin...)

ncaught (in promise) 
initialize @ B4csFmg9.js:1
await in initialize
initialize @ B4csFmg9.js:1
(anonymous) @ B4csFmg9.js:1
es @ RhazAcOO.js:1
(anonymous) @ CRCuCZ3Q.js:1
Pe @ RhazAcOO.js:1
(anonymous) @ CRCuCZ3Q.js:1
wn @ RhazAcOO.js:1
Ue @ RhazAcOO.js:1
xt @ RhazAcOO.js:1
process @ RhazAcOO.js:1
at @ RhazAcOO.js:1
flush @ RhazAcOO.js:1
(anonymous) @ RhazAcOO.js:1
Pt @ RhazAcOO.js:1
zt @ RhazAcOO.js:1
nr @ RhazAcOO.js:1
Zt @ RhazAcOO.js:1
Y @ BM3Xzrlt.js:1
(anonymous) @ BM3Xzrlt.js:1
dt @ BQncOdRE.js:1
M @ BQncOdRE.js:1
await in M
M @ BQncOdRE.js:1
await in M
gn @ BQncOdRE.js:1
await in gn
(anonymous) @ (index):194
Promise.then
(anonymous) @ (index):193
Promise.then
(anonymous) @ (index):187Understand this error
RhazAcOO.js:1 Uncaught 
qn @ RhazAcOO.js:1
sr @ RhazAcOO.js:1
at @ RhazAcOO.js:1
flush @ RhazAcOO.js:1
(anonymous) @ RhazAcOO.js:1
Pt @ RhazAcOO.js:1
zt @ RhazAcOO.js:1
(anonymous) @ RhazAcOO.js:1Understand this error
RhazAcOO.js:1 [Violation] 'message' handler took 3404ms
@ifuller1 commented on GitHub (Nov 27, 2025): I manged to get some logs in Chrome (safari and firefox and brave didn't show anything... although on Chrome it's possible I was already signed in as admin...) ``` ncaught (in promise) initialize @ B4csFmg9.js:1 await in initialize initialize @ B4csFmg9.js:1 (anonymous) @ B4csFmg9.js:1 es @ RhazAcOO.js:1 (anonymous) @ CRCuCZ3Q.js:1 Pe @ RhazAcOO.js:1 (anonymous) @ CRCuCZ3Q.js:1 wn @ RhazAcOO.js:1 Ue @ RhazAcOO.js:1 xt @ RhazAcOO.js:1 process @ RhazAcOO.js:1 at @ RhazAcOO.js:1 flush @ RhazAcOO.js:1 (anonymous) @ RhazAcOO.js:1 Pt @ RhazAcOO.js:1 zt @ RhazAcOO.js:1 nr @ RhazAcOO.js:1 Zt @ RhazAcOO.js:1 Y @ BM3Xzrlt.js:1 (anonymous) @ BM3Xzrlt.js:1 dt @ BQncOdRE.js:1 M @ BQncOdRE.js:1 await in M M @ BQncOdRE.js:1 await in M gn @ BQncOdRE.js:1 await in gn (anonymous) @ (index):194 Promise.then (anonymous) @ (index):193 Promise.then (anonymous) @ (index):187Understand this error RhazAcOO.js:1 Uncaught qn @ RhazAcOO.js:1 sr @ RhazAcOO.js:1 at @ RhazAcOO.js:1 flush @ RhazAcOO.js:1 (anonymous) @ RhazAcOO.js:1 Pt @ RhazAcOO.js:1 zt @ RhazAcOO.js:1 (anonymous) @ RhazAcOO.js:1Understand this error RhazAcOO.js:1 [Violation] 'message' handler took 3404ms ```
Author
Owner

@ifuller1 commented on GitHub (Nov 27, 2025):

Looks to be part of immutable.js and gets the error:

Symbol.toStringTag is read-only

@ifuller1 commented on GitHub (Nov 27, 2025): Looks to be part of immutable.js and gets the error: Symbol.toStringTag is read-only
Author
Owner

@LeLunZ commented on GitHub (Nov 27, 2025):

#24009 you need to update the immich instance to at least v2.3.0, but 2.3.1 is preferred.

@LeLunZ commented on GitHub (Nov 27, 2025): #24009 you need to update the immich instance to at least v2.3.0, but 2.3.1 is preferred.
Author
Owner

@ifuller1 commented on GitHub (Nov 27, 2025):

thanks for this! didn't realise I was admin login

@ifuller1 commented on GitHub (Nov 27, 2025): thanks for this! didn't realise I was admin login
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#7939