immich icon indicating copy to clipboard operation
immich copied to clipboard

Immich autobackup fills up iPhone System Data

Open sevvlor opened this issue 1 year ago • 11 comments

The bug

The Immich backup feature that allows photos to be backed up to the remote server causes the system data on my iPhone 15 Pro Max with iOS 17.6.1 to be filled up completely. This causes the iPhone to notify me with "storage full" notifications.

  • Uninstalling the Immich iOS app clears the system data.
  • Reinstalling the app with the backup disabled does not cause the System Data to be filled.
  • The System Data does not get cleared after a day/hour/week/timeframe.

Image describes the System Data that is filled. IMG_1877

The OS that Immich Server is running on

Debian 12

Version of Immich Server

1.114.0

Version of Immich Mobile App

1.114.0 build.173

Platform with the issue

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

Your docker-compose.yml content

#
# 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}
    # extends:
    #   file: hwaccel.transcoding.yml
    #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    volumes:
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - stack.env
    ports:
      - 2283:3001
    depends_on:
      - redis
      - database
    restart: always

  immich-machine-learning:
    container_name: immich_machine_learning
    # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    #   file: hwaccel.ml.yml
    #   service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    volumes:
      - model-cache:/cache
    env_file:
      - stack.env
    restart: always

  redis:
    container_name: immich_redis
    image: docker.io/redis:6.2-alpine@sha256:e3b17ba9479deec4b7d1eeec1548a253acc5374d68d3b27937fcfe4df8d18c7e
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always

  database:
    container_name: immich_postgres
    image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
    volumes:
      # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    healthcheck:
      test: pg_isready --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' || 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

volumes:
  model-cache:

Your .env content

UPLOAD_LOCATION=/immich/photos
DB_DATA_LOCATION=/immich/postgres
IMMICH_VERSION=release
DB_PASSWORD=hunter2
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

Reproduction steps

  1. Enable or run the backup functionality
  2. See the System Data that's being filled

Relevant log output

No response

Additional information

No response

sevvlor avatar Sep 12 '24 12:09 sevvlor

Can you help me check how much data/document storage does the app use?

alextran1502 avatar Sep 12 '24 12:09 alextran1502

Can you help me check how much data/document storage does the app use?

It's currently using 35,2MB for documents and data. If you want I can re-enable the backup functionality and report back.

Edit: I have granted it access to the photo library and it shot up to 11GB and is increasing.

IMG_1878

sevvlor avatar Sep 12 '24 12:09 sevvlor

@sevvlor Thanks, this is indeed an issue when the size inflated that much. Just to confirm that you are only seeing the size increase when running backup, correct?

  • How many photos/videos do you have on your phone?
  • How many assets do you have on your Immich server?

alextran1502 avatar Sep 13 '24 14:09 alextran1502

It happened again. 118G of storage that's listed as System Data. To answer your question:

on my phone: 15772 photos and 520 videos: 16292 total on Immich: 20152 photos and 687 videos : 20839 total

Edit: I only see it when its backing up or when the feature is enabled. The data does not get removed after the backup has finished or gets turned off.

This graph also shows something interesting. Around 12 the storage gets filled rapidly. Bear in mind that the phone checks in every few hours so it might've taken an hour to fill.

1284575607484710928

sevvlor avatar Sep 14 '24 17:09 sevvlor

Are you using iCloud to store your media there? All 16292 items

alextran1502 avatar Sep 15 '24 03:09 alextran1502

@alextran1502 yes, I am.

sevvlor avatar Sep 15 '24 17:09 sevvlor

Came here to open an issue related to iPhone storage and found this one. I'm having the same issue but in my case the space is allocated to the Immich app, not the System Data: IMG_6813

A bit of context... I have around 6.5k images/videos on my phone, all backed up on iCloud. On the Immich app, I've selected the Recents (All) as the backup album but haven't started the backup. The issue seems to happen while indexing the assets from the selected album, which btw, takes a lot of time! If I don't select any backup album, the storage remains low. I've reinstalled the app several times and the issue remains.

This is happening on an iPhone 14 Pro, running iOS 18.0. As for Immich, I'm using server v1.116.2 and app v1.116.1 build 177.

Not sure if it helps but here are the app logs (the album names were redacted): Immich_log_2024-09-30T22:53:46.822743.log

hugoduraes avatar Oct 01 '24 08:10 hugoduraes

I have exactly the same problems... (50k iPhone video/pictures mixed) and also use iCloud in parallel.

For me it is 19.06 GB that Immich uses...

dennisoderwald avatar Oct 03 '24 21:10 dennisoderwald

@alextran1502 any hint on what may be causing the issue? I've just tried this again with Immich v1.119 and the problem remains.

hugoduraes avatar Nov 02 '24 00:11 hugoduraes

@hugoduraes I think when the app upload the iCloud asset, the file is first download to the device before it can get upload to the server, however that downloaded content is now staying on the device

alextran1502 avatar Nov 02 '24 01:11 alextran1502

@alextran1502 If that was the case, the occupied space would be assigned to Photos and not Immich, no?

hugoduraes avatar Nov 02 '24 09:11 hugoduraes

@alextran1502 If that was the case, the occupied space would be assigned to Photos and not Immich, no?

No, the library the app uses downloads ("caches") assets into the app's own storage. It seems we need to explicitly delete them afterwards.

mertalev avatar Dec 19 '24 01:12 mertalev

Same issue here, 50k mixed, around 40Gb of storage, stoped backing up because storage went full.

VincenzoKoestler avatar Jan 22 '25 08:01 VincenzoKoestler

Same issue on my wife's iphone. No problems on my android device. Just commenting to follow up if someone finds a solution for this. (Immich v1.131.3)

Smokedsalmon93 avatar Apr 04 '25 08:04 Smokedsalmon93

I didn't take screenshots, but immich app on my iphone was using 93GB.

I use immich app to backup my icloud photos and videos.

I ticked the box to prefer loading remote thumbnails and now immich is just 200MB.

Can't say if this is "solved" or even the same issue reported above, but I just recovered 93GB from immich...

2600box avatar Jun 04 '25 15:06 2600box

Hi, same problem here: I have 25k photos on my iCloud and the iPhone has the Optimzed storage option ON. The app (using the 1.136.0 beta) is hashing the assets and doing it, it's downloading all my media from iCloud (correctly). The problem is that now Immich data takes 65GB. Is there any way to delete these data without uninstalling the app (which would restart the hashing again) ? Thank you so much

richibrics avatar Jul 28 '25 11:07 richibrics

I'm also experiencing really high storage usage by Immich when switching to the beta timeline and backing up. It downloads every asset from iCloud and tries to hash them, but it doesn't seem to clear it once it's done. I see the storage used by Immich, not System Data.

I can confirm this only happens on the beta timeline, not the old timeline.

image

tjhorner avatar Jul 28 '25 23:07 tjhorner

Could not try this with the stable app version since I set up it to exclude from backup a very big album with old photos so iCloud Photos taken into account during backup were a few (and this can't be set in the new beta).

@tjhorner since this storage issue is beta related, should we open a new issue ?

richibrics avatar Jul 29 '25 04:07 richibrics

@richibrics yes, opening a new issue sounds like a good idea. Feel free to open it if you'd like, otherwise I can do so in the morning

tjhorner avatar Jul 29 '25 06:07 tjhorner

I'm also experiencing really high storage usage by Immich when switching to the beta timeline and backing up. It downloads every asset from iCloud and tries to hash them, but it doesn't seem to clear it once it's done. I see the storage used by Immich, not System Data.

I can confirm this only happens on the beta timeline, not the old timeline.

image

I have similar experiences, my immich filled up 150GB on my iPhone. every App is screaming"storage is full"

xiaosongz avatar Jul 29 '25 13:07 xiaosongz

@richibrics I created #20408 to track the beta issue

tjhorner avatar Jul 29 '25 14:07 tjhorner

I've also experienced that yesterday but in my case Immich used whole free storage (I'm talking about 80+ gigs.

Only thing that I've enabled is automatic backup.

toczke avatar Oct 17 '25 05:10 toczke

I'm backing up ~25k photos from icloud. Immich was using 144GB. After using @2600box's trick of enabling "prefer remote images", Immich's storage usage dropped to 11GB and backups started running like usual again.

QuixThe2nd avatar Oct 22 '25 08:10 QuixThe2nd

Are there any news regarding this problem?

Om3gaOfficial avatar Nov 11 '25 14:11 Om3gaOfficial