immich_machine_learning | [02/07/26 17:14:10] INFO Starting gunicorn 23.0.0 immich_machine_learning | [02/07/26 17:14:10] INFO Listening at: http://[::]:3003 (19) immich_machine_learning | [02/07/26 17:14:10] INFO Using worker: immich_ml.config.CustomUvicornWorker immich_machine_learning | [02/07/26 17:14:10] INFO Booting worker with pid: 31 immich_machine_learning | [02/07/26 17:14:11] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_redis | 1:M 07 Feb 2026 16:14:08.675 * oO0OoO0OoO0Oo Valkey is starting oO0OoO0OoO0Oo immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Valkey version=9.0.1, bits=64, commit=00000000, modified=0, pid=1, just started immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_redis | 1:M 07 Feb 2026 16:14:08.675 # Warning: no config file specified, using the default config. In order to specify a config file use valkey-server /path/to/valkey.conf immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Increased maximum number of open files to 10032 (it was originally set to 1024). immich_redis | 1:M 07 Feb 2026 16:14:08.675 * monotonic clock: POSIX clock_gettime immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Running mode=standalone, port=6379. immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Server initialized immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Ready to accept connections tcp immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:08.718 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.718 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.721 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:08.721 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_server | node:internal/process/promises:394 immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_postgres | 2026-02-07 16:14:08.960 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.960 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.964 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:08.964 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:09.342 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.342 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.346 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:09.346 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_postgres | immich_postgres | 2026-02-07 16:14:09.882 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.882 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.886 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_server | immich_machine_learning | immich_postgres | 2026-02-07 16:14:09.886 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:10.861 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:10.861 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:10.865 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:10.865 UTC [1] LOG: database system is shut down immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:11] INFO Worker exiting (pid: 31) hitmare@datagrave:~/immich-app$ sudo docker compose logs immich_machine_learning | [02/07/26 17:14:10] INFO Starting gunicorn 23.0.0 immich_machine_learning | [02/07/26 17:14:10] INFO Listening at: http://[::]:3003 (19) immich_machine_learning | [02/07/26 17:14:10] INFO Using worker: immich_ml.config.CustomUvicornWorker immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_machine_learning | [02/07/26 17:14:10] INFO Booting worker with pid: 31 immich_machine_learning | [02/07/26 17:14:11] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_postgres | immich_postgres | 2026-02-07 16:14:08.718 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.718 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.721 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:08.721 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_postgres | 2026-02-07 16:14:08.960 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.960 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:08.964 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:08.964 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:09.342 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.342 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.346 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:09.346 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:09.882 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.882 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:09.886 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:09.886 UTC [1] LOG: database system is shut down immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_redis | 1:M 07 Feb 2026 16:14:08.675 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. immich_redis | 1:M 07 Feb 2026 16:14:08.675 * oO0OoO0OoO0Oo Valkey is starting oO0OoO0OoO0Oo immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Valkey version=9.0.1, bits=64, commit=00000000, modified=0, pid=1, just started immich_redis | 1:M 07 Feb 2026 16:14:08.675 # Warning: no config file specified, using the default config. In order to specify a config file use valkey-server /path/to/valkey.conf immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Increased maximum number of open files to 10032 (it was originally set to 1024). immich_redis | 1:M 07 Feb 2026 16:14:08.675 * monotonic clock: POSIX clock_gettime immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Running mode=standalone, port=6379. immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Server initialized immich_redis | 1:M 07 Feb 2026 16:14:08.675 * Ready to accept connections tcp immich_postgres | 2026-02-07 16:14:10.861 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_postgres | 2026-02-07 16:14:10.861 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_postgres | 2026-02-07 16:14:10.865 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_postgres | 2026-02-07 16:14:10.865 UTC [1] LOG: database system is shut down immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_postgres | 2026-02-07 16:14:12.614 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_postgres | 2026-02-07 16:14:12.615 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:12.618 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:12.618 UTC [1] LOG: database system is shut down immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_postgres | immich_postgres | 2026-02-07 16:14:15.962 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:15.962 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:15.966 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:15.966 UTC [1] LOG: database system is shut down immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_server | syscall: 'getaddrinfo', immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_server | Initializing Immich v2.5.5 immich_server | Detected CPU Cores: 12 immich_server | (node:7) ExperimentalWarning: WASI is an experimental feature and might change at any time immich_server | (Use `node --trace-warnings ...` to show where the warning was created) immich_server | node:internal/process/promises:394 immich_server | triggerUncaughtException(err, true /* fromPromise */); immich_server | ^ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_server | immich_server | Error: getaddrinfo ENOTFOUND database immich_server | at GetAddrInfoReqWrap.onlookupall [as oncomplete] (node:dns:122:26) { immich_server | errno: -3008, immich_server | code: 'ENOTFOUND', immich_server | syscall: 'getaddrinfo', immich_server | hostname: 'database' immich_server | } immich_server | immich_server | Node.js v24.12.0 immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_postgres | Using SSD storage immich_postgres | immich_postgres | PostgreSQL Database directory appears to contain a database; Skipping initialization immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_postgres | immich_postgres | 2026-02-07 16:14:22.504 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:22.505 GMT [1] LOG: skipping missing configuration file "/var/lib/postgresql/data/postgresql.override.conf" immich_postgres | 2026-02-07 16:14:22.508 UTC [1] FATAL: called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" } immich_postgres | 2026-02-07 16:14:22.508 UTC [1] LOG: database system is shut down immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:11] INFO Worker exiting (pid: 31) immich_machine_learning | [02/07/26 17:14:11] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:12] ERROR Worker (pid:31) exited with code 255 immich_machine_learning | [02/07/26 17:14:12] ERROR Worker (pid:31) exited with code 255. immich_machine_learning | [02/07/26 17:14:12] INFO Booting worker with pid: 45 immich_machine_learning | [02/07/26 17:14:14] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:14] INFO Worker exiting (pid: 45) immich_machine_learning | [02/07/26 17:14:14] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:14] ERROR Worker (pid:45) exited with code 255 immich_machine_learning | [02/07/26 17:14:14] ERROR Worker (pid:45) exited with code 255. immich_machine_learning | [02/07/26 17:14:14] INFO Booting worker with pid: 57 immich_machine_learning | [02/07/26 17:14:16] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:16] INFO Worker exiting (pid: 57) immich_machine_learning | [02/07/26 17:14:16] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:17] ERROR Worker (pid:57) exited with code 255 immich_machine_learning | [02/07/26 17:14:17] ERROR Worker (pid:57) exited with code 255. immich_machine_learning | [02/07/26 17:14:17] INFO Booting worker with pid: 69 immich_machine_learning | [02/07/26 17:14:18] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:18] INFO Worker exiting (pid: 69) immich_machine_learning | [02/07/26 17:14:18] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:19] ERROR Worker (pid:69) exited with code 255 immich_machine_learning | [02/07/26 17:14:19] ERROR Worker (pid:69) exited with code 255. immich_machine_learning | [02/07/26 17:14:19] INFO Booting worker with pid: 81 immich_machine_learning | [02/07/26 17:14:20] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:20] INFO Worker exiting (pid: 81) immich_machine_learning | [02/07/26 17:14:20] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:21] ERROR Worker (pid:81) exited with code 255 immich_machine_learning | [02/07/26 17:14:21] ERROR Worker (pid:81) exited with code 255. immich_machine_learning | [02/07/26 17:14:21] INFO Booting worker with pid: 93 immich_machine_learning | [02/07/26 17:14:23] ERROR Exception in worker process immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:19 │ immich_machine_learning | │ 0 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ ❱ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ 193 def _cancel_all_tasks(loop): │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:11 │ immich_machine_learning | │ 8 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 115 │ │ │ immich_machine_learning | │ 116 │ │ self._interrupt_count = 0 │ immich_machine_learning | │ 117 │ │ try: │ immich_machine_learning | │ ❱ 118 │ │ │ return self._loop.run_until_c │ immich_machine_learning | │ 119 │ │ except exceptions.CancelledError: │ immich_machine_learning | │ 120 │ │ │ if self._interrupt_count > 0: │ immich_machine_learning | │ 121 │ │ │ │ uncancel = getattr(task, │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:536 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop._setup_or_resume_signals:302 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/socket.py:657 in │ immich_machine_learning | │ socketpair │ immich_machine_learning | │ │ immich_machine_learning | │ 654 │ │ │ │ family = AF_UNIX │ immich_machine_learning | │ 655 │ │ │ except NameError: │ immich_machine_learning | │ 656 │ │ │ │ family = AF_INET │ immich_machine_learning | │ ❱ 657 │ │ a, b = _socket.socketpair(family, │ immich_machine_learning | │ 658 │ │ a = socket(family, type, proto, a │ immich_machine_learning | │ 659 │ │ b = socket(family, type, proto, b │ immich_machine_learning | │ 660 │ │ return a, b │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | PermissionError: [Errno 13] Permission denied immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:71 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 68 │ │ │ return │ immich_machine_learning | │ 69 │ │ try: │ immich_machine_learning | │ 70 │ │ │ loop = self._loop │ immich_machine_learning | │ ❱ 71 │ │ │ _cancel_all_tasks(loop) │ immich_machine_learning | │ 72 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 73 │ │ │ loop.run_until_complete(loop. │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:20 │ immich_machine_learning | │ 1 in _cancel_all_tasks │ immich_machine_learning | │ │ immich_machine_learning | │ 198 │ for task in to_cancel: │ immich_machine_learning | │ 199 │ │ task.cancel() │ immich_machine_learning | │ 200 │ │ immich_machine_learning | │ ❱ 201 │ loop.run_until_complete(tasks.gather( │ immich_machine_learning | │ 202 │ │ immich_machine_learning | │ 203 │ for task in to_cancel: │ immich_machine_learning | │ 204 │ │ if task.cancelled(): │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1512 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_until_complete:1505 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.run_forever:1379 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._run:520 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: this event loop is already running. immich_machine_learning | immich_machine_learning | During handling of the above exception, another immich_machine_learning | exception occurred: immich_machine_learning | immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /arbiter.py:608 in spawn_worker │ immich_machine_learning | │ │ immich_machine_learning | │ 605 │ │ │ util._setproctitle("worker [% │ immich_machine_learning | │ 606 │ │ │ self.log.info("Booting worker │ immich_machine_learning | │ 607 │ │ │ self.cfg.post_fork(self, work │ immich_machine_learning | │ ❱ 608 │ │ │ worker.init_process() │ immich_machine_learning | │ 609 │ │ │ sys.exit(0) │ immich_machine_learning | │ 610 │ │ except SystemExit: │ immich_machine_learning | │ 611 │ │ │ raise │ immich_machine_learning | │ │ immich_machine_learning | │ /opt/venv/lib/python3.11/site-packages/gunicorn │ immich_machine_learning | │ /workers/base.py:143 in init_process │ immich_machine_learning | │ │ immich_machine_learning | │ 140 │ │ │ immich_machine_learning | │ 141 │ │ # Enter main run loop │ immich_machine_learning | │ 142 │ │ self.booted = True │ immich_machine_learning | │ ❱ 143 │ │ self.run() │ immich_machine_learning | │ 144 │ │ immich_machine_learning | │ 145 │ def load_wsgi(self): │ immich_machine_learning | │ 146 │ │ try: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:18 │ immich_machine_learning | │ 9 in run │ immich_machine_learning | │ │ immich_machine_learning | │ 186 │ │ raise RuntimeError( │ immich_machine_learning | │ 187 │ │ │ "asyncio.run() cannot be call │ immich_machine_learning | │ 188 │ │ immich_machine_learning | │ ❱ 189 │ with Runner(debug=debug) as runner: │ immich_machine_learning | │ 190 │ │ return runner.run(main) │ immich_machine_learning | │ 191 │ immich_machine_learning | │ 192 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:63 │ immich_machine_learning | │ in __exit__ │ immich_machine_learning | │ │ immich_machine_learning | │ 60 │ │ return self │ immich_machine_learning | │ 61 │ │ immich_machine_learning | │ 62 │ def __exit__(self, exc_type, exc_val, │ immich_machine_learning | │ ❱ 63 │ │ self.close() │ immich_machine_learning | │ 64 │ │ immich_machine_learning | │ 65 │ def close(self): │ immich_machine_learning | │ 66 │ │ """Shutdown and close event loop. │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/asyncio/runners.py:77 │ immich_machine_learning | │ in close │ immich_machine_learning | │ │ immich_machine_learning | │ 74 │ │ finally: │ immich_machine_learning | │ 75 │ │ │ if self._set_event_loop: │ immich_machine_learning | │ 76 │ │ │ │ events.set_event_loop(Non │ immich_machine_learning | │ ❱ 77 │ │ │ loop.close() │ immich_machine_learning | │ 78 │ │ │ self._loop = None │ immich_machine_learning | │ 79 │ │ │ self._state = _State.CLOSED │ immich_machine_learning | │ 80 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop.close:1393 │ immich_machine_learning | │ │ immich_machine_learning | │ in uvloop.loop.Loop._close:563 │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | RuntimeError: Cannot close a running event loop immich_machine_learning | [02/07/26 17:14:23] INFO Worker exiting (pid: 93) immich_machine_learning | [02/07/26 17:14:23] ERROR Exception in default exception handler immich_machine_learning | ╭─────── Traceback (most recent call last) ───────╮ immich_machine_learning | │ in uvloop.loop.Loop.call_exception_handler:2422 │ immich_machine_learning | │ │ immich_machine_learning | │ in │ immich_machine_learning | │ uvloop.loop.Loop.default_exception_handler:2374 │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 518 in error │ immich_machine_learning | │ │ immich_machine_learning | │ 1515 │ │ logger.error("Houston, we have a │ immich_machine_learning | │ 1516 │ │ """ │ immich_machine_learning | │ 1517 │ │ if self.isEnabledFor(ERROR): │ immich_machine_learning | │ ❱ 1518 │ │ │ self._log(ERROR, msg, args, │ immich_machine_learning | │ 1519 │ │ immich_machine_learning | │ 1520 │ def exception(self, msg, *args, exc_ │ immich_machine_learning | │ 1521 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 634 in _log │ immich_machine_learning | │ │ immich_machine_learning | │ 1631 │ │ │ │ exc_info = sys.exc_info( │ immich_machine_learning | │ 1632 │ │ record = self.makeRecord(self.na │ immich_machine_learning | │ 1633 │ │ │ │ │ │ │ │ exc_inf │ immich_machine_learning | │ ❱ 1634 │ │ self.handle(record) │ immich_machine_learning | │ 1635 │ │ immich_machine_learning | │ 1636 │ def handle(self, record): │ immich_machine_learning | │ 1637 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 644 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 1641 │ │ well as those created locally. L │ immich_machine_learning | │ 1642 │ │ """ │ immich_machine_learning | │ 1643 │ │ if (not self.disabled) and self. │ immich_machine_learning | │ ❱ 1644 │ │ │ self.callHandlers(record) │ immich_machine_learning | │ 1645 │ │ immich_machine_learning | │ 1646 │ def addHandler(self, hdlr): │ immich_machine_learning | │ 1647 │ │ """ │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:1 │ immich_machine_learning | │ 706 in callHandlers │ immich_machine_learning | │ │ immich_machine_learning | │ 1703 │ │ │ for hdlr in c.handlers: │ immich_machine_learning | │ 1704 │ │ │ │ found = found + 1 │ immich_machine_learning | │ 1705 │ │ │ │ if record.levelno >= hdl │ immich_machine_learning | │ ❱ 1706 │ │ │ │ │ hdlr.handle(record) │ immich_machine_learning | │ 1707 │ │ │ if not c.propagate: │ immich_machine_learning | │ 1708 │ │ │ │ c = None #break out │ immich_machine_learning | │ 1709 │ │ │ else: │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/local/lib/python3.11/logging/__init__.py:9 │ immich_machine_learning | │ 78 in handle │ immich_machine_learning | │ │ immich_machine_learning | │ 975 │ │ if rv: │ immich_machine_learning | │ 976 │ │ │ self.acquire() │ immich_machine_learning | │ 977 │ │ │ try: │ immich_machine_learning | │ ❱ 978 │ │ │ │ self.emit(record) │ immich_machine_learning | │ 979 │ │ │ finally: │ immich_machine_learning | │ 980 │ │ │ │ self.release() │ immich_machine_learning | │ 981 │ │ return rv │ immich_machine_learning | │ │ immich_machine_learning | │ /usr/src/immich_ml/config.py:137 in emit │ immich_machine_learning | │ │ immich_machine_learning | │ 134 │ # hack to exclude certain modules fro │ immich_machine_learning | │ 135 │ def emit(self, record: logging.LogRec │ immich_machine_learning | │ 136 │ │ if record.exc_info is not None: │ immich_machine_learning | │ ❱ 137 │ │ │ tb = record.exc_info[2] │ immich_machine_learning | │ 138 │ │ │ while tb is not None: │ immich_machine_learning | │ 139 │ │ │ │ if any(excluded in tb.tb_ │ immich_machine_learning | │ self.excluded): │ immich_machine_learning | │ 140 │ │ │ │ │ tb.tb_frame.f_locals[ │ immich_machine_learning | ╰─────────────────────────────────────────────────╯ immich_machine_learning | TypeError: 'bool' object is not subscriptable immich_machine_learning | sys:1: RuntimeWarning: coroutine 'CustomUvicornWorker._serve' was never awaited immich_machine_learning | RuntimeWarning: Enable tracemalloc to get the object allocation traceback immich_machine_learning | [02/07/26 17:14:23] ERROR Worker (pid:93) exited with code 255 immich_machine_learning | [02/07/26 17:14:23] ERROR Worker (pid:93) exited with code 255. immich_machine_learning | [02/07/26 17:14:23] INFO Booting worker with pid: 105