[BUG] Change feature photo #1062

Closed
opened 2026-02-05 00:17:05 +03:00 by OVERLORD · 1 comment
Owner

Originally created by @ckocyigit on GitHub (Jul 5, 2023).

The bug

Hello,

I tried this new feature today after updating since I wanted to change some thumbnails which were really random :)

After pressing the "Change feature photo" Button within the person context and selecting a picture it just resets the site but does not change anything.

Server logs:

[Nest] 1082  - 07/05/2023, 6:27:23 PM   ERROR [JobService] Unable to run job handler: Error: Expected integer for width but received -2 of type number
[Nest] 1082  - 07/05/2023, 6:27:23 PM   ERROR [JobService] Error: Expected integer for width but received -2 of type number
    at Object.invalidParameterError (/app/immich/server/node_modules/sharp/lib/is.js:124:10)
    at Sharp.<anonymous> (/app/immich/server/node_modules/sharp/lib/resize.js:442:16)
    at Array.forEach (<anonymous>)
    at Sharp.extract (/app/immich/server/node_modules/sharp/lib/resize.js:437:38)
    at MediaRepository.crop (/app/immich/server/dist/infra/repositories/media.repository.js:15:14)
    at FacialRecognitionService.handleGenerateFaceThumbnail (/app/immich/server/dist/domain/facial-recognition/facial-recognition.services.js:149:58)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async /app/immich/server/dist/domain/job/job.service.js:103:37
    at async Worker.processJob (/app/immich/server/node_modules/bullmq/dist/cjs/classes/worker.js:342:28)
    at async Worker.retryIfFailed (/app/immich/server/node_modules/bullmq/dist/cjs/classes/worker.js:525:24)
[Nest] 1082  - 07/05/2023, 6:27:23 PM   ERROR [JobService] Object:
{
  "assetId": "5887b317-45ff-4c4d-bf27-f55e123debdb",
  "personId": "d640c660-f0d2-4227-b1a8-bddce7ecabdf",
  "boundingBox": {
    "x1": 0,
    "x2": 0,
    "y1": 0,
    "y2": 0
  },
  "imageHeight": 0,
  "imageWidth": 0
}

I do not know what edge case causes this bug to offer additional information but I would maybe add the dimensions of the picture :)

20230315_145129_EEF873A2.jpg
3 MP
2048 x 1536
417,2 KiB

I would gladly help with additional information if needed.

The OS that Immich Server is running on

Unraid 6.12.0

Version of Immich Server

v1.66.1

Version of Immich Mobile App

nAn

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

Im not running compose.

I can post the XML though:

<?xml version="1.0"?>
<Container version="2">
  <Name>immich</Name>
  <Repository>ghcr.io/imagegenius/immich</Repository>
  <Registry>https://github.com/orgs/imagegenius/packages/container/package/immich</Registry>
  <Network>dockernet</Network>
  <MyIP/>
  <Shell>bash</Shell>
  <Privileged>false</Privileged>
  <Support>https://github.com/imagegenius/docker-immich/issues/new/choose</Support>
  <Project>https://immich.app/</Project>
  <Overview>Immich is a high performance self-hosted photo and video backup solution.</Overview>
  <Category>Backup: Cloud: MediaApp:Photos</Category>
  <WebUI>http://[IP]:[PORT:8080]</WebUI>
  <TemplateURL>https://raw.githubusercontent.com/imagegenius/templates/master/unraid/immich.xml</TemplateURL>
  <Icon>https://raw.githubusercontent.com/imagegenius/templates/main/unraid/img/immich.png</Icon>
  <ExtraParams/>
  <PostArgs/>
  <CPUset/>
  <DateInstalled>1688574847</DateInstalled>
  <DonateText/>
  <DonateLink/>
  <Requires>&amp;lt;br&amp;gt;PostgreSQL 14, Redis&amp;lt;br&amp;gt;This container requires an external application to be run separately.&amp;lt;br&amp;gt;You can also use docker-mods to start postgres and redis within the container:&amp;lt;br&amp;gt;- Redis: `DOCKER_MODS=imagegenius/mods:universal-redis` - **Set `REDIS_HOSTNAME` to `localhost`.**&amp;lt;br&amp;gt;- PostgreSQL: `DOCKER_MODS=imagegenius/mods:universal-postgres` - **Set `DB_HOSTNAME` to `localhost` and set `DB_USERNAME`, `DB_PASSWORD`, and `DB_DATABASE_NAME` to `postgres`.**&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;If you want to use both, set `DOCKER_MODS` to `imagegenius/mods:universal-redis|imagegenius/mods:universal-postgres`.&amp;lt;br&amp;gt;See the https://github.com/imagegenius/docker-immich for more information&amp;lt;br&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;</Requires>
  <Config Name="WebUI" Target="8080" Default="8080" Mode="tcp" Description="WebUI Port" Type="Port" Display="always" Required="true" Mask="false">5884</Config>
  <Config Name="Path: /photos" Target="/photos" Default="" Mode="rw" Description="Contains all the photos uploaded to Immich" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/immich</Config>
  <Config Name="Path: /config/transformers" Target="/config/transformers" Default="" Mode="rw" Description="Store the Transformers cache elsewhere (~800MB)" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/container/immich/transform</Config>
  <Config Name="DB_HOSTNAME" Target="DB_HOSTNAME" Default="192.168.1.x" Mode="{3}" Description="PostgreSQL Host" Type="Variable" Display="always" Required="true" Mask="false">postgresql15</Config>
  <Config Name="DB_USERNAME" Target="DB_USERNAME" Default="postgres" Mode="{3}" Description="PostgreSQL Username" Type="Variable" Display="always" Required="true" Mask="false">postgres</Config>
  <Config Name="DB_PASSWORD" Target="DB_PASSWORD" Default="postgres" Mode="{3}" Description="PostgreSQL Password" Type="Variable" Display="always" Required="true" Mask="true">**********</Config>
  <Config Name="DB_DATABASE_NAME" Target="DB_DATABASE_NAME" Default="immich" Mode="{3}" Description="PostgreSQL Database Name" Type="Variable" Display="always" Required="true" Mask="false">immich</Config>
  <Config Name="REDIS_HOSTNAME" Target="REDIS_HOSTNAME" Default="192.168.1.x" Mode="{3}" Description="Redis Hostname" Type="Variable" Display="always" Required="true" Mask="false">redis</Config>
  <Config Name="JWT_SECRET" Target="JWT_SECRET" Default="somelongrandomstring" Mode="{3}" Description="Run `openssl rand -base64 128`" Type="Variable" Display="always" Required="true" Mask="false">**********</Config>
  <Config Name="DISABLE_MACHINE_LEANRNING" Target="DISABLE_MACHINE_LEANRNING" Default="false" Mode="{3}" Description="Set to `true` to disable machine learning" Type="Variable" Display="always" Required="false" Mask="false">false</Config>
  <Config Name="DISABLE_TYPESENSE" Target="DISABLE_TYPESENSE" Default="false" Mode="{3}" Description="Set to `true` to disable Typesense (disables searching completely!)" Type="Variable" Display="always" Required="false" Mask="false">false</Config>
  <Config Name="DB_PORT" Target="DB_PORT" Default="5432" Mode="{3}" Description="PostgreSQL Port" Type="Variable" Display="always" Required="false" Mask="false">5432</Config>
  <Config Name="REDIS_PORT" Target="REDIS_PORT" Default="6379" Mode="{3}" Description="Redis Port" Type="Variable" Display="always" Required="false" Mask="false">6379</Config>
  <Config Name="traefik.http.routers.immich.rule" Target="traefik.http.routers.immich.rule" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">Host(`**********`)</Config>
  <Config Name="traefik.http.routers.immich.tls" Target="traefik.http.routers.immich.tls" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">true</Config>
  <Config Name="traefik.http.routers.immich.entrypoints" Target="traefik.http.routers.immich.entrypoints" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">https</Config>
  <Config Name="PUBLIC_LOGIN_PAGE_MESSAGE" Target="PUBLIC_LOGIN_PAGE_MESSAGE" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false">**********</Config>
  <Config Name="Appdata" Target="/config" Default="/mnt/user/container/immich" Mode="rw" Description="Contains the logs, Transformers cache and Typesense data" Type="Path" Display="advanced" Required="true" Mask="false">/mnt/user/container/immich</Config>
  <Config Name="PUID" Target="PUID" Default="99" Mode="{3}" Description="UID for permissions. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="true" Mask="false">99</Config>
  <Config Name="PGID" Target="PGID" Default="100" Mode="{3}" Description="GID for permissions. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="true" Mask="false">100</Config>
  <Config Name="UMASK" Target="UMASK" Default="022" Mode="{3}" Description="UMASK for newly created files. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="false" Mask="false">022</Config>
</Container>

Your .env content

Same as above

Reproduction steps

1. Pick a random person
2. Press the "Update feature photo" button
3. Select a picture
4. Be sad that it does not work

Additional information

No response

Originally created by @ckocyigit on GitHub (Jul 5, 2023). ### The bug Hello, I tried this new feature today after updating since I wanted to change some thumbnails which were really random :) After pressing the "Change feature photo" Button within the person context and selecting a picture it just resets the site but does not change anything. Server logs: ``` [Nest] 1082 - 07/05/2023, 6:27:23 PM ERROR [JobService] Unable to run job handler: Error: Expected integer for width but received -2 of type number [Nest] 1082 - 07/05/2023, 6:27:23 PM ERROR [JobService] Error: Expected integer for width but received -2 of type number at Object.invalidParameterError (/app/immich/server/node_modules/sharp/lib/is.js:124:10) at Sharp.<anonymous> (/app/immich/server/node_modules/sharp/lib/resize.js:442:16) at Array.forEach (<anonymous>) at Sharp.extract (/app/immich/server/node_modules/sharp/lib/resize.js:437:38) at MediaRepository.crop (/app/immich/server/dist/infra/repositories/media.repository.js:15:14) at FacialRecognitionService.handleGenerateFaceThumbnail (/app/immich/server/dist/domain/facial-recognition/facial-recognition.services.js:149:58) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async /app/immich/server/dist/domain/job/job.service.js:103:37 at async Worker.processJob (/app/immich/server/node_modules/bullmq/dist/cjs/classes/worker.js:342:28) at async Worker.retryIfFailed (/app/immich/server/node_modules/bullmq/dist/cjs/classes/worker.js:525:24) [Nest] 1082 - 07/05/2023, 6:27:23 PM ERROR [JobService] Object: { "assetId": "5887b317-45ff-4c4d-bf27-f55e123debdb", "personId": "d640c660-f0d2-4227-b1a8-bddce7ecabdf", "boundingBox": { "x1": 0, "x2": 0, "y1": 0, "y2": 0 }, "imageHeight": 0, "imageWidth": 0 } ``` I do not know what edge case causes this bug to offer additional information but I would maybe add the dimensions of the picture :) ``` 20230315_145129_EEF873A2.jpg 3 MP 2048 x 1536 417,2 KiB ``` I would gladly help with additional information if needed. ### The OS that Immich Server is running on Unraid 6.12.0 ### Version of Immich Server v1.66.1 ### Version of Immich Mobile App nAn ### Platform with the issue - [ ] Server - [ ] Web - [ ] Mobile ### Your docker-compose.yml content ```YAML Im not running compose. I can post the XML though: <?xml version="1.0"?> <Container version="2"> <Name>immich</Name> <Repository>ghcr.io/imagegenius/immich</Repository> <Registry>https://github.com/orgs/imagegenius/packages/container/package/immich</Registry> <Network>dockernet</Network> <MyIP/> <Shell>bash</Shell> <Privileged>false</Privileged> <Support>https://github.com/imagegenius/docker-immich/issues/new/choose</Support> <Project>https://immich.app/</Project> <Overview>Immich is a high performance self-hosted photo and video backup solution.</Overview> <Category>Backup: Cloud: MediaApp:Photos</Category> <WebUI>http://[IP]:[PORT:8080]</WebUI> <TemplateURL>https://raw.githubusercontent.com/imagegenius/templates/master/unraid/immich.xml</TemplateURL> <Icon>https://raw.githubusercontent.com/imagegenius/templates/main/unraid/img/immich.png</Icon> <ExtraParams/> <PostArgs/> <CPUset/> <DateInstalled>1688574847</DateInstalled> <DonateText/> <DonateLink/> <Requires>&amp;lt;br&amp;gt;PostgreSQL 14, Redis&amp;lt;br&amp;gt;This container requires an external application to be run separately.&amp;lt;br&amp;gt;You can also use docker-mods to start postgres and redis within the container:&amp;lt;br&amp;gt;- Redis: `DOCKER_MODS=imagegenius/mods:universal-redis` - **Set `REDIS_HOSTNAME` to `localhost`.**&amp;lt;br&amp;gt;- PostgreSQL: `DOCKER_MODS=imagegenius/mods:universal-postgres` - **Set `DB_HOSTNAME` to `localhost` and set `DB_USERNAME`, `DB_PASSWORD`, and `DB_DATABASE_NAME` to `postgres`.**&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;If you want to use both, set `DOCKER_MODS` to `imagegenius/mods:universal-redis|imagegenius/mods:universal-postgres`.&amp;lt;br&amp;gt;See the https://github.com/imagegenius/docker-immich for more information&amp;lt;br&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;</Requires> <Config Name="WebUI" Target="8080" Default="8080" Mode="tcp" Description="WebUI Port" Type="Port" Display="always" Required="true" Mask="false">5884</Config> <Config Name="Path: /photos" Target="/photos" Default="" Mode="rw" Description="Contains all the photos uploaded to Immich" Type="Path" Display="always" Required="true" Mask="false">/mnt/user/immich</Config> <Config Name="Path: /config/transformers" Target="/config/transformers" Default="" Mode="rw" Description="Store the Transformers cache elsewhere (~800MB)" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/container/immich/transform</Config> <Config Name="DB_HOSTNAME" Target="DB_HOSTNAME" Default="192.168.1.x" Mode="{3}" Description="PostgreSQL Host" Type="Variable" Display="always" Required="true" Mask="false">postgresql15</Config> <Config Name="DB_USERNAME" Target="DB_USERNAME" Default="postgres" Mode="{3}" Description="PostgreSQL Username" Type="Variable" Display="always" Required="true" Mask="false">postgres</Config> <Config Name="DB_PASSWORD" Target="DB_PASSWORD" Default="postgres" Mode="{3}" Description="PostgreSQL Password" Type="Variable" Display="always" Required="true" Mask="true">**********</Config> <Config Name="DB_DATABASE_NAME" Target="DB_DATABASE_NAME" Default="immich" Mode="{3}" Description="PostgreSQL Database Name" Type="Variable" Display="always" Required="true" Mask="false">immich</Config> <Config Name="REDIS_HOSTNAME" Target="REDIS_HOSTNAME" Default="192.168.1.x" Mode="{3}" Description="Redis Hostname" Type="Variable" Display="always" Required="true" Mask="false">redis</Config> <Config Name="JWT_SECRET" Target="JWT_SECRET" Default="somelongrandomstring" Mode="{3}" Description="Run `openssl rand -base64 128`" Type="Variable" Display="always" Required="true" Mask="false">**********</Config> <Config Name="DISABLE_MACHINE_LEANRNING" Target="DISABLE_MACHINE_LEANRNING" Default="false" Mode="{3}" Description="Set to `true` to disable machine learning" Type="Variable" Display="always" Required="false" Mask="false">false</Config> <Config Name="DISABLE_TYPESENSE" Target="DISABLE_TYPESENSE" Default="false" Mode="{3}" Description="Set to `true` to disable Typesense (disables searching completely!)" Type="Variable" Display="always" Required="false" Mask="false">false</Config> <Config Name="DB_PORT" Target="DB_PORT" Default="5432" Mode="{3}" Description="PostgreSQL Port" Type="Variable" Display="always" Required="false" Mask="false">5432</Config> <Config Name="REDIS_PORT" Target="REDIS_PORT" Default="6379" Mode="{3}" Description="Redis Port" Type="Variable" Display="always" Required="false" Mask="false">6379</Config> <Config Name="traefik.http.routers.immich.rule" Target="traefik.http.routers.immich.rule" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">Host(`**********`)</Config> <Config Name="traefik.http.routers.immich.tls" Target="traefik.http.routers.immich.tls" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">true</Config> <Config Name="traefik.http.routers.immich.entrypoints" Target="traefik.http.routers.immich.entrypoints" Default="" Mode="" Description="" Type="Label" Display="always" Required="false" Mask="false">https</Config> <Config Name="PUBLIC_LOGIN_PAGE_MESSAGE" Target="PUBLIC_LOGIN_PAGE_MESSAGE" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false">**********</Config> <Config Name="Appdata" Target="/config" Default="/mnt/user/container/immich" Mode="rw" Description="Contains the logs, Transformers cache and Typesense data" Type="Path" Display="advanced" Required="true" Mask="false">/mnt/user/container/immich</Config> <Config Name="PUID" Target="PUID" Default="99" Mode="{3}" Description="UID for permissions. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="true" Mask="false">99</Config> <Config Name="PGID" Target="PGID" Default="100" Mode="{3}" Description="GID for permissions. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="true" Mask="false">100</Config> <Config Name="UMASK" Target="UMASK" Default="022" Mode="{3}" Description="UMASK for newly created files. Do not change unless you know what you're doing." Type="Variable" Display="advanced-hide" Required="false" Mask="false">022</Config> </Container> ``` ### Your .env content ```Shell Same as above ``` ### Reproduction steps ```bash 1. Pick a random person 2. Press the "Update feature photo" button 3. Select a picture 4. Be sad that it does not work ``` ### Additional information _No response_
Author
Owner

@bo0tzz commented on GitHub (Jul 5, 2023):

Duplicate of #3119

@bo0tzz commented on GitHub (Jul 5, 2023): Duplicate of #3119
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#1062