Android not able to create hash #7367

Closed
opened 2026-02-05 12:58:53 +03:00 by OVERLORD · 2 comments
Owner

Originally created by @robinschneider on GitHub (Sep 28, 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 new to immich, I have immich v1.143.1 running on my Kubernetes cluster, I used it with both an iPhone 13 Pro and a Google Pixel 9 Pro.
On the Google Pixel 9 Pro the app is not able to create a has of a local photo.
I have a stock Pixel with Android 16 and the Security updates from 5th September 2025.
Android app version 1.143.1 build.3017

The troubleshoot of a photo says No checksum available - cannot fetch local assets
Uploading an photo is possible, but it does not know that they match.

Image

The OS that Immich Server is running on

v1.33.1

Version of Immich Server

v1.143.1

Version of Immich Mobile App

1.143.1 build.3017

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

Google Pixel 9 Pro

Your docker-compose.yml content

apiVersion: apps/v1
kind: Deployment
metadata:
  name: immich-server
  namespace: immich
  labels:
    app.kubernetes.io/instance: immich
    app.kubernetes.io/name: server
spec:
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app.kubernetes.io/name: server
      app.kubernetes.io/instance: immich
  template:
    metadata:
      labels:
        app.kubernetes.io/name: server
        app.kubernetes.io/instance: immich
    spec:
      containers:
        - name: immich-server
          image: ghcr.io/immich-app/immich-server:v1.143.1
          imagePullPolicy: IfNotPresent
          env:
            - name: DB_VECTOR_EXTENSION
              value: vectorchord
            - name: DB_DATABASE_NAME
            - name: DB_URL
              valueFrom:
                secretKeyRef:
                  name: pg-app
                  key: uri
            - name: IMMICH_MACHINE_LEARNING_URL
              value: http://immich-machine-learning:3003
            - name: REDIS_HOSTNAME
              value: immich-immich-redis-redis-ha
            - name: REDIS_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: redis-password
                  key: auth
          ports:
            - name: http
              containerPort: 2283
              protocol: TCP
          volumeMounts:
            - name: library
              mountPath: /usr/src/app/upload
          livenessProbe:
            failureThreshold: 3
            httpGet:
              path: /api/server/ping
              port: http
            initialDelaySeconds: 0
            periodSeconds: 10
            timeoutSeconds: 1
          readinessProbe:
            failureThreshold: 3
            httpGet:
              path: /api/server/ping
              port: http
            initialDelaySeconds: 0
            periodSeconds: 10
            timeoutSeconds: 1
          startupProbe:
            failureThreshold: 30
            httpGet:
              path: /api/server/ping
              port: http
            initialDelaySeconds: 0
            periodSeconds: 10
            timeoutSeconds: 1
      volumes:
        - name: library
          persistentVolumeClaim:
            claimName: immich-hdd-pvc

Your .env content

- name: DB_VECTOR_EXTENSION
              value: vectorchord
            - name: DB_DATABASE_NAME
            - name: DB_URL
              valueFrom:
                secretKeyRef:
                  name: pg-app
                  key: uri
            - name: IMMICH_MACHINE_LEARNING_URL
              value: http://immich-machine-learning:3003
            - name: REDIS_HOSTNAME
              value: immich-immich-redis-redis-ha
            - name: REDIS_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: redis-password
                  key: auth

Reproduction steps

  1. Open library
  2. Select on this device
  3. Select Camera folder
  4. Select a photo
  5. Swipe up
  6. Select troubleshoot

Relevant log output

2025-09-28 16:38:43.390195 | info     | BackgroundWorkerBgService | Cleaning up background worker |
2025-09-28 16:38:43.389803 | info     | BackgroundWorkerBgService | Android background processing completed in 6s |
2025-09-28 16:38:43.321577 | info     | BackgroundWorkerBgService | [_handleBackup 4] Resume backup from background |
2025-09-28 16:38:43.320794 | info     | BackgroundWorkerBgService | [_handleBackup 2] Enqueuing assets for backup from the background service |
2025-09-28 16:38:41.397296 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:38:41.397274 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:38:41.389544 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:38:41.318976 | info     | HashService          | Hashing took - 7ms |
2025-09-28 16:38:41.311727 | info     | HashService          | Starting hashing of assets |
2025-09-28 16:38:39.386898 | info     | HashService          | Hashing took - 17ms |
2025-09-28 16:38:39.369640 | info     | HashService          | Starting hashing of assets |
2025-09-28 16:38:39.355273 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:38:39.355257 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:38:39.348951 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:38:39.288755 | info     | SyncApiRepository    | Remote Sync completed in 291ms |
2025-09-28 16:38:38.996788 | info     | SyncStreamService    | Remote sync request for user |
2025-09-28 16:38:37.345523 | info     | SyncApiRepository    | Remote Sync completed in 273ms |
2025-09-28 16:38:37.074686 | info     | DeviceSyncService    | Device sync took - 3ms |
2025-09-28 16:38:37.071922 | info     | SyncStreamService    | Remote sync request for user |
2025-09-28 16:38:36.958759 | info     | DeviceSyncService    | Device sync took - 33ms |
2025-09-28 16:38:36.907259 | info     | BackgroundWorkerBgService | Android background processing started |
2025-09-28 16:37:47.344160 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:37:47.344149 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:37:47.336539 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:37:45.331676 | info     | HashService          | Hashing took - 7ms |
2025-09-28 16:37:45.324207 | info     | HashService          | Starting hashing of assets |
2025-09-28 16:37:45.314880 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:37:45.314864 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:37:45.304466 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:37:43.301176 | info     | SyncApiRepository    | Remote Sync completed in 192ms |
2025-09-28 16:37:43.118284 | info     | DeviceSyncService    | Device sync took - 9ms |
2025-09-28 16:37:43.108466 | info     | SyncStreamService    | Remote sync request for user |
2025-09-28 16:37:42.522717 | info     | AppLifeCycleNotifier | Using server URL: null |
2025-09-28 16:37:11.849911 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:37:11.849891 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:37:11.842429 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:37:09.838944 | info     | HashService          | Hashing took - 6ms |
2025-09-28 16:37:09.832249 | info     | HashService          | Starting hashing of assets |
2025-09-28 16:37:09.820055 | info     | DriftBackupNotifier  | Start a new backup queue |
2025-09-28 16:37:09.820049 | info     | DriftBackupNotifier  | Found 0 tasks |
2025-09-28 16:37:09.817890 | info     | DriftBackupNotifier  | Resuming backup tasks... |
2025-09-28 16:37:07.814166 | info     | DeviceSyncService    | Device sync took - 404ms |
2025-09-28 16:37:07.761210 | info     | SyncApiRepository    | Remote Sync completed in 361ms |
2025-09-28 16:37:07.399872 | info     | SyncStreamService    | Remote sync request for user |
2025-09-28 16:37:06.859412 | info     | AppLifeCycleNotifier | Using server URL: null |
2025-09-28 16:16:31.409495 | info     | HashService          | Hashing took - 12ms |
2025-09-28 16:16:31.396378 | info     | HashService          | Starting hashing of assets |
2025-09-28 16:16:27.989532 | info     | SyncApiRepository    | Remote Sync completed in 174ms |
2025-09-28 16:16:27.814752 | info     | SyncStreamService    | Remote sync request for user |
2025-09-28 16:16:10.104681 | info     | DeviceSyncService    | Device sync took - 9447ms |
2025-09-28 16:16:10.104599 | info     | DeviceSyncService    | Full device sync took - 9447ms |

Additional information

The same issue appears on a different Pixel 9

Originally created by @robinschneider on GitHub (Sep 28, 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 new to immich, I have immich `v1.143.1` running on my Kubernetes cluster, I used it with both an iPhone 13 Pro and a Google Pixel 9 Pro. On the Google Pixel 9 Pro the app is not able to create a has of a local photo. I have a stock Pixel with Android 16 and the Security updates from 5th September 2025. Android app version `1.143.1 build.3017` The troubleshoot of a photo says `No checksum available - cannot fetch local assets` Uploading an photo is possible, but it does not know that they match. <img width="960" height="2142" alt="Image" src="https://github.com/user-attachments/assets/6284b815-7b37-4656-9cdf-f43d559d44b1" /> ### The OS that Immich Server is running on v1.33.1 ### Version of Immich Server v1.143.1 ### Version of Immich Mobile App 1.143.1 build.3017 ### Platform with the issue - [ ] Server - [ ] Web - [x] Mobile ### Device make and model Google Pixel 9 Pro ### Your docker-compose.yml content ```YAML apiVersion: apps/v1 kind: Deployment metadata: name: immich-server namespace: immich labels: app.kubernetes.io/instance: immich app.kubernetes.io/name: server spec: strategy: type: Recreate selector: matchLabels: app.kubernetes.io/name: server app.kubernetes.io/instance: immich template: metadata: labels: app.kubernetes.io/name: server app.kubernetes.io/instance: immich spec: containers: - name: immich-server image: ghcr.io/immich-app/immich-server:v1.143.1 imagePullPolicy: IfNotPresent env: - name: DB_VECTOR_EXTENSION value: vectorchord - name: DB_DATABASE_NAME - name: DB_URL valueFrom: secretKeyRef: name: pg-app key: uri - name: IMMICH_MACHINE_LEARNING_URL value: http://immich-machine-learning:3003 - name: REDIS_HOSTNAME value: immich-immich-redis-redis-ha - name: REDIS_PASSWORD valueFrom: secretKeyRef: name: redis-password key: auth ports: - name: http containerPort: 2283 protocol: TCP volumeMounts: - name: library mountPath: /usr/src/app/upload livenessProbe: failureThreshold: 3 httpGet: path: /api/server/ping port: http initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 readinessProbe: failureThreshold: 3 httpGet: path: /api/server/ping port: http initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 startupProbe: failureThreshold: 30 httpGet: path: /api/server/ping port: http initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 volumes: - name: library persistentVolumeClaim: claimName: immich-hdd-pvc ``` ### Your .env content ```Shell - name: DB_VECTOR_EXTENSION value: vectorchord - name: DB_DATABASE_NAME - name: DB_URL valueFrom: secretKeyRef: name: pg-app key: uri - name: IMMICH_MACHINE_LEARNING_URL value: http://immich-machine-learning:3003 - name: REDIS_HOSTNAME value: immich-immich-redis-redis-ha - name: REDIS_PASSWORD valueFrom: secretKeyRef: name: redis-password key: auth ``` ### Reproduction steps 1. Open library 2. Select on this device 3. Select Camera folder 4. Select a photo 5. Swipe up 6. Select troubleshoot ### Relevant log output ```shell 2025-09-28 16:38:43.390195 | info | BackgroundWorkerBgService | Cleaning up background worker | 2025-09-28 16:38:43.389803 | info | BackgroundWorkerBgService | Android background processing completed in 6s | 2025-09-28 16:38:43.321577 | info | BackgroundWorkerBgService | [_handleBackup 4] Resume backup from background | 2025-09-28 16:38:43.320794 | info | BackgroundWorkerBgService | [_handleBackup 2] Enqueuing assets for backup from the background service | 2025-09-28 16:38:41.397296 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:38:41.397274 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:38:41.389544 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:38:41.318976 | info | HashService | Hashing took - 7ms | 2025-09-28 16:38:41.311727 | info | HashService | Starting hashing of assets | 2025-09-28 16:38:39.386898 | info | HashService | Hashing took - 17ms | 2025-09-28 16:38:39.369640 | info | HashService | Starting hashing of assets | 2025-09-28 16:38:39.355273 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:38:39.355257 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:38:39.348951 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:38:39.288755 | info | SyncApiRepository | Remote Sync completed in 291ms | 2025-09-28 16:38:38.996788 | info | SyncStreamService | Remote sync request for user | 2025-09-28 16:38:37.345523 | info | SyncApiRepository | Remote Sync completed in 273ms | 2025-09-28 16:38:37.074686 | info | DeviceSyncService | Device sync took - 3ms | 2025-09-28 16:38:37.071922 | info | SyncStreamService | Remote sync request for user | 2025-09-28 16:38:36.958759 | info | DeviceSyncService | Device sync took - 33ms | 2025-09-28 16:38:36.907259 | info | BackgroundWorkerBgService | Android background processing started | 2025-09-28 16:37:47.344160 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:37:47.344149 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:37:47.336539 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:37:45.331676 | info | HashService | Hashing took - 7ms | 2025-09-28 16:37:45.324207 | info | HashService | Starting hashing of assets | 2025-09-28 16:37:45.314880 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:37:45.314864 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:37:45.304466 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:37:43.301176 | info | SyncApiRepository | Remote Sync completed in 192ms | 2025-09-28 16:37:43.118284 | info | DeviceSyncService | Device sync took - 9ms | 2025-09-28 16:37:43.108466 | info | SyncStreamService | Remote sync request for user | 2025-09-28 16:37:42.522717 | info | AppLifeCycleNotifier | Using server URL: null | 2025-09-28 16:37:11.849911 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:37:11.849891 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:37:11.842429 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:37:09.838944 | info | HashService | Hashing took - 6ms | 2025-09-28 16:37:09.832249 | info | HashService | Starting hashing of assets | 2025-09-28 16:37:09.820055 | info | DriftBackupNotifier | Start a new backup queue | 2025-09-28 16:37:09.820049 | info | DriftBackupNotifier | Found 0 tasks | 2025-09-28 16:37:09.817890 | info | DriftBackupNotifier | Resuming backup tasks... | 2025-09-28 16:37:07.814166 | info | DeviceSyncService | Device sync took - 404ms | 2025-09-28 16:37:07.761210 | info | SyncApiRepository | Remote Sync completed in 361ms | 2025-09-28 16:37:07.399872 | info | SyncStreamService | Remote sync request for user | 2025-09-28 16:37:06.859412 | info | AppLifeCycleNotifier | Using server URL: null | 2025-09-28 16:16:31.409495 | info | HashService | Hashing took - 12ms | 2025-09-28 16:16:31.396378 | info | HashService | Starting hashing of assets | 2025-09-28 16:16:27.989532 | info | SyncApiRepository | Remote Sync completed in 174ms | 2025-09-28 16:16:27.814752 | info | SyncStreamService | Remote sync request for user | 2025-09-28 16:16:10.104681 | info | DeviceSyncService | Device sync took - 9447ms | 2025-09-28 16:16:10.104599 | info | DeviceSyncService | Full device sync took - 9447ms | ``` ### Additional information The same issue appears on a different Pixel 9
Author
Owner

@shenlong-tanwen commented on GitHub (Sep 28, 2025):

We don’t hash assets unless they are also part of the backups. Do you have the Camera album selected for backups? You don’t necessarily need to enable backups, but the album has to be part of the backup list for the hashing job to process those assets. You can check the number of hashed assets under Settings -> Sync Status

@shenlong-tanwen commented on GitHub (Sep 28, 2025): We don’t hash assets unless they are also part of the backups. Do you have the Camera album selected for backups? You don’t necessarily need to enable backups, but the album has to be part of the backup list for the hashing job to process those assets. You can check the number of hashed assets under Settings -> Sync Status
Author
Owner

@robinschneider commented on GitHub (Sep 29, 2025):

We don’t hash assets unless they are also part of the backups. Do you have the Camera album selected for backups? You don’t necessarily need to enable backups, but the album has to be part of the backup list for the hashing job to process those assets. You can check the number of hashed assets under Settings -> Sync Status

I did not enable backups for the camera folder at that point.
Thank you for explanation, will close the issue, now that I know how it works.

@robinschneider commented on GitHub (Sep 29, 2025): > We don’t hash assets unless they are also part of the backups. Do you have the Camera album selected for backups? You don’t necessarily need to enable backups, but the album has to be part of the backup list for the hashing job to process those assets. You can check the number of hashed assets under Settings -> Sync Status I did not enable backups for the camera folder at that point. Thank you for explanation, will close the issue, now that I know how it works.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#7367