immich-app / immich

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

New Thumbnails and images are not showing #9079

Closed vipulism closed 2 weeks ago

vipulism commented 2 weeks ago

The bug

Thumbnails and previews for new images are not showing up on the app and web in both places. showing blank image placeholder instead. using Docker on Ubuntu

The OS that Immich Server is running on

Ubuntu, Docker

Version of Immich Server

v1.102.3

Version of Immich Mobile App

v1.102.2

Platform with the issue

Your docker-compose.yml content

name: immich

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
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    ports:
      - 2283:3001
    depends_on:
      - redis
      - database
    restart: always

  immich-microservices:
    container_name: immich_microservices
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/hardware-transcoding
    #   file: hwaccel.transcoding.yml
    #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    command: ['start.sh', 'microservices']
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    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:
      - .env
    restart: always

  redis:
    container_name: immich_redis
    image: registry.hub.docker.com/library/redis:6.2-alpine@sha256:51d6c56749a4243096327e3fb964a48ed92254357108449cb6e23999c37773c5
    restart: always

  database:
    container_name: immich_postgres
    image: registry.hub.docker.com/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

volumes:
  pgdata:
  model-cache:

Your .env content

Using Docker on Ubuntu 22.04

Reproduction steps

whenever a new picture got uploaded from the mobile app (auto sync). blank thumbnails are showing up.
The same with videos also but in the case of videos, on mouseover video preview is playing properly.

Relevant log output

I am using docker for Immich, these logs from the immich_microservices container 

   at async SelectQueryBuilder.loadRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2192:25)
    at async SelectQueryBuilder.executeEntitiesAndRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2040:26)
    at async SelectQueryBuilder.getRawAndEntities (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:684:29)
    at async SelectQueryBuilder.getMany (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:750:25)
    at async paginatedBuilder (/usr/src/app/dist/utils/pagination.js:43:19)
    at async usePagination (/usr/src/app/dist/utils/pagination.js:16:24)
    at async AssetService.handleAssetDeletionCheck (/usr/src/app/dist/services/asset.service.js:323:26)
    at async /usr/src/app/dist/services/job.service.js:147:36
[Nest] 7  - 04/25/2024, 12:00:00 AM   ERROR [JobService] Object:
[Nest] 7  - 04/25/2024, 12:00:00 AM   ERROR [JobService] Unable to run job handler (thumbnailGeneration/queue-generate-thumbnails): QueryFailedError: column AssetEntity.resizePath does not exist
[Nest] 7  - 04/25/2024, 12:00:00 AM   ERROR [JobService] QueryFailedError: column AssetEntity.resizePath does not exist
    at PostgresQueryRunner.query (/usr/src/app/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:219:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SelectQueryBuilder.loadRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2192:25)
    at async SelectQueryBuilder.executeEntitiesAndRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2040:26)
    at async SelectQueryBuilder.getRawAndEntities (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:684:29)
    at async SelectQueryBuilder.getMany (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:750:25)
    at async paginate (/usr/src/app/dist/utils/pagination.js:28:19)
    at async usePagination (/usr/src/app/dist/utils/pagination.js:16:24)
    at async MediaService.handleQueueGenerateThumbnails (/usr/src/app/dist/services/media.service.js:59:26)
    at async /usr/src/app/dist/services/job.service.js:147:36
[Nest] 7  - 04/25/2024, 12:00:00 AM   ERROR [JobService] Object:
{
  "force": false
}
[Nest] 7  - 04/25/2024, 3:24:02 PM     LOG [EventRepository] Initialized websocket server
[Nest] 7  - 04/25/2024, 3:24:02 PM     LOG [SystemConfigService] LogLevel=log (set via system config)
[Nest] 7  - 04/25/2024, 3:24:02 PM     LOG [MetadataRepository] Initializing metadata repository
[Nest] 7  - 04/25/2024, 3:24:02 PM   ERROR [JobService] Unable to run job handler (thumbnailGeneration/queue-generate-thumbnails): QueryFailedError: column asset.resizePath does not exist
[Nest] 7  - 04/25/2024, 3:24:02 PM   ERROR [JobService] QueryFailedError: column asset.resizePath does not exist
    at PostgresQueryRunner.query (/usr/src/app/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:219:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SelectQueryBuilder.loadRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2192:25)
    at async SelectQueryBuilder.executeEntitiesAndRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2040:26)
    at async SelectQueryBuilder.getRawAndEntities (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:684:29)
    at async SelectQueryBuilder.getMany (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:750:25)
    at async paginatedBuilder (/usr/src/app/dist/utils/pagination.js:43:19)
    at async usePagination (/usr/src/app/dist/utils/pagination.js:16:24)
    at async MediaService.handleQueueGenerateThumbnails (/usr/src/app/dist/services/media.service.js:59:26)
    at async /usr/src/app/dist/services/job.service.js:147:36
[Nest] 7  - 04/25/2024, 3:24:02 PM   ERROR [JobService] Object:
{
  "force": true
}
[Nest] 7  - 04/25/2024, 3:24:02 PM     LOG [MetadataService] Initialized local reverse geocoder
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [NestFactory] Starting Nest application...
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] BullModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] OpenTelemetryModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] TypeOrmModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] OpenTelemetryCoreModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] ConfigHostModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] DiscoveryModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] ConfigModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] EventEmitterModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] BullModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] BullModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] TypeOrmCoreModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] TypeOrmModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [InstanceLoader] MicroservicesModule dependencies initialized
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [NestApplication] Nest application successfully started
[Nest] 7  - 04/25/2024, 3:24:03 PM     LOG [ImmichMicroservice] Immich Microservices is listening on http://[::1]:3002 [v1.100.0] [PRODUCTION] 
[Nest] 7  - 04/25/2024, 3:24:51 PM   ERROR [JobService] Unable to run job handler (thumbnailGeneration/queue-generate-thumbnails): QueryFailedError: column AssetEntity.resizePath does not exist
[Nest] 7  - 04/25/2024, 3:24:51 PM   ERROR [JobService] QueryFailedError: column AssetEntity.resizePath does not exist
    at PostgresQueryRunner.query (/usr/src/app/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:219:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SelectQueryBuilder.loadRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2192:25)
    at async SelectQueryBuilder.executeEntitiesAndRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2040:26)
    at async SelectQueryBuilder.getRawAndEntities (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:684:29)
    at async SelectQueryBuilder.getMany (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:750:25)
    at async paginate (/usr/src/app/dist/utils/pagination.js:28:19)
    at async usePagination (/usr/src/app/dist/utils/pagination.js:16:24)
    at async MediaService.handleQueueGenerateThumbnails (/usr/src/app/dist/services/media.service.js:59:26)
    at async /usr/src/app/dist/services/job.service.js:147:36
[Nest] 7  - 04/25/2024, 3:24:51 PM   ERROR [JobService] Object:
{
  "force": false
}
[Nest] 7  - 04/25/2024, 3:25:35 PM   ERROR [JobService] Unable to run job handler (metadataExtraction/metadata-extraction): QueryFailedError: column AssetEntity.resizePath does not exist
[Nest] 7  - 04/25/2024, 3:25:35 PM   ERROR [JobService] QueryFailedError: column AssetEntity.resizePath does not exist
    at PostgresQueryRunner.query (/usr/src/app/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js:219:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SelectQueryBuilder.loadRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2192:25)
    at async SelectQueryBuilder.executeEntitiesAndRawResults (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:2040:26)
    at async SelectQueryBuilder.getRawAndEntities (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:684:29)
    at async SelectQueryBuilder.getMany (/usr/src/app/node_modules/typeorm/query-builder/SelectQueryBuilder.js:750:25)
    at async descriptor.value (/usr/src/app/dist/decorators.js:40:24)
    at async MetadataService.handleMetadataExtraction (/usr/src/app/dist/services/metadata.service.js:169:25)
    at async /usr/src/app/dist/services/job.service.js:147:36
    at async Worker.processJob (/usr/src/app/node_modules/bullmq/dist/cjs/classes/worker.js:394:28)
[Nest] 7  - 04/25/2024, 3:25:35 PM   ERROR [JobService] Object:
{
  "id": "8deeceff-ff2a-4521-bc67-f54e2182617a",
  "source": "upload"
}

![image](https://github.com/immich-app/immich/assets/651404/c8937542-fee3-49d0-9837-5d77f90188d5)

some logs from immich_server container

[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 53e5efdd-548e-479f-a275-51425dc095e1, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset f8d25419-3f92-43b1-a2ff-545f4799855b, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 3651b05d-58aa-48d9-9d43-2b7c5a86b075, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 7b4b9b23-ee66-427f-aa29-4346e1217a26, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 670c8914-65ce-470a-a47b-36c4194b1568, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 5f1c6fa9-55e1-407e-91c0-948ba12db2b9, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 9f986bb0-2f0f-4d52-bc29-6fd0ece5b759, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset e266fc42-1e6a-4587-b9e9-34cca804ea31, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 96d9115b-4760-43b0-bd70-8e9534dba0e3, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:32 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 9140561c-1e69-4375-ab02-b605346b5a46, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:25:37 PM     LOG [EventRepository] Websocket Disconnect: tF8gwTP9TxkYYactAAAV
[Nest] 7  - 04/25/2024, 3:25:37 PM     LOG [EventRepository] Websocket Connect:    fH25OaG18KFmcsLUAAAd
[Nest] 7  - 04/25/2024, 3:25:42 PM    WARN [AssetServiceV1] WebP thumbnail requested but not found for asset 8deeceff-ff2a-4521-bc67-f54e2182617a, falling back to JPEG
[Nest] 7  - 04/25/2024, 3:26:07 PM     LOG [EventRepository] Websocket Disconnect: d_yZBv0l_J_cuue8AAAb
[Nest] 7  - 04/25/2024, 3:40:21 PM     LOG [EventRepository] Websocket Connect:    FuzDgvg_dJy4s04BAAAf
[Nest] 7  - 04/25/2024, 3:40:26 PM     LOG [EventRepository] Websocket Disconnect: FuzDgvg_dJy4s04BAAAf

Additional information

image

Untitled video - Made with Clipchamp

also, the same behavior is there on my Android phone app as well