Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android app unable to update asset list from server #9018

Closed
1 of 3 tasks
pantherman594 opened this issue Apr 22, 2024 · 3 comments
Closed
1 of 3 tasks

Android app unable to update asset list from server #9018

pantherman594 opened this issue Apr 22, 2024 · 3 comments

Comments

@pantherman594
Copy link

pantherman594 commented Apr 22, 2024

The bug

The assets on the server are not updating in Android app. I noticed that my recent photos have the "not synced" icons on them in the app, but the backup screen shows that there are no assets that need to be backed up. On the web interface, all the assets that showed "not synced" are indeed there, as well as additional assets that were on the server but not my device.

The OS that Immich Server is running on

Debian 11 LXC on Proxmox 8.1.11 (host running Debian 12)

Version of Immich Server

v1.102.3

Version of Immich Mobile App

v1.102.2 build 135

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

version: "3.8"

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    command: [ "start.sh", "immich" ]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    ports:
      - 2283:3001
      - 8081:8081
    depends_on:
      - redis
      - database
    restart: always

  immich-microservices:
    container_name: immich_microservices
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    command: [ "start.sh", "microservices" ]
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
    env_file:
      - .env
    ports:
      - 8082:8081
    depends_on:
      - redis
      - database
    restart: always

  immich-machine-learning:
    container_name: immich_machine_learning
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - model-cache:/cache
    env_file:
      - .env
    environment:
      - NODE_ENV=production
    restart: always

  redis:
    container_name: immich_redis
    image: redis:6.2-alpine@sha256:70a7a5b641117670beae0d80658430853896b5ef269ccf00d1827427e3263fa3
    restart: always

  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}
      PG_DATA: /var/lib/postgresql/data
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

volumes:
  pgdata:
  model-cache:

Your .env content

DB_HOSTNAME=immich_postgres
DB_USERNAME=[REDACTED]
DB_PASSWORD=[REDACTED]
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich_redis
UPLOAD_LOCATION=/photos/immich
TYPESENSE_API_KEY=[REDACTED]
DISABLE_REVERSE_GEOCODING=false
REVERSE_GEOCODING_PRECISION=3
PUBLIC_LOGIN_PAGE_MESSAGE=
IMMICH_WEB_URL=http://immich-web:3000
IMMICH_SERVER_URL=http://immich-server:3001
IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003
IMMICH_API_URL_EXTERNAL=[REDACTED]
IMMICH_METRICS=true

Reproduction steps

1. Upload image to server from another device
2. Pull down to refresh asset list in Android app
3. Image does not appear in Android app, error in log

Relevant log output

2024-04-22 09:36:21.603445 | SEVERE   | ImmichErrorLogger    | PlatformDispatcher - Catch all | type '_Map<String, dynamic>' is not a subtype of type 'String' in type cast |
#0      _CastListBase.[] (dart:_internal/cast.dart:99)
#1      ListBase.toList (dart:collection/list.dart:225)
#2      AuditDeletesResponseDto.fromJson (package:openapi/model/audit_deletes_response_dto.dart:54)
#3      ApiClient.fromJson (package:openapi/api_client.dart:252)
#4      ApiClient.deserialize (package:openapi/api_client.dart:158)
<asynchronous suspension>
#5      AuditApi.getAuditDeletes (package:openapi/api/audit_api.dart:74)
<asynchronous suspension>
#6      AssetService._getRemoteAssetChanges (package:immich_mobile/shared/services/asset.service.dart:55)
<asynchronous suspension>
#7      SyncService._syncRemoteAssetChanges (package:immich_mobile/shared/services/sync.service.dart:161)
<asynchronous suspension>
#8      SyncService.syncRemoteAssetsToDb.<anonymous closure> (package:immich_mobile/shared/services/sync.service.dart:53)
<asynchronous suspension>
#9      AssetService.refreshRemoteAssets (package:immich_mobile/shared/services/asset.service.dart:43)
<asynchronous suspension>
#10     AssetNotifier.getAllAsset (package:immich_mobile/shared/providers/asset.provider.dart:52)
<asynchronous suspension>
#11     HomePage.build.refreshAssets (package:immich_mobile/modules/home/views/home_page.dart:87)
<asynchronous suspension>
#12     MultiselectGrid.build.wrapLongRunningFun.<anonymous closure> (package:immich_mobile/shared/ui/asset_grid/multiselect_grid.dart:415)
<asynchronous suspension>
#13     RefreshIndicatorState._show.<anonymous closure>.<anonymous closure> (package:flutter/src/material/refresh_indicator.dart:508)
<asynchronous suspension>

Additional information

Not sure if this is relevant but I recently restored (only) the database from a backup when migrating docker storage engines, following the documentation. I ran into the "earth" type issue and included the sed command when restoring.

@alextran1502
Copy link
Contributor

Can you try logout and log back in?

@pantherman594
Copy link
Author

Ah that did it, thanks! Do you know why this happened?

@alextran1502
Copy link
Contributor

There might be a bug in the sync mechanism. We are doing some rework on it.

Ref #8842 #8755

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants