⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

[5.x]: Incompatible with yiisoft/yii2-redis 2.1.0 #754

@timoschwarzer

Description

@timoschwarzer

What happened?

Description

I am using Redis sessions as described in the docs here.
Having "yiisoft/yii2-redis": "2.0.*" as dependency works, upgrading to it to 2.1.x throws the error described below. The PHP redis extension is properly installed.

Steps to reproduce

  1. Update yiisoft/yii2-redis to 2.1.0.
  2. Use redis sessions

Expected behavior

It should work as it does with yiisoft/yii2-redis 2.0.x.

Actual behavior

Craft crashes on web requests with the following error:

Error stack trace
An Error occurred while handling another error:
yii\di\NotInstantiableException: Can not instantiate yii\redis\ConnectionInterface. in /app/vendor/yiisoft/yii2/di/Container.php:408
Stack trace:
#0 /app/vendor/yiisoft/yii2/di/Container.php(170): yii\di\Container->build('yii\\redis\\Conne...', Array, Array)
craftcms/cms#1 /app/vendor/yiisoft/yii2/di/Instance.php(126): yii\di\Container->get('yii\\redis\\Conne...', Array, Array)
craftcms/cms#2 /app/vendor/yiisoft/yii2-redis/src/Session.php(83): yii\di\Instance::ensure(Array, 'yii\\redis\\Conne...')
craftcms/cms#3 /app/vendor/yiisoft/yii2/base/BaseObject.php(109): yii\redis\Session->init()
craftcms/cms#4 [internal function]: yii\base\BaseObject->__construct(Array)
craftcms/cms#5 /app/vendor/yiisoft/yii2/di/Container.php(419): ReflectionClass->newInstanceArgs(Array)
craftcms/cms#6 /app/vendor/yiisoft/yii2/di/Container.php(170): yii\di\Container->build('yii\\redis\\Sessi...', Array, Array)
craftcms/cms#7 /app/vendor/yiisoft/yii2/BaseYii.php(365): yii\di\Container->get('yii\\redis\\Sessi...', Array, Array)
craftcms/cms#8 /app/vendor/craftcms/cms/src/Craft.php(70): yii\BaseYii::createObject(Array, Array)
craftcms/cms#9 /app/config/app.web.php(40): Craft::createObject(Array)
craftcms/cms#10 [internal function]: craft\services\Config->{closure}()
craftcms/cms#11 /app/vendor/yiisoft/yii2/di/Container.php(633): call_user_func_array(Object(Closure), Array)
craftcms/cms#12 /app/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->invoke(Object(Closure), Array)
craftcms/cms#13 /app/vendor/yiisoft/yii2/di/ServiceLocator.php(137): yii\BaseYii::createObject(Object(Closure))
craftcms/cms#14 /app/vendor/yiisoft/yii2/base/Module.php(766): yii\di\ServiceLocator->get('session', true)
craftcms/cms#15 /app/vendor/craftcms/cms/src/web/Application.php(379): yii\base\Module->get('session', true)
craftcms/cms#16 /app/vendor/yiisoft/yii2/web/Application.php(178): craft\web\Application->get('session')
craftcms/cms#17 /app/vendor/craftcms/cms/src/web/View.php(2310): yii\web\Application->getSession()
craftcms/cms#18 /app/vendor/craftcms/cms/src/web/View.php(1511): craft\web\View->registerAssetFlashes()
craftcms/cms#19 /app/vendor/yiisoft/yii2/views/errorHandler/exception.php(538): craft\web\View->endBody()
craftcms/cms#20 /app/vendor/yiisoft/yii2/base/View.php(348): require('/app/vendor/yii...')
craftcms/cms#21 /app/vendor/yiisoft/yii2/base/View.php(258): yii\base\View->renderPhpFile('/app/vendor/yii...', Array)
craftcms/cms#22 /app/vendor/yiisoft/yii2/web/ErrorHandler.php(270): yii\base\View->renderFile('/app/vendor/yii...', Array, Object(craft\web\ErrorHandler))
craftcms/cms#23 /app/vendor/yiisoft/yii2/web/ErrorHandler.php(126): yii\web\ErrorHandler->renderFile('@yii/views/erro...', Array)
craftcms/cms#24 /app/vendor/craftcms/cms/src/web/ErrorHandler.php(225): yii\web\ErrorHandler->renderException(Object(yii\di\NotInstantiableException))
#25 /app/vendor/yiisoft/yii2/base/ErrorHandler.php(152): craft\web\ErrorHandler->renderException(Object(yii\di\NotInstantiableException))
#26 /app/vendor/craftcms/cms/src/web/ErrorHandler.php(102): yii\base\ErrorHandler->handleException(Object(yii\di\NotInstantiableException))
#27 [internal function]: craft\web\ErrorHandler->handleException(Object(yii\di\NotInstantiableException))
#28 {main}
Previous exception:
yii\di\NotInstantiableException: Can not instantiate yii\redis\ConnectionInterface. in /app/vendor/yiisoft/yii2/di/Container.php:408
Stack trace:
#0 /app/vendor/yiisoft/yii2/di/Container.php(170): yii\di\Container->build('yii\\redis\\Conne...', Array, Array)
craftcms/cms#1 /app/vendor/yiisoft/yii2/di/Instance.php(126): yii\di\Container->get('yii\\redis\\Conne...', Array, Array)
craftcms/cms#2 /app/vendor/yiisoft/yii2-redis/src/Cache.php(174): yii\di\Instance::ensure(Array, 'yii\\redis\\Conne...')
craftcms/cms#3 /app/vendor/yiisoft/yii2/base/BaseObject.php(109): yii\redis\Cache->init()
craftcms/cms#4 [internal function]: yii\base\BaseObject->__construct(Array)
craftcms/cms#5 /app/vendor/yiisoft/yii2/di/Container.php(419): ReflectionClass->newInstanceArgs(Array)
craftcms/cms#6 /app/vendor/yiisoft/yii2/di/Container.php(170): yii\di\Container->build('yii\\redis\\Cache', Array, Array)
craftcms/cms#7 /app/vendor/yiisoft/yii2/BaseYii.php(365): yii\di\Container->get('yii\\redis\\Cache', Array, Array)
craftcms/cms#8 /app/vendor/craftcms/cms/src/Craft.php(70): yii\BaseYii::createObject(Array, Array)
craftcms/cms#9 /app/config/app.php(42): Craft::createObject(Array)
craftcms/cms#10 [internal function]: craft\services\Config->{closure}()
craftcms/cms#11 /app/vendor/yiisoft/yii2/di/Container.php(633): call_user_func_array(Object(Closure), Array)
craftcms/cms#12 /app/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->invoke(Object(Closure), Array)
craftcms/cms#13 /app/vendor/yiisoft/yii2/di/ServiceLocator.php(137): yii\BaseYii::createObject(Object(Closure))
craftcms/cms#14 /app/vendor/yiisoft/yii2/base/Module.php(766): yii\di\ServiceLocator->get('cache', false)
craftcms/cms#15 /app/vendor/craftcms/cms/src/web/Application.php(379): yii\base\Module->get('cache', false)
craftcms/cms#16 /app/vendor/yiisoft/yii2/base/Application.php(524): craft\web\Application->get('cache', false)
craftcms/cms#17 /app/vendor/craftcms/cms/src/services/ProjectConfig.php(1843): yii\base\Application->getCache()
craftcms/cms#18 /app/vendor/craftcms/cms/src/services/ProjectConfig.php(1776): craft\services\ProjectConfig->_loadInternalConfig()
craftcms/cms#19 /app/vendor/craftcms/cms/src/services/ProjectConfig.php(1791): craft\services\ProjectConfig->getInternalConfig()
craftcms/cms#20 /app/vendor/craftcms/cms/src/services/ProjectConfig.php(462): craft\services\ProjectConfig->getCurrentWorkingConfig()
craftcms/cms#21 /app/vendor/craftcms/cms/src/base/ApplicationTrait.php(1841): craft\services\ProjectConfig->get('system.edition')
craftcms/cms#22 /app/vendor/craftcms/cms/src/base/ApplicationTrait.php(1581): craft\web\Application->_setCraftEdition()
craftcms/cms#23 /app/vendor/craftcms/cms/src/web/Application.php(100): craft\web\Application->_preInit()
craftcms/cms#24 /app/vendor/yiisoft/yii2/base/BaseObject.php(109): craft\web\Application->init()
#25 /app/vendor/yiisoft/yii2/base/Application.php(204): yii\base\BaseObject->__construct(Array)
#26 [internal function]: yii\base\Application->__construct(Array)
#27 /app/vendor/yiisoft/yii2/di/Container.php(419): ReflectionClass->newInstanceArgs(Array)
#28 /app/vendor/yiisoft/yii2/di/Container.php(170): yii\di\Container->build('craft\\web\\Appli...', Array, Array)
#29 /app/vendor/yiisoft/yii2/BaseYii.php(365): yii\di\Container->get('craft\\web\\Appli...', Array, Array)
#30 /app/vendor/craftcms/cms/src/Craft.php(70): yii\BaseYii::createObject(Array, Array)
#31 /app/vendor/craftcms/cms/bootstrap/bootstrap.php(306): Craft::createObject(Array)
#32 /app/vendor/craftcms/cms/bootstrap/web.php(35): require('/app/vendor/cra...')
#33 /app/web/index.php(11): require('/app/vendor/cra...')
#34 {main}

Craft CMS version

Craft Pro 5.8.21

PHP version

8.3. / 8.4.x / 8.5.1

Operating system and version

Linux 6.12.63-1-lts

Database type and version

PostgreSQL 15.15

Image driver and version

GD 8.5.1

Installed plugins and versions

Calendarize dev-master
Expanded Singles 3.0.3
Formie 3.1.6
Meilisearch Connect dev-feature/job-names
Redactor 4.2.0
Redactor Anchors 1.5.0
Schedule 0.6.2
Vite 5.0.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugNon-content problems with the navigation or display of the documentation.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions