I have two web servers with a Magento instance on both. Each shares the same httpd.conf, php.ini and my.cnf, along with local.xml and config.xml magento configuration files.
I have another server that stores both the shared DB and shared Memcache instance. Both Magento web servers are able to successfully hit the DB instance, but only ONE of the Magento instances is working properly with memcache.
When I make a request to the magento instance that is NOT working w/memcache, I get the following error:
There has been an error processing your request
Warning: session_start() [function.session-start]: open(tcp://INTERNAL_IP_OF_MEMCACHE_SERVER:11211?persistent=1&weight=2&timeout=10&retry_interval=10/sess_9bmgdui99pr39fagpnoa53prl5, O_RDWR) failed: No such file or directory (2) in /var/www/html/production-host/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 113
Trace:
#0 [internal function]: mageCoreErrorHandler(2, 'session_start()...', '/var/www/html/p...', 113, Array)
#1 /var/www/html/production-host/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php(113): session_start()
#2 /var/www/html/production-host/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php(153): Mage_Core_Model_Session_Abstract_Varien->start('frontend')
#3 /var/www/html/production-host/app/code/core/Mage/Core/Model/Session/Abstract.php(84): Mage_Core_Model_Session_Abstract_Varien->init('core', 'frontend')
#4 /var/www/html/production-host/app/code/core/Mage/Core/Model/Session.php(39): Mage_Core_Model_Session_Abstract->init('core', 'frontend')
#5 /var/www/html/production-host/app/code/core/Mage/Core/Model/Config.php(1206): Mage_Core_Model_Session->__construct(Array)
#6 /var/www/html/production-host/app/Mage.php(432): Mage_Core_Model_Config->getModelInstance('core/session', Array)
#7 /var/www/html/production-host/app/Mage.php(446): Mage::getModel('core/session', Array)
#8 /var/www/html/production-host/app/code/core/Mage/Core/Controller/Varien/Action.php(483): Mage::getSingleton('core/session', Array)
#9 /var/www/html/production-host/app/code/core/Mage/Core/Controller/Front/Action.php(59): Mage_Core_Controller_Varien_Action->preDispatch()
#10 /var/www/html/production-host/app/code/core/Mage/Core/Controller/Varien/Action.php(407): Mage_Core_Controller_Front_Action->preDispatch()
#11 /var/www/html/production-host/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(254): Mage_Core_Controller_Varien_Action->dispatch('index')
#12 /var/www/html/production-host/app/code/core/Mage/Core/Controller/Varien/Front.php(177): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#13 /var/www/html/production-host/app/code/core/Mage/Core/Model/App.php(304): Mage_Core_Controller_Varien_Front->dispatch()
#14 /var/www/html/production-host/app/Mage.php(596): Mage_Core_Model_App->run(Array)
#15 /var/www/html/production-host/index.php(83): Mage::run('', 'store')
#16 {main}
I've successfully telneted from the this above machine to the memcache server onto port 11211 and I can connect to the memcache instance fine. I've also made sure each system has the correct extensions installed via php -m and diff'd the output of "php_info" (they are identical).
I realize the session_start() is having an issue connecting to the memcache instance, but I don't understand why? TIA!
EDIT/UPDATE:
This is Magento enterprise version: 1.5 I believe (checking now) and the local.xml is:
> <config> <global>
> <install>
> <date><![CDATA[REDACTED]]></date>
> </install>
> <crypt>
> <key><![CDATA[REDACTED]]></key>
> </crypt>
> <disable_local_modules>false</disable_local_modules>
> <resources>
> <db>
> <table_prefix></table_prefix>
> </db>
> <default_setup>
> <connection>
> <host><![CDATA[REDACTED]]></host>
> <username><![CDATA[REDACTED]]></username>
> <password><![CDATA[REDACTED]]></password>
> <dbname><![CDATA[REDACTED]]></dbname>
> <active>1</active>
> </connection>
> </default_setup>
> </resources>
> <session_save><![CDATA[memcached]]></session_save>
>
> <session_save_path><![CDATA[tcp://REDACTED:11211?persistent=1&weight=2&timeout=10&retry_interval=10]]></session_save_path>
> <session_cache_limiter></session_cache_limiter> <cache>
> <slow_backend>database</slow_backend>
> <fast_backend>Memcached</fast_backend> <fast_backend_options>
> <servers>
> <server>
> <host>REDACTED</host>
> <port>11211</port>
> <persistent>1</persistent>
> </server> </servers> </fast_backend_options>
>
> <backend>memcached</backend> <memcached> <servers>
> <server>
> <host>REDACTED</host>
> <port>11211</port>
> <persistent>1</persistent>
> </server> </servers> <compression><![CDATA[0]]></compression>
> <cache_dir><![CDATA[]]></cache_dir>
> <hashed_directory_level><![CDATA[]]></hashed_directory_level>
> <hashed_directory_umask><![CDATA[]]></hashed_directory_umask>
> <file_name_prefix><![CDATA[]]></file_name_prefix> </memcached>
> </cache> </global> <admin>
> <routers>
> <adminhtml>
> <args>
> <frontName><![CDATA[REDACTED]]></frontName>
> </args>
> </adminhtml>
> </routers> </admin> </config>
And these are the values in the file right before it calls "session_start":
[x] method = memcached
[x] savepath = tcp://REDACTED:11211?persistent=1&weight=2&timeout=10&retry_interval=10
UPDATE:
I've also created a test script that contains:
$fp = fsockopen('REDACTED', '11211');
if (!$fp)
{
And I run it as apache:
sudo -u apache php test.php
and it is able to connect fine.