immich icon indicating copy to clipboard operation
immich copied to clipboard

backup "remainder" calculation is wrong

Open rithask opened this issue 1 year ago • 8 comments
trafficstars

The bug

the number of remaining photos to backup is shown wrong. is it because of the hidden/deleted photos in the iOS app? if i selected some unbackuped photos/videos, the remainder still shows 0. is there a workaround?

image

The OS that Immich Server is running on

Ubuntu 22.04.4 LTS

Version of Immich Server

v1.109.2

Version of Immich Mobile App

v1.109.2

Platform with the issue

  • [ ] Server
  • [ ] Web
  • [X] Mobile

Your docker-compose.yml content

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:
      - .env
    ports:
      - 2283:3001
    depends_on:
      - redis
      - database
    restart: always
    networks:
      - common
    environment:
      - VIRTUAL_HOST=immich.neb.rithask.win
      - VIRTUAL_PORT=2283
  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:
      - .env
    restart: always
    networks:
      - common
  redis:
    container_name: immich_redis
    image: redis:6.2-alpine@sha256:d6c2911ac51b289db208767581a5d154544f2b2fe4914ea5056443f62dc6e900
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always
    networks:
      - common
  database:
    container_name: immich_postgres
    image: tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    env_file:
      - .env
    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
    healthcheck:
      test: pg_isready --dbname='${DB_DATABASE_NAME}' || exit 1; Chksum="$$(psql --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1
      interval: 5m
      start_interval: 30s
      start_period: 5m
    command: ["postgres", "-c" ,"shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"]
    restart: always
    networks:
      - common

  backup:
    container_name: immich_db_dumper
    image: prodrigestivill/postgres-backup-local:14
    env_file:
      - .env
    environment:
      POSTGRES_HOST: database
      POSTGRES_CLUSTER: 'TRUE'
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      SCHEDULE: "@daily"
      POSTGRES_EXTRA_OPTS: '--clean --if-exists'
      BACKUP_DIR: /db_dumps
    volumes:
      - ./db_dumps:/db_dumps
    depends_on:
      - database
    networks:
      - common

volumes:
  model-cache: null
networks:
  common:
    external: true

Your .env content

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
UPLOAD_LOCATION=./library

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=main

# Connection secrets for postgres and typesense. You should change these to random passwords
DB_PASSWORD=postgres

# The values below this line do not need to be changed
###################################################################################
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
DB_DATA_LOCATION=./postgres

REDIS_HOSTNAME=immich_redis

Reproduction steps

1. Select an album in iOS photos
2. The remainder shown in wrong
...

Relevant log output

No response

Additional information

No response

rithask avatar Jul 26 '24 02:07 rithask

There is a bug which we haven't tracked down on the cause of this, but all the valid files on your phone should be all uploaded

alextran1502 avatar Jul 26 '24 04:07 alextran1502

What logs can I add to help? Same is occurring for me on one of my Android phones, not the other.

alternativesurfer avatar Aug 15 '24 20:08 alternativesurfer

For me, the remainder stops at a number (not zero). According to the uploading file info, the app seems keep uploading photos. However, the number does not change. And I checked from the web page, the seem uploaded photos do not appear.

Martin-Jia avatar Aug 16 '24 05:08 Martin-Jia

@Martin-Jia I am having the exact same issue.

cruizno avatar Aug 24 '24 07:08 cruizno

@Martin-Jia @cruizno me too. After a clean reinstall on both server and client sides the problem came up again, with the same number of remainder

xpzhang avatar Sep 19 '24 00:09 xpzhang

@AlliotTech reuploading is the symptoms of CloudFlare tunnel limitation or reverse proxy configuration is incorrect. You may try connect through local IP and it should upload all

alextran1502 avatar Sep 26 '24 12:09 alextran1502

@AlliotTech You are missing client_max_body_size 50000M; in your settings.

You can read more here https://immich.app/docs/administration/reverse-proxy

alextran1502 avatar Sep 26 '24 14:09 alextran1502

@AlliotTech You are missing client_max_body_size 50000M; in your settings.

You can read more here https://immich.app/docs/administration/reverse-proxy

Thank you, i found the waf limited the body size.

AlliotTech avatar Sep 27 '24 13:09 AlliotTech

I've been having the same issue for several months and in several versions. Using iOS.

I understand that sync does work, so it's not a big deal. Just wanted to add my "vote" for this :)

martinlarosa avatar Nov 30 '24 11:11 martinlarosa

Anything we can support the tracking of the issue? I have the same false representation, syncing works just fine however. Would be nice though to see the difference in numbers.

exen904 avatar Jan 07 '25 16:01 exen904

@exen904 We found the root cause, it is due to the duplicated count never get updated if the duplicated media is removed from the phone's file system.

So we need to find the way to identify and update that info.

The current workaround is by going to the App Settings > Advanced > Remove Duplicates to clear the database entries and then run the upload process to rematch the info

alextran1502 avatar Jan 07 '25 16:01 alextran1502

I am having the same issue with iOS app v1.130.3. To me it seems like all the photos are accounted for in the count but NOT the movies.

eversf avatar Apr 01 '25 10:04 eversf