redis timeout with predis

10,056

I think this is because of idle connections are getting closed by default by Redis.

redis.conf

# Close the connection after a client is idle for N seconds (0 to disable)
timeout 0
Share:
10,056
Patrick
Author by

Patrick

Updated on June 04, 2022

Comments

  • Patrick
    Patrick almost 2 years

    I'm using redis with php (predis at http://github.com/nrk/predis/) and am experiencing frequent timeout. The stack trace shows:

    [04-Apr-2010 03:39:50] PHP Fatal error:  Uncaught exception 'Predis_ClientException' with message 'Connection timed out' in redis.php:697
    Stack trace:
    #0 redis.php(757): Predis_Connection->connect()
    #1 redis.php(729): Predis_Connection->getSocket()
    #2 redis.php(825): Predis_Connection->writeCommand(Object(Predis_Commands_ListRange))
    #3 redis.php(165): Predis_ConnectionCluster->writeCommand(Object(Predis_Commands_ListRange))
    #4 redis.php(173): Predis_Client->executeCommandInternal(Object(Predis_ConnectionCluster), Object(Predis_Commands_ListRange))
    #5 redis.php(157): Predis_Client->executeCommand(Object(Predis_Commands_ListRange))
    #6 [internal function]: Predis_Client->__call('lrange', Array)
    

    This happens consistently and I have no idea why. Anyone has any idea?

  • mixdev
    mixdev over 11 years
    Shouldn't the idle connections be closed after few seconds before it hits the maximum connections allowed?
  • Matt K
    Matt K over 10 years
    0 means the timeout is disabled, and by default it's set to 0... so that shouldn't be the timeout issue, but as stated by @SuneRievers below there is a bug with that functionality.