Skip to content

Cache in Redis cluster doesn't work #182

@mrhackcz

Description

@mrhackcz

Summary

PHP Warning:  igbinary_unserialize_header: unsupported version: "MOVE"..., should begin with a binary version header of "\x00\x00\x00\x01" or "\x00\x00\x00\x02" in /var/www/oro/original/current/vendor/symfony/cache/Marshaller/DefaultMarshaller.php on line 77
  [Predis\NotSupportedException]                   
  Cannot use 'INFO' over clusters of connections.  

Steps to reproduce

session_handler_dsn: 'redis:?host[192.168.1.1:6383]?host[192.168.1.1:6384]&host[192.168.1.2:6383]&host[192.168.1.2:6384]&host[192.168.1.3:6383]&host[192.168.1.1:6384]&cluster=predis&failover=error&persistent=1&persistent_id=oro_orig&timeout=5&prefix=ORO:ORIG:SESSIONS:'
redis_dsn_cache: 'redis:?host[192.168.1.1:6383]?host[192.168.1.1:6384]&host[192.168.1.2:6383]&host[192.168.1.2:6384]&host[192.168.1.3:6383]&host[192.168.1.1:6384]&cluster=predis&failover=error&persistent=1&persistent_id=oro_orig&timeout=5&prefix=ORO:ORIG:CACHE:'
redis_dsn_doctrine: 'redis://127.0.0.1:6379/101'
redis_dsn_layout: 'redis://127.0.0.1:6379/102'

php8.5 /usr/local/bin/composer platform:update:dry-run

Actual Result

php8.5 /usr/local/bin/composer platform:update:dry-run

Deprecation Notice: The predefined locally scoped $http_response_header variable is deprecated, call http_get_last_response_headers() instead in phar:///usr/local/bin/composer-2.8.8/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/FileGetContents.php:57

> console oro:platform:update --timeout=0 --no-interaction --no-ansi

PHP Warning:  igbinary_unserialize_header: unsupported version: "MOVE"..., should begin with a binary version header of "\x00\x00\x00\x01" or "\x00\x00\x00\x02" in /var/www/oro/original/current/vendor/symfony/cache/Marshaller/DefaultMarshaller.php on line 77
Check system requirements

In PredisCluster.php line 134:
                                                   
  [Predis\NotSupportedException]                   
  Cannot use 'INFO' over clusters of connections.  
                                                   

Exception trace:
  at /var/www/oro/original/current/vendor/predis/predis/src/Connection/Aggregate/PredisCluster.php:134
 Predis\Connection\Aggregate\PredisCluster->getConnection() at /var/www/oro/original/current/vendor/predis/predis/src/Connection/Aggregate/PredisCluster.php:217
 Predis\Connection\Aggregate\PredisCluster->executeCommand() at /var/www/oro/original/current/vendor/predis/predis/src/Client.php:331
 Predis\Client->executeCommand() at /var/www/oro/original/current/vendor/predis/predis/src/Client.php:313
 Predis\Client->__call() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/RedisConfigBundle/Provider/RedisRequirementsProvider.php:63
 Oro\Bundle\RedisConfigBundle\Provider\RedisRequirementsProvider->addVersionAndConfigurationRequirements() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/RedisConfigBundle/Provider/RedisRequirementsProvider.php:35
 Oro\Bundle\RedisConfigBundle\Provider\RedisRequirementsProvider->getOroRequirements() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/InstallerBundle/Command/CheckRequirementsCommand.php:167
 Oro\Bundle\InstallerBundle\Command\CheckRequirementsCommand->getAllCollections() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/InstallerBundle/Command/CheckRequirementsCommand.php:75
 Oro\Bundle\InstallerBundle\Command\CheckRequirementsCommand->execute() at /var/www/oro/original/current/vendor/symfony/console/Command/Command.php:341
 Symfony\Component\Console\Command\Command->run() at /var/www/oro/original/current/vendor/symfony/console/Application.php:1102
 Symfony\Component\Console\Application->doRunCommand() at /var/www/oro/original/current/vendor/symfony/framework-bundle/Console/Application.php:123
 Symfony\Bundle\FrameworkBundle\Console\Application->doRunCommand() at /var/www/oro/original/current/vendor/symfony/console/Application.php:356
 Symfony\Component\Console\Application->doRun() at /var/www/oro/original/current/vendor/symfony/framework-bundle/Console/Application.php:77
 Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /var/www/oro/original/current/vendor/symfony/console/Application.php:195
 Symfony\Component\Console\Application->run() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/InstallerBundle/CommandExecutor.php:126
 Oro\Bundle\InstallerBundle\CommandExecutor->runCommand() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/InstallerBundle/Command/PlatformUpdateCommand.php:228
 Oro\Bundle\InstallerBundle\Command\PlatformUpdateCommand->checkRequirements() at /var/www/oro/original/current/vendor/oro/platform/src/Oro/Bundle/InstallerBundle/Command/PlatformUpdateCommand.php:104
 Oro\Bundle\InstallerBundle\Command\PlatformUpdateCommand->execute() at /var/www/oro/original/current/vendor/symfony/console/Command/Command.php:341
 Symfony\Component\Console\Command\Command->run() at /var/www/oro/original/current/vendor/symfony/console/Application.php:1102
 Symfony\Component\Console\Application->doRunCommand() at /var/www/oro/original/current/vendor/symfony/framework-bundle/Console/Application.php:123
 Symfony\Bundle\FrameworkBundle\Console\Application->doRunCommand() at /var/www/oro/original/current/vendor/symfony/console/Application.php:356
 Symfony\Component\Console\Application->doRun() at /var/www/oro/original/current/vendor/symfony/framework-bundle/Console/Application.php:77
 Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /var/www/oro/original/current/vendor/symfony/console/Application.php:195
 Symfony\Component\Console\Application->run() at /var/www/oro/original/current/vendor/symfony/runtime/Runner/Symfony/ConsoleApplicationRunner.php:49
 Symfony\Component\Runtime\Runner\Symfony\ConsoleApplicationRunner->run() at /var/www/oro/original/current/vendor/autoload_runtime.php:40
 require_once() at /var/www/oro/original/current/bin/console:16

oro:check-requirements


In CommandExecutor.php line 285:
                                                 
  The command  terminated with an exit code: 1.  
                                                 

oro:check-requirements

Script console oro:platform:update --timeout=0 --no-interaction --no-ansi handling the platform:update:dry-run event returned with error code 1

Expected Result

Details about your environment

  • OroCommerce version: CE 7.0.0-RC
  • PHP version: 8.5.12
  • Database (MySQL, PostgreSQL) version:
    • Postgres 17.4
    • Redis 8.2 - Cluster
  • Ubuntu 22
  • Nginx + PHP-FPM
$ php8.5 -m
[PHP Modules]
amqp
apcu
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
FFI
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
igbinary
imagick
imap
intl
json
lexbor
libxml
mbstring
mongodb
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
pspell
random
readline
redis
Reflection
session
shmop
SimpleXML
soap
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
uri
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions