Skip to content
Back

Redis exception after failed upgrade

  • 0
  • 3
  • Self Hosted
  • General
GamingForLiveYT
1 Apr, 2026, 21:01

After attempting an Update from 1.8.1 to 1.9.0 where i accidentally typed 1.8.0 I've encountered multiple issues with my appwrite instance all of which resulting in it not starting.

I have tried various combinations of running the migration to 1.8.0 1.8.1 and 1.9.0 in various orders in an attempt to make it work again.

My last attempt involved using my backup of the volumes and mariadb dump to restore it into a new install that resulted in an Stack trace error

Due to a major oversight on my part i unfortunately do not have a backup of the vm which truly sucks :pain5:

After starting appwrite by using docker compose up -d i see the login screen but when trying to log in it just "loads" for quiet some time and them basically timing out in a 502 bad gateway. Ive attatched the one error i get over and over again in the docker compose logs below

TypeScript
appwrite-worker-webhooks            | Stack trace:
appwrite-worker-webhooks            | #0 /usr/src/code/vendor/utopia-php/queue/src/Queue/Connection/Redis.php(180): Redis->connect('redis', 6379)
appwrite-worker-webhooks            | #1 /usr/src/code/vendor/utopia-php/queue/src/Queue/Connection/Redis.php(76): Utopia\Queue\Connection\Redis->getRedis()
appwrite-worker-webhooks            | #2 /usr/src/code/vendor/utopia-php/queue/src/Queue/Connection/Redis.php(65): Utopia\Queue\Connection\Redis->rightPop('utopia-queue.qu...', 5)
appwrite-worker-webhooks            | #3 /usr/src/code/vendor/utopia-php/queue/src/Queue/Broker/Redis.php(25): Utopia\Queue\Connection\Redis->rightPopArray('utopia-queue.qu...', 5)
appwrite-worker-webhooks            | #4 /usr/src/code/vendor/utopia-php/queue/src/Queue/Server.php(220): Utopia\Queue\Broker\Redis->consume(Object(Utopia\Queue\Queue), Object(Closure), Object(Closure), Object(Closure))
appwrite-worker-webhooks            | #5 [internal function]: Utopia\Queue\Server->Utopia\Queue\{closure}('0')
appwrite-worker-webhooks            | #6 /usr/src/code/vendor/utopia-php/queue/src/Queue/Adapter/Swoole.php(44): call_user_func(Object(Closure), '0')
appwrite-worker-webhooks            | #7 [internal function]: Utopia\Queue\Adapter\Swoole->Utopia\Queue\Adapter\{closure}(Object(Swoole\Process\Pool), '0')
appwrite-worker-webhooks            | #8 {main}
appwrite-worker-webhooks            |   thrown in /usr/src/code/vendor/utopia-php/queue/src/Queue/Connection/Redis.php on line 180
appwrite-worker-webhooks            | [Worker] Worker 0 is ready!
appwrite-worker-webhooks            | Worker webhooks  started```
TL;DR
The user experienced an issue with a Redis exception after a failed upgrade. They were unable to import data successfully after attempting to migrate to 1.9.0 and faced problems with the MariaDB container. The troubleshooting involved checking environment files, logs, and docker versions. They encountered various errors during the process, like missing data after imports, access denied errors, and server errors. Ultimately, the solution involved revamping the backup file, addressing database schema inconsistencies, and revisiting the import process. In the end, they managed to resolve most issues except for failed volume backups, which required manual intervention.
1 Apr, 2026, 21:51

do you still have the output of the first time you ran the 1.9.0 migrate command?

1 Apr, 2026, 21:59

i dont think so

2 Apr, 2026, 00:12

please share your compose file and the logs for only the appwrite container

2 Apr, 2026, 05:49

ig that would explain it πŸ˜†

2 Apr, 2026, 08:20

Do you see the right values in your .env file? Do they match what's in the (auto-generated) .env backup file? From the compose file, it looks like you're on 1.8.1 so I would suggest upgrading to 1.9.0 and trying to migrate again

2 Apr, 2026, 10:34

yes i do see the right values in the env file i later noticed that it was missing so i copied it into the appwrite directory.

Before migrating to 1.9.1 id like to bring my sql dump back into the instance so i dont losse all of the data as that would be verry annoying tbh.

2 Apr, 2026, 10:34

Here is a log from the mariadb container obtained using docker compose logs mariadb as well as the last part of the logs from docker compose logs appwrite showing that appwrite is waiting on the db worker 1-25 are starting fine

TypeScript
appwrite  |   └── Database not ready. Retrying connection (1)...
appwrite  |   └── Database not ready. Retrying connection (2)...
appwrite  |   └── Database not ready. Retrying connection (3)...
root@appwrite:~/appwrite# docker compose logs mariadb
appwrite-mariadb  | 2026-04-02 08:58:56+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.11.16+maria~ubu2204 started.
appwrite-mariadb  | 2026-04-02 08:58:57+00:00 [Warn] [Entrypoint]: /sys/fs/cgroup///memory.pressure not writable, functionality unavailable to MariaDB
appwrite-mariadb  | 2026-04-02 08:58:57+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
appwrite-mariadb  | 2026-04-02 08:58:57+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.11.16+maria~ubu2204 started.
appwrite-mariadb  | 2026-04-02 08:58:58+00:00 [Note] [Entrypoint]: MariaDB upgrade not required
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] Starting MariaDB 10.11.16-MariaDB-ubu2204 source revision 3218602d3100db9ce7a875511a591cddc173cc16 server_uid 02ajlQ5T8wXWHu+OALVylFHtchs= as process 1
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Number of transaction pools: 1
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] mysqld: O_TMPFILE is not supported on /tmp (disabling future attempts)
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Warning] mysqld: io_uring_queue_init() failed with EPERM: sysctl kernel.io_uring_disabled has the value 2, or 1 and the user of the process is not a member of sysctl kernel.io_uring_group. (see man 2 io_uring_setup).
appwrite-mariadb  | create_uring failed: falling back to libaio
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Using Linux native AIO
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: innodb_buffer_pool_size_max=128m, innodb_buffer_pool_size=128m
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Completed initialization of buffer pool
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: File system buffers for log disabled (block size=512 bytes)
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: End of log at LSN=26049940913
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: 128 rollback segments are active.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Setting file './ibtmp1' size to 12.000MiB. Physically writing the file full; Please wait ...
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: log sequence number 26049940913; transaction id 20818597
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] Plugin 'FEEDBACK' is disabled.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] Server socket created on IP: '0.0.0.0', port: '3306'.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] Server socket created on IP: '::', port: '3306'.
appwrite-mariadb  | 2026-04-02  8:58:58 0 [Note] mysqld: ready for connections.
appwrite-mariadb  | Version: '10.11.16-MariaDB-ubu2204'  socket: '/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
appwrite-mariadb  | 2026-04-02  8:58:59 0 [Note] InnoDB: Buffer pool(s) load completed at 260402  8:58:59```
2 Apr, 2026, 16:43

what version of docker and docker compose do you have?

2 Apr, 2026, 16:45

what do the appwrite docker logs show once it stops retrying?

2 Apr, 2026, 17:46

Ive got V5.0.0

The logs are attatched as a file once filterd just for appwrite and once as an entire docker compose logs

2 Apr, 2026, 19:53

How did you get that V5.0.0? There should be two versions. 1 for docker and 1 for compose.

2 Apr, 2026, 20:07

i got it via docker compose version

TypeScript
Client: Docker Engine - Community
 Version:           29.1.3
 API version:       1.52
 Go version:        go1.25.5
 Git commit:        f52814d
 Built:             Fri Dec 12 14:49:51 2025
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          29.1.3
  API version:      1.52 (minimum version 1.44)
  Go version:       go1.25.5
  Git commit:       fbf3ed2
  Built:            Fri Dec 12 14:49:51 2025
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v2.2.1
  GitCommit:        dea7da592f5d1d2b7755e3a161be07f43fad8f75
 runc:
  Version:          1.3.4
  GitCommit:        v1.3.4-0-gd6d73eb8
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
root@appwrite:~# docker compose version
Docker Compose version v5.0.0```
2 Apr, 2026, 23:43

ok latest docker

2 Apr, 2026, 23:43

docker compose is a little old, but it should be fine

1
2 Apr, 2026, 23:47

so looking at the logs, it looks like redis is having issues

2 Apr, 2026, 23:47

what's the output of docker compose ps -a?

2 Apr, 2026, 23:48
2 Apr, 2026, 23:49

ya you can see redis is restarting

2 Apr, 2026, 23:49

yea ik

2 Apr, 2026, 23:50
TypeScript
1182 β”‚ appwrite-redis                    | 1:C 02 Apr 2026 09:05:02.012 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1183 β”‚ appwrite-redis                    | 1:C 02 Apr 2026 09:05:02.012 * Redis version=7.2.4, bits=64, commit=00000000, modified=0, pid=1, just started
1184 β”‚ appwrite-redis                    | 1:C 02 Apr 2026 09:05:02.012 * Configuration loaded
1185 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.013 * Increased maximum number of open files to 10032 (it was originally set to 1024).
1186 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.013 * monotonic clock: POSIX clock_gettime
1187 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.013 * Running mode=standalone, port=6379.
1188 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.014 * Server initialized
1189 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.014 # Can't handle RDB format version 12
1190 β”‚ appwrite-redis                    | 1:M 02 Apr 2026 09:05:02.014 # Fatal error loading the DB, check server logs. Exiting.
1191 β”‚ appwrite-redis                    | 1:C 02 Apr 2026 09:06:03.561 # 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.
2 Apr, 2026, 23:51

looks like smth ive send before

2 Apr, 2026, 23:51

weird...

2 Apr, 2026, 23:51

we didn't change redis between 1.8.1 and 1.9.0

2 Apr, 2026, 23:52

perhaps between 1.8.0 and 1.91.? as ive accidentally typed 1.8.0 instead of 1.9.0 when trying to upgrade to the 1.9.0 on the first try

Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more