colinmollenhour / Cm_RedisSession

Redis-based session handler for Magento with optimistic locking
208 stars 121 forks source link

Configuration changes don't take effect #168

Closed dandrikop closed 5 years ago

dandrikop commented 5 years ago

On Magento 1.7.0.2. I have initially setup the file /app/etc/local.xml, so that Redis is used for both Session and Cache storage by installing the appropriate extensions from https://github.com/colinmollenhour.

I tried to change the Session storage from Redis back to Database by making the appropriate changes to the file /app/etc/local.xml, while keeping Redis for Cache storage, only. Then I flushed Magento cache from the Admin back-end, and I also refreshed the 9 caches. Given that Redis was used for both Session and Cache storage, no files were in the directories /var/session and /var/cache.

After navigating to Magento front-end, I noticed that the database table "core_session" was not filling up with any records. Indeed, via SSH I ran the command below, and noticed that session data was being still stored to Redis:

redis-cli monitor | grep "[0 127.0.0.1"

"0" was the Redis database ID initially assigned for Session storage in the file /app/etc/local.xml.

So, it seems that the changes in the file /app/etc/local.xml didn't take effect. Is there any possibility that Magento configuration data is cached? I also use a Full Page Cache extension, but this uses Redis Cache Storage as declared in the file /app/etc/local.xml.

How can I make these changes in the file /app/etc/local.xml take effect?

colinmollenhour commented 5 years ago

You need to disable or remove Cm_RedisSession if you do not want to use MySQL for storage rather than Redis. This is because Magneto doesn't really offer a proper way to add new backends and this module has to effectively "replace" the db backend.

dandrikop commented 5 years ago

Thanks for the really prompt reply. Also, these two extensions Cm_RedisSession and Cm_Cache_Backend_Redis really boosted my Magento website.

So, the problem is just with MySQL. For example, if I create a second Redis instance to be used solely for session storage and keep the existing Redis instance for cache storage only, then will the relevant changes in /app/etc/local.xml file take effect immediately, or I need to take further action besides the update of /app/etc/local.xml file per se?

colinmollenhour commented 5 years ago

I definitely recommend using separate Redis instances for session and cache. Should just work after updating local.xml but if not then rebuild the cache.