Zammad 7 redis upgrade problem

Infos:

  • Used Zammad version: 7 Trixie/Debian 13 (upgrading from 6.5.2)
  • Used Zammad installation type: package
  • Operating system: Debian Trixie

Expected behavior:

  • Working package

Actual behavior:

  • Upgrade starts and throws an error about hiredis
Setting up zammad (7.0.0-1772600692.f3228274.trixie) ...
# REDIS_URL variable set to redis://127.0.0.1:6379.
# Performing connection check.
/opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-client-0.26.4/lib/redis_client.rb:27:in 'RedisClient.driver': Unknown driver :hiredis, expected one of: `[:ruby]` (ArgumentError)

        raise ArgumentError, "Unknown driver #{name.inspect}, expected one of: `#{@driver_definitions.keys.inspect}`"
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-client-0.26.4/lib/redis_client/config.rb:58:in 'RedisClient::Config::Common#initialize'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-client-0.26.4/lib/redis_client/config.rb:214:in 'RedisClient::Config#initialize'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-client-0.26.4/lib/redis_client.rb:225:in 'Class#new'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-client-0.26.4/lib/redis_client.rb:225:in 'RedisClient.config'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-5.4.1/lib/redis/client.rb:24:in 'Redis::Client.config'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-5.4.1/lib/redis.rb:144:in 'Redis#initialize_client'
        from /opt/zammad/vendor/bundle/ruby/3.4.0/gems/redis-5.4.1/lib/redis.rb:75:in 'Redis#initialize'
        from -e:1:in 'Class#new'
        from -e:1:in '<main>'
# Connection check unsuccessful.
ERROR - No redis server found at redis://127.0.0.1:6379.

Redis

redis-cli -h 127.0.0.1 -p 6379 PING
PONG

Filesystem

vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0-static/hiredis
vendor/bundle/ruby/2.7.0/gems/hiredis-0.6.3/

Steps to reproduce the behavior:

  • Upgrade under Trixie
  • Redis driver seems to not be found\
  • Redis is running, and it works with 6.5.2 (no change in /etc/zammad/conf.d/other)
1 Like

Hi,

Did you follow all the steps in the docs for the debian 13 upgrade?
There is a dedicated section in the docs for this:

Yes more or less.
I did update the keyring and source (everything zammad related).
Debian 13 is Debian 13 and up-to-date rebooted.

No messed up sources

grep -r 'zammad' /etc/apt 
/etc/apt/sources.list.d/zammad.list:deb [signed-by=/usr/share/keyrings/zammad.gpg] https://go.packager.io/srv/deb/zammad/zammad/stable/debian/ 13 main
/etc/apt/sources.list.d/zammad.list:# GPG key: https://go.packager.io/srv/deb/zammad/zammad/gpg-key.asc

Postgres and redis are running

What version had you installed before and did you restore it to that machine at some point?

As noted in first post I started on latest 6.5.2.
I think I migrated once between servers, but I did always incremental updates and no huge jumps. Monitoring was OK (added the endpoint to monitoring software)
Any issue I had was resolved. But no issues in recent past.

Ruby is standard version - no 3rd party resource

1 Like

The problem with restores is, that the package manager might loose track of files and fail to remove those. This can also be cascaded from earlier without being a problem for a while.

I think in migration, I did only the fields needed and rest was installed via package or 100% rsync with same version.

I deleted the vendor folder so it is 100% from the package.

Older files

find /opt/zammad -mtime +1 | grep -Eiv './(storage|vendor|\.heroku)/'
./contrib/backup/zammad_backup_custom.sh
./contrib/backup/config
./.eslint-plugin-zammad/tests
./.eslint-plugin-zammad/tests/lib
./var
./var/spool
./var/spool/oversized_mail/*
./tmp/cache/bootsnap/compile-cache-iseq
./storage/*
./public/assets/*

No changes

debsums -s zammad 

Same for

dpkg --verify zammad

Only link issue I found is - but only a bit of docu to non-existing file
AGENTS.md -> .dev/ai-agent-instructions.md

I’ll revisit this thread after my regular job and run a test dist upgrade on my environment. Maybe that helps to see if it’s related to your OS version.

THX - if you need any input, just say do. It seems to be only redis conenction so far and the module can’t be loaded

sudo -u zammad /opt/zammad/bin/ruby -e "require 'hiredis'; puts 'hiredis OK'" 2>&1 || echo "hiredis not available to /opt/zammad ruby"
hiredis not available to /opt/zammad ruby

I tried a lot, and it never loads hiredis, but is in the bundles

I have the same problem, the upgrade fails with the same error.

OS: Ubuntu 24.04
Zammad Version: 6.5.2-1770887709.b0c653ac.noble
Redis Version: 7.0.15

My redis instance is active and running:

#systemctl status redis
â—Ź redis-server.service - Advanced key-value store
Loaded: loaded (/usr/lib/systemd/system/redis-server.service; enabled; preset: enabled)
Active: active (running) since Wed 2026-03-04 20:05:38 CET; 35min ago
Docs: Docs,
man:redis-server(1)
Main PID: 1136 (redis-server)
Status: “Ready to accept connections”
Tasks: 5 (limit: 38417)
Memory: 16.6M (peak: 17.8M)
CPU: 1.121s
CGroup: /system.slice/redis-server.service
└─1136 “/usr/bin/redis-server 127.0.0.1:6379”

Do you have actively set any REDIS_URL in your environment? If not, above issue is not exactly the same I guess.

JFI the issue was resolved today in the morning and should be available in packages by now.

THX for updating the thread. I can confirm it is fixed.
I see the fix in GitHub

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.