immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
51.7k stars 2.74k forks source link

Error while getting remote assets #12232

Closed davisonpc closed 2 months ago

davisonpc commented 2 months ago

The bug

I'm facing an error after updating the immich server.

The iOS app isnt showing images from server only from smartphone.

I tried using Android app but is the same error.

Error:

ApiException 400: HTTP connection failed: POST /sync/full-sync (Inner exception: Connection closed while receiving data) #0 IOClient.send. (package:http/src/io_client.dart:82) #1 Stream.handleError. (dart:async/stream.dart:931) #2 _HandleErrorStream._handleError (dart:async/stream_pipe.dart:269) #3 _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:157) #4 _HttpClientResponse.listen. (dart:_http/http_impl.dart:725) #5 _RootZone.runBinaryGuarded (dart:async/zone.dart:1606) #6 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:384) #7 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:402) #8 _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:306) #9 _ForwardingStreamSubscription._addError (dart:async/stream_pipe.dart:128) #10 _addErrorWithReplacement (dart:async/stream_pipe.dart:176) #11 _HandleErrorStream._handleError (dart:async/stream_pipe.dart:274) #12 _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:157) #13 _RootZone.runBinaryGuarded (dart:async/zone.dart:1606) #14 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:384) #15 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:402) #16 _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:306) #17 _SyncStreamControllerDispatch._sendError (dart:async/stream_controller.dart:788) #18 _StreamController._addError (dart:async/stream_controller.dart:666) #19 _StreamController.addError (dart:async/stream_controller.dart:620) #20 _HttpParser._reportBodyError (dart:_http/http_parser.dart:1201) #21 _HttpParser._onDone (dart:_http/http_parser.dart:899) #22 _RootZone.runGuarded (dart:async/zone.dart:1582) #23 _BufferingStreamSubscription._sendDone.sendDone (dart:async/stream_impl.dart:418) #24 _BufferingStreamSubscription._sendDone (dart:async/stream_impl.dart:428) #25 _BufferingStreamSubscription._close (dart:async/stream_impl.dart:317) #26 _SyncStreamControllerDispatch._sendDone (dart:async/stream_controller.dart:792) #27 _StreamController._closeUnchecked (dart:async/stream_controller.dart:647) #28 _StreamController.close (dart:async/stream_controller.dart:640) #29 _Socket._onError (dart:io-patch/socket_patch.dart:2479) #30 _RootZone.runBinaryGuarded (dart:async/zone.dart:1606) #31 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:384) #32 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:399) #33 _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:306) #34 _SyncStreamControllerDispatch._sendError (dart:async/stream_controller.dart:788) #35 _StreamController._addError (dart:async/stream_controller.dart:666) #36 _StreamController.addError (dart:async/stream_controller.dart:620) #37 new _RawSocket. (dart:io-patch/socket_patch.dart:1955) #38 _RootZone.runBinaryGuarded (dart:async/zone.dart:1606) #39 _RootZone.bindBinaryCallbackGuarded. (dart:async/zone.dart:1638) #40 _NativeSocket.reportError (dart:io-patch/socket_patch.dart:1653) #41 _NativeSocket.multiplex (dart:io-patch/socket_patch.dart:1467) #42 _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184)

From Assetservice

Stacktrace

0 ApiClient.invokeAPI (package:openapi/api_client.dart:125) #1 SyncApi.getFullSyncForUser (package:openapi/api/sync_api.dart:99) #2 AssetService._getRemoteAssets (package:immich_mobile/services/asset.service.dart:126) #3 SyncService._syncRemoteAssetsForUser (package:immich_mobile/services/sync.service.dart:241) #4 SyncService._syncRemoteAssetsFull (package:immich_mobile/services/sync.service.dart:231) #5 SyncService.syncRemoteAssetsToDb. (package:immich_mobile/services/sync.service.dart:56) #6 AssetService.refreshRemoteAssets (package:immich_mobile/services/asset.service.dart:66) #7 AssetNotifier.getAllAsset (package:immich_mobile/providers/asset.provider.dart:54)

The OS that Immich Server is running on

Debian Server

Version of Immich Server

1.113

Version of Immich Mobile App

1.113

Platform with the issue

Your docker-compose.yml content

name: immich
services:
    database:
        cpu_shares: 90
        command:
            - postgres
            - -c
            - shared_preload_libraries=vectors.so
            - -c
            - search_path="", public, vectors
            - -c
            - logging_collector=on
            - -c
            - max_wal_size=2GB
            - -c
            - shared_buffers=512MB
            - -c
            - wal_compression=on
        container_name: immich-postgres
        deploy:
            resources:
                limits:
                    memory: "4112515072"
        environment:
            POSTGRES_DB: immich
            POSTGRES_INITDB_ARGS: --data-checksums
            POSTGRES_PASSWORD: postgres
            POSTGRES_USER: postgres
        hostname: immich-postgres
        healthcheck:
            test:
                - CMD-SHELL
                - pg_isready --dbname='' || exit 1; Chksum="$(psql --dbname='' --username='' --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is "; [ "" = '0' ] || exit 1
            interval: 5m0s
            start_period: 5m0s
            start_interval: 30s
        image: tensorchord/pgvecto-rs:pg14-v0.2.0
        labels:
            icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/icon.png
        networks:
            immich: null
        restart: unless-stopped
        volumes:
            - type: bind
              source: /media/devmon/BAU/onedrive2/immich/immich/pgdata
              target: /var/lib/postgresql/data
              bind:
                create_host_path: true
    immich-machine-learning:
        cpu_shares: 90
        command: []
        container_name: immich-machine-learning
        deploy:
            resources:
                limits:
                    memory: "4112515072"
        environment:
            DB_DATABASE_NAME: immich
            DB_PASSWORD: postgres
            DB_USERNAME: postgres
        hostname: immich-machine-learning
        image: altran1502/immich-machine-learning:release
        labels:
            icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/icon.png
        networks:
            immich: null
        restart: unless-stopped
        volumes:
            - type: bind
              source: /media/devmon/BAU/onedrive2/immich/immich/model-cache
              target: /cache
              bind:
                create_host_path: true
    immich-server:
        cpu_shares: 90
        command: []
        container_name: immich-server
        depends_on:
            database:
                condition: service_started
                required: true
            redis:
                condition: service_started
                required: true
        deploy:
            resources:
                limits:
                    memory: "4112515072"
                reservations:
                    memory: "1073741824"
        environment:
            DB_DATABASE_NAME: immich
            DB_PASSWORD: postgres
            DB_USERNAME: postgres
        hostname: immich-server
        image: altran1502/immich-server:release
        labels:
            icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/icon.png
        networks:
            immich: null
        ports:
            - mode: ingress
              target: 3001
              published: "2283"
              protocol: tcp
        restart: unless-stopped
        volumes:
            - type: bind
              source: /media/devmon/BAU/onedrive2/immich/immich
              target: /usr/src/app/upload
              bind:
                create_host_path: true
            - type: bind
              source: /media/devmon/BAU/onedrive4
              target: /media/devmon/BAU/onedrive4
            - type: bind
              source: /media/devmon/BAU/livraria
              target: /media/devmon/BAU/livraria
    redis:
        cpu_shares: 90
        command: []
        container_name: immich-redis
        deploy:
            resources:
                limits:
                    memory: "4112515072"
        hostname: immich-redis
        healthcheck:
            test:
                - CMD-SHELL
                - redis-cli ping || exit 1
        image: redis:6.2-alpine
        labels:
            icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/icon.png
        networks:
            immich: null
        restart: unless-stopped
        volumes:
            - type: bind
              source: /DATA/AppData/immich/redis
              target: /data
              bind:
                create_host_path: true
networks:
    default:
        name: immich_default
    immich:
        name: immich
x-casaos:
    architectures:
        - amd64
        - arm64
    author: Cp0204
    category: Gallery
    description:
        en_us: immich is a self-hosted photo and video backup solution for iOS and Android. It offers AI-powered features like object detection, people recognition, and location-based search, giving you complete control over your privacy and data.
        zh_cn: immich 是一款适用于 iOS 和 Android 的自托管照片和视频备份解决方案。它提供了由 AI 支持的功能,例如对象检测、人物识别和基于位置的搜索,使您可以完全控制自己的隐私和数据。
    developer: alextran1502
    hostname: ""
    icon: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/icon.png
    index: /
    is_uncontrolled: false
    main: immich-server
    port_map: "2283"
    scheme: http
    screenshot_link:
        - https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/screenshot-1.png
    store_app_id: immich
    tagline:
        en_us: High performance self-hosted photo and video backup solution
        zh_cn: 高性能的自托管照片和视频备份方案
    thumbnail: https://cdn.jsdelivr.net/gh/Cp0204/CasaOS-AppStore-Play@main/Apps/immich/thumbnail.png
    tips:
        before_install:
            en_us: |
                ⚠️ The project is under very active development.
                ⚠️ Expect bugs and breaking changes.
                ⚠️ Do not use the app as the only way to store your photos and videos.
                ⚠️ Always follow 3-2-1 backup plan for your precious photos and videos!
            zh_cn: |
                ⚠️ 本项目正在 非常活跃 地开发中。
                ⚠️ 可能存在 bug 或者随时有重大变更。
                ⚠️ 不要把本软件作为您存储照片或视频的唯一方式。
                ⚠️ 为了您宝贵的照片与视频,请始终遵守 3-2-1 备份方案!
    title:
        custom: ""
        en_us: immich

Your .env content

isnt found

Reproduction steps

  1. Tried updating server (from 1.112 to 1.113). The ios app was 1.113
  2. Error on CasaOS updating. Tried update manual (docker-compose)
  3. Error on docker-compose. I've copied the "docker-compose.yml" of immich and unninstalled the application (from server) without deleting user data.
  4. I've installed again (now 1.113) and server is running ok.
  5. The ios app was facing some bugs when showing images. I logout and login again.
  6. The ios app isnt showing images from server, only albums (empty).
  7. Unninstalled ios app and login again, but the issue stay there.
  8. I used "docker-compose.yml" from backup but the issue stay there.
  9. The web version is running ok. ...

Relevant log output

No response

Additional information

CasaOS Immich web + iOS version Not BigBearOS OrangePi Library: External (186k files) (470GB) Local: HD Red WD 4TB (no Raid)

alextran1502 commented 2 months ago

Is the server on 1.113.0? Is the spinning icon on the bottom of the app still spinning?

Can you try accessing using local ip?

davisonpc commented 2 months ago

Is the server on 1.113.0? Is the spinning icon on the bottom of the app still spinning?

Can you try accessing using local ip?

Is the 1.113.0 version The spinning icon isnt showing (It was spinning but after some minutes it has stopped)

I was facing the issue at local IP (On VPN is the same behavior)

bo0tzz commented 2 months ago

Are you able to access Immich from a browser?

davisonpc commented 2 months ago

Are you able to access Immich from a browser?

Yes. In a browser is running ok.

alextran1502 commented 2 months ago

I suspect something might have happened with your move from CasaOS to the compose file or networking issue.