mirror of
https://github.com/immich-app/immich.git
synced 2026-02-05 08:41:28 +03:00
[BUG] After upgrading to 1.91.0, deadlock in immich_postgresql #1798
Closed
opened 2026-02-05 03:53:06 +03:00 by OVERLORD
·
33 comments
No Branch/Tag Specified
main
fix/web-people-hidden-state
fix-filename-search-label
chore/yank-cloud-id
chore/oauth-labels
renovate/machine-learning
uhthomas/mobile-fix-app-bar-fade
feat/debug-schema
renovate/typescript-projects
fix/25803
feat/asset-file-apis
chore/translations
fix/web-switch-label-clickable
release/next
fix/timezones
fix/time-zone-upserts
midzelis/wip
push-zpwsovysllvn
push-nwxlpmyzkyrl
push-nvnkszuqwppm
renovate/github-actions
push-smstsuupsowp
refactor/adaptive_image
push-olwpzvrxnomt
push-lmxsupnmxspl
feat/web-chromecast-video-looping
feat/use-native-clients
renovate/flutter
fix/create-face-edited
fix/mobile-ios-mtls
docs/contributing
docs/mise-mobile
renovate/grafana-monorepo
feature/bottom-buttons-order
feat/immich-mobile-ui-showcase
refactor/consolidate-image-requests
renovate/connectivity_plus-7.x
renovate/major-vitest-monorepo
renovate/pypi-python-multipart-vulnerability
fix/mobile-people-query
sqlite_thumbs
feat/html-text
chore/no-macro-validation
refactor/purchase-store
uhthomas/mobile-fix-asset-jump
feat/pano-ocr
feat/shared-link-login
fix/database-backup-db-names
fix-keep-correct-ios-shared-album-asset
fix-memory-generation-and-display
feat/verify-permissions
refactor/album-service-small-tests
fix/ml-rocm-build
fix/flipped-dimensions-mobile
push-vpxwmwwxwnvw
fix-migration-width-height
refactor/more-queries
revert/prettier-translations
refactor/asset-service-queries
fix/locale-settings-desc
chore/add-debug-log
feat/edit-filters
shared-deep-link-handler
feat/mobile-editing
feat/thumbnail-native-clients
feat/platform-clients
feat/integrity-checks-izzy
fix/foreground-cloud-sync
feat/dynamic-layout
filter-by-person
feat/csp
refactor/sidebar
fix/disable-editing
fix/view-timeline-deeplink
image-zoom-on-slow-connection
fix-consider-dar-for-video-dimension
fix/merged-edited-assets
perf/optimize-album-sort
open-api-fix
feat/create-job-with-dto
use-toast-primary
feat/vitest-4
feat/ios-fastlane-match
match-signing
fix-update-time-update-timeline
chore/translation-keys
feat/modal-routes
feat/panorama-tiles
feature/mobile-view-asset-owner
feat/system-settings
feature/show-activity-count
better-info-in-asset-viewer
fix/all-people-count
feat/location-favorites
feature/rearrange-buttons-2
fix/download-storage-template
feat/kb-shortcuts-mobile
fix/people-count
push-qolzzzzxrvvn
chore/originals-in-asset-files
feat/asset-size-columns
ben/tree-a11y
new-search-filter-ui
refactor/expectSelectedReadonly
refactor/mobile-grdb
push-qvuktpxmkknu
feat/mobile-native-local-sync
refactor/timeline_ops
fix/scrubber_end
feat/version.txt
feat/context-menus
feat/server-chunked-uploads
refactor/virtualsegment
refactor/rename_daymonth_groups
fix/restrict-android-bg-worker
feat/android-periodic-worker
fix-remote-sync-clean-up
refactor/timeline_move_ops
renovate/mapbox-mapbox-gl-rtl-text-0.x
fix/timeline_split_selectable
feat/keyboard_actions_help_modal
feat/static_frontend
feat/notification-warnign-android
feat/plugins2
feat/plugins
test/create-workflow-token-action
fix/docs-force
debug/search-result-similarity
debug/cf-chunked-uploads
feat/eslint_rule
feat/search-filter-album/web
refactor/timeline_photostream
refactor/timelineasset_asset
feat/session-permissions
feat/timeline_photostream_assetnav
feat/timeline_minor_optimize
feat/timeline_perf_nocomp
feat/timeline_search_results_actions
feat/timeline_search_results_page
fix/timeline_padding
fix/timeline_search_reactivity_warnings
feat/timeline_scrollbar
feat/timeline_stream_withviewer
fix/timeline_back_forth_nav
refactor/timeline_photostream_component
fix/generated-files-checks
fix/locate-button-local
chore/base-image-mimalloc
refactor/timeline_assetlayout
refactor/timeline_selectable
refactor/timeline_aware_actions
refactor/timeline_monthsegment
feat/remove-old-pages
chore/deps-gradle
tmp_photostream
tmp/lcms
feat/mobile-dynamic-thumbnails
fix/mobile-finer-thumbnail-concurrency
refactor/timeline1
refactor/extract_photostream
refactor/rename_load_api
refactor/timeline2
refactor/timeline3
feat/multi-select-asset-viewer
feat-no-thumbhash-cache
refactor/asset_grid
feat/faster-access-checks
fix/18991
fix/19543
chore/temp-remove
fix/21419
feat/mobile-hdr-images
chore/update-mise-lockfile
feat/mise-server-checks
feat/mise-ci
feat/windows-2025
feat/dev_cli
refactor/mobile-migrate-clients
fix/map-theme
fix/require-checkbox
chore/use_swc
feat/efficient-thumbnail-decoding
refactor/mobile-thumbhash
refactor/mobile-thumbhash-new
fix/mobile-uncached-zoom
feat/beta-background-upload
fix/beta-timeline-memories-setting
fix/failed-uploads-not-removed
feat/mobile-shared-album
feat/groups
drift-map-page
drift-auth-user-sync
fix/disable-memory
feat/add-to-album-action
edit-date-time-action
drift-people-page
sqlite-remove-isIn
feat/inline-storage-columns
chore/required-reviewers
refact/asset-manager
fix/folder-sort
pnpm
feat/widget-multiple-server-urls
chore/medium-tests-dbname
fix/web-no-iterator-find
fix/map-pan-interruption
track-livephotos
timeline_events
chore/oxlint-migration
feat/maintenance-worker
feat/dav
chore/demo-snapshot
refactor/server-side-dedupe
feat/integrity-checks
dev/recognition-eval
lighter_buckets_test
perf/postgres-queue
postgres-queue
focus_rings
refactor/web-stores-1
refactor/add-to-taken
feat/sort-places
feat/sidecar-asset-file
vet
tmp/demo-snapshot-preview
fix/server-migration-file-extension
refactor/mobile-v2
fix/asset-update-race-condition
rknn-toolkit-lite2
refactor/mobile-split-up-search-page
feature/Add-rocm-support-for-machine-learning
feat/rocm
chore/async-hash-file
feat/shared-link-view-count
feat/rotation
feat/graphql
feat/job-ids
feat/ignore-library-permission-error
feat/docker-compose-builder
feat/kysely-typeorm
mobile/onboarding
no-video-player
fix/server-qsv-output-format
chore/server-geodata-tweaks
mobile/native-video-player-no-hero
feat/xxhash
fix/docs-concurrency
feat/preload-ml-textual-model
feat/local-tileserver
refactor/exif-orientation
original-path-infix
refactor/mobile/login-form-1
feat/server-editor-endpoints
fix/server-qsv-vbr
fix-mobile-db-problems
feat/ml-armnn-conversion
feat/mobile/backup-with-album-info
feat/fast-initial-sync-1
chore/handle-output_dims
feat/server-more-robust-generation
feat/unassign-faces
feat/shortcuts-on-asset-grid
feat/background-upload
feat/capacitor-mobile-app-poc
feat/server-nvenc-hw-decoding
release/v1.105
fix/mobile-fetch-non-archive
feat/fine-grained-access-controls
web/automation-ui
feat/mobile-server-endpoint-save-dropdown
feat/blurhash-thumbnail
object-storage
feat/memories-animations
dev/metrics
ml/tflite
feat/ml-export-cli
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.1
v2.0.0
v1.144.1
v1.144.0
v1.143.1
v1.143.0
v1.142.1
v1.142.0
v1.141.1
v1.141.0
v1.140.1
v1.140.0
v1.139.4
v1.139.3
v1.139.2
v1.139.1
v1.139.0
v1.138.1
v1.138.0
v1.137.3
v1.137.2
v1.137.1
v1.137.0
v1.136.0
v1.135.3
v1.135.2
v1.135.1
v1.135.0
v1.134.0
v1.133.1
v1.133.0
v1.132.3
v1.132.2
v1.132.1
v1.132.0
v1.131.3
v1.131.2
v1.131.1
v1.131.0
v1.130.3
v1.130.2
v1.130.1
v1.130.0
v1.129.0
v1.128.0
v1.127.0
v1.126.1
v1.126.0
v1.125.7
v1.125.6
v1.125.5
v1.125.4
v1.125.3
v1.125.2
v1.125.1
v1.125.0
v1.124.2
v1.124.1
v1.124.0
v1.123.0
v1.122.3
v1.122.2
v1.122.1
v1.122.0
v1.121.0
v1.120.2
v1.120.1
v1.120.0
v1.119.1
v1.119.0
v1.118.2
v1.118.1
v1.118.0
v1.117.0
v1.116.2
v1.116.1
v1.116.0
v1.115.0
v1.114.0
v1.113.1
v1.113.0
v1.112.1
v1.112.0
v1.111.0
v1.110.0
v1.109.2
v1.109.1
v1.109.0
v1.108.0
v1.107.2
v1.107.1
v1.107.0
v1.106.4
v1.106.3
v1.106.2
v1.106.1
v1.106.0
v1.105.1
v1.105.0
v1.104.0
v1.103.1
v1.103.0
v1.102.3
v1.102.2
v1.102.1
v1.102.0
v1.101.0
v1.100.0
v1.99.0
v1.98.2
v1.98.1
v1.98.0
v1.97.0
v1.96.0
v1.95.1
v1.95.0
v1.94.1
v1.94.0
v1.93.3
v1.93.2
v1.93.1
v1.93.0
v1.92.1
v1.92.0
v1.91.4
v1.91.3
v1.91.2
v1.91.1
v1.91.0
v1.90.2
v1.90.1
v1.90.0
v1.89.0
v1.88.2
v1.88.1
v1.88.0
v1.87.0
v1.86.0
v1.85.0
v1.84.0
v1.83.0
v1.82.1
v1.82.0
v1.81.1
v1.81.0
v1.80.0
v1.79.1
v1.79.0
v1.78.1
v1.78.0
v1.77.0
v1.76.1
v1.76.0
v1.75.2
v1.75.1
v1.75.0
v1.74.0
v1.73.0
v1.72.2
v1.72.1
v1.72.0
v1.71.0
v1.70.0
v1.69.0
v1.68.0
v1.67.2
v1.67.1
v1.67.0
v1.66.1
v1.66.0
v1.65.0
v1.64.0
v1.63.2
v1.63.1
v1.63.0
v1.62.1
v1.62.0
v1.61.0
v1.60.0
v1.59.1
v1.59.0
v1.58.0
v1.57.1
v1.57.0
v1.56.2
v1.56.1
v1.56.0
v1.55.1
v1.55.0
v1.54.1
v1.54.0
v1.53.0
v1.52.1
v1.52.0
v1.51.2
v1.51.1
v1.51.0
v1.50.1
v1.50.0
v1.49.0
v1.48.1
v1.48.0
v1.47.3
v1.47.2
v1.47.1
v1.47.0
v1.46.1
v1.46.0
v1.45.0
v1.44.0
v1.43.1
v1.43.0
v1.42.0_65-dev
v1.41.1_64-dev
v1.41.0_64-dev
v1.40.1_63-dev
v1.40.0_63-dev
v1.39.0_61-dev
v1.38.2_60-dev
v1.38.1_60-dev
v1.38.0_60-dev
v1.37.0_58-dev
v1.36.2_56-dev
v1.36.1_55-dev
v1.36.0_55-dev
v1.35.0_54-dev
v1.34.0_53-dev
v1.33.1_52-dev
v1.33.0_52-dev
v1.32.1_51-dev
v1.32.0_50-dev
v1.31.1_49-dev
v1.31.0_49-dev
v1.30.2_48-dev
v1.30.0_46-dev
v1.29.6_45-dev
v1.29.6_44-dev
v1.29.5_44-dev
v1.29.4_44-dev
v1.29.3_43-dev
v1.29.2_43-dev
v1.29.1_43-dev
v1.29.0_42-dev
v1.28.4_41-dev
v1.28.4_42-dev
v1.28.3_41-dev
v1.28.2_40-dev
v1.28.1_39-dev
v1.28.0_38-dev
v1.27.0_37-dev
v1.26.0_36-dev
v1.25.0_35-dev
v1.24.0_34-dev
v1.23.0_33-dev
v1.22.0_32-dev
v1.21.1_31-dev
v1.21.0_31-dev
v1.20.3_30-dev
v1.20.2_30-dev
v1.20.1_30-dev
v1.20.0_30-dev
v1.19.1_29-dev
v1.19.0_29-dev
v1.18.0_27-dev
v1.17.0_25-dev
v1.16.0_23-dev
v1.15.1_21-dev
v1.15.0_21-dev
v1.14.0_21-dev
v1.13.0_20-dev
v1.12.0_18-dev
v1.11.0_17-dev
v1.10.0_15-dev
v1.9.1_14-dev
v1.9.0_13-dev
v1.8.0_12-dev
v1.7.0_11-dev
v1.6.0_10-dev
v1.5.1+9-dev
v1.5.0+8-dev
v1.4.0+7-dev
v1.4.0+6-dev
v1.4.0-dev
v1.3.0-dev
v1.3.1-dev
v0.6-dev
v0.5-dev
v0.4-dev
v0.3-dev
v0.2-dev
first-android-release
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: immich-app/immich#1798
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @tnys on GitHub (Dec 16, 2023).
The bug
immich_postgresql container log...
The OS that Immich Server is running on
Ubuntu 22.0
Version of Immich Server
v1.91.0
Version of Immich Mobile App
Platform with the issue
Your docker-compose.yml content
Your .env content
Reproduction steps
Additional information
No response
@alextran1502 commented on GitHub (Dec 16, 2023):
Does the service eventually start up?
@tnys commented on GitHub (Dec 16, 2023):
No, the last log entry is the one shown in my original bug report:
2023-12-16 18:57:46.435 UTC [49] STATEMENT: CREATE EXTENSION IF NOT EXISTS vectors@alextran1502 commented on GitHub (Dec 16, 2023):
that is the logs of the postgres's container, do you have logs of the server?
@tnys commented on GitHub (Dec 16, 2023):
It keeps repeating the entries below...
@MrMarble commented on GitHub (Dec 16, 2023):
Having the same problem with immich
v1.91.1, I'm running immich on k8s andimmich-serveris not printing any log, container keeps crashingDeadLock
IPC Connection closed
Immich
v1.90.2worked fine, here's my helmrelease1dde083382/kubernetes/home-cluster/apps/default/immich/app/server/helmrelease.yaml@alextran1502 commented on GitHub (Dec 16, 2023):
@tnys Does restarting the stack help solve the issue?
@MrMarble commented on GitHub (Dec 17, 2023):
Finally was able to get logs from
immich-serverafter updating to pgvector v13 and got the error mentioned in #5731, but after rolling back to v11 and trying again I'm having the same problem,immich-serveris not logging anything and postgres reports a deadlockusing https://ghcr.io/bo0tzz/cnpgvecto.rs:14.10-v0.1.11
@rkkoszewski commented on GitHub (Dec 17, 2023):
Same issue here. Getting a ECONNREFUSED error from the server. Postgres shows the following errors again and again:
2023-12-16 23:00:08.206 UTC [357] STATEMENT: CREATE EXTENSION IF NOT EXISTS vectors 2023-12-16 23:00:11.035 UTC [358] ERROR: could not open extension control file "/usr/local/share/postgresql/extension/vectors.control": No such file or directory 2023-12-16 23:00:11.035 UTC [358] STATEMENT: CREATE EXTENSION IF NOT EXISTS vectors@rkkoszewski commented on GitHub (Dec 17, 2023):
Ok, this is not a bug. I haven't noticed there were breaking changes in the previous release that is using a different database build in the stack. Following the release notes and redeploying the stack fixed the issue. See: https://github.com/immich-app/immich/releases/tag/v1.91.0
@alextran1502 commented on GitHub (Dec 17, 2023):
Please provide the database images you guys use if you are not OP. There are a lot of factors at play if the image you choose is not the correct version as specified in the release note.
@tnys commented on GitHub (Dec 17, 2023):
I'm using tensorchord/pgvecto-rs:pg14-v0.1.11. Is there any way to get around the deadlock manually? Something I can do to resolve?
@agross commented on GitHub (Dec 17, 2023):
My upgrade process was this:
postgres:16-alpinetensorchord/pgvecto-rs:pg16-v0.1.11During this first start of 1.91.2 this was logged.
I am now wondering if my database schema is broken:
The
smart_infotable has no column namedclipEmbedding.The
asset_faces'sCREATEscript is reported as by DbGate (my database query tool of choice):@tommyalatalo commented on GitHub (Dec 17, 2023):
I'm also having issues with postgres when going from 1.90.0 to 1.91.2. I first mistakenly ran the latest pgvecto-rs image with the
pg14-v0.1.13tag, then switched topg14-v0.1.11according to the release notes.I'm running immich on a logical database on a postgres instance that's shared with other services.
It seems like immich is calling a function that doesn't exist.
Output from postgres:
Output from microservices container:
@lukaarma commented on GitHub (Dec 17, 2023):
While replacing my PostgreSQL image with the new
tensorchord/pgvecto-rs:pg14I also used the latest version and not thev0.1.11I was encountering errors similar to those in this issue, but I was able to recover by simply loading the correct
tensorchord/pgvecto-rs:pg14-v0.1.11docker image, then logging into the Immich PostgreSQL database and running the commandsDROP EXTENSION vectors;followed byCREATE EXTENSION vectors;. That fixed any errors and Immich was able to correctly load.My guess is that the latest version of pgvecto-rs loaded some kind of metadata or something similar that was still present when trying to load the correct version of the extension and was causing some conflict, unloading and loading the extension again in the database fixed that.
Be careful to have a backup of your database as my fix is from empirical knowledge and I'm not quite sure what really was happening.
Hope this can help someone else :)
@tommyalatalo commented on GitHub (Dec 17, 2023):
I can verify that this worked for my error as well.
@addd45 commented on GitHub (Dec 18, 2023):
ugh you are a life saver. I was dealing with this mess all day including installing and setting up an entire new postgres server. I will try to add my struggles to hopefully help add any more insight.
First, I have Postgres running directly on my Ubuntu server - no docker images, and not using the docker image from immich. I was running Postgres version 13 which I suppose is not compatible with the Vectors Extension. So I migrated everything from PG13 to PG16.
I started by simply installing the latest release from PGVecto, assuming the latest stable would be the best option. Thats when I started getting the same issues exactly as described here.
I uninstalled the latest release and installed the
1.11version for pg16 , reinstalled the extension and restarted my postgres server, and still no luck. Now I was getting the "typmod" error thats described here and in the linked Issue. So I felt like at this point I was SOL - I didn't have any DB backups to start fresh from, and I didn't want to lose everything of course. but low and behold by runningDROP EXTENSION vectors CASCADE(I needed CASCADE specifically as there was dependencies), followed byCREATE EXTENSION vectors, and then restarting by immich docker container, and it started right up. I'm not 100% sure honestly the order of operations I did to finally get it to work, but I'm sure the 2 SQL commands were the most important.I know I'm probably more of a niche use-case by not using the "built-in" postgres db image, but regardless I would maybe suggest more detail on this integration and more stability. From what I understand, PGVecto is still in beta as well. Or maybe a safer way to get unstuck on DB migrations. Just my 2c suggestions :)
@JshKlsn commented on GitHub (Dec 18, 2023):
Took me over an hour to figure this out, but here's the solution if you're using Unraid.
You can now shut down pgvecto-rs and start PostgreSQL14 again, and everything should be working now. Just for extra measure I restarted the whole stack. Immich now works again.
Also this isn't a bug. This is outlined in the v1.91.0 release discussion.
@Hadatko commented on GitHub (Dec 18, 2023):
@zackpollard commented on GitHub (Dec 18, 2023):
This is not related to this issue. Do not use the latest tag, use the one we mention in the release notes.
@MrMarble commented on GitHub (Dec 18, 2023):
You need to use version 0.1.11 of pgvectors, latest version is not supported
@Hadatko commented on GitHub (Dec 18, 2023):
Thank you, fixed, but kind of not happy with this solution. I was happy with official postgresql db which was used by many apps. And than this hack to make work some specific feature :/ Anyway as far as it will work for all containers i am ok.
Good work with immich features anyway ;)
@groetg commented on GitHub (Dec 18, 2023):
Please help me?
I reproduced every step, but I can't login to Imich database through Adminer at step 7. I use exact the same login credentials wich work when I log in the postgress 15 container!
"Unable to connect to PostgreSQL server: server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request."
@JshKlsn commented on GitHub (Dec 18, 2023):
The only thing I can think of is that you're using PostgreSQL 15 and not 14.
@groetg commented on GitHub (Dec 18, 2023):
I have a postgres 15 database running with immich, so yes, I have used in the example a postgres 15 database. Should I downgrade first to postgres 14 (how?) Or should I install a new database on a postgres 14 docker? Can I import the old postgres 15 database?
@Hadatko commented on GitHub (Dec 19, 2023):
I have postgresql 16 and no problem with adminer
@VoVAllen commented on GitHub (Dec 19, 2023):
I'm the developer of pgvecto.rs. Really sorry for bringing such problems. Does rollback work now? Is there anything else I can help answer?
@Nevarro commented on GitHub (Dec 19, 2023):
I tried everything according to your guide. However, using pgAdmin and the Query Tool, I get
"ERROR: extension "vectors" does not exist
SQL state: 42704"
Any idea what would help here?
EDIT: I used the official Immich guide for help. In step 8 I used
DROP EXTENSION IF EXISTS vectors; CREATE EXTENSION vectors;which worked, however, after stopping the pgvecto-rs docker and started the postgres14 docker again, I still get the same errors in Immich
@VoVAllen commented on GitHub (Dec 19, 2023):
@Nevarro Can you try image
tensorchord/pgvecto-rs:pg14-v0.1.11instead of official postgres image?@Nevarro commented on GitHub (Dec 19, 2023):
This way, step 8 worked and Immich is working again. Thank you very much!
@tnys commented on GitHub (Dec 19, 2023):
Just to let you know 1.91.4 resolves the deadlock. Thanks for the super-fast fix!
Cheers
Tom
@alextran1502 commented on GitHub (Dec 19, 2023):
@VoVAllen thank you for your active communication style ❤️
@webhive commented on GitHub (Jan 8, 2024):
It work! Thank you!
@RohithPRK commented on GitHub (Feb 2, 2024):
SQL Error [42704]: ERROR: access method "hnsw" does not exist
while creating a index