[Tickets #14998] Re: Support for redis-sentinel

noreply at bugs.horde.org noreply at bugs.horde.org
Mon May 11 13:00:59 UTC 2020


BITTE NICHT AUF DIESE NACHRICHT ANTWORTEN. NACHRICHTEN AN DIESE  
E-MAIL-ADRESSE WERDEN NICHT GELESEN.

Ticket-URL: https://bugs.horde.org/ticket/14998
------------------------------------------------------------------------------
  Ticket           | 14998
  Aktualisiert Von | michael.menge at zdv.uni-tuebingen.de
  Zusammenfassung  | Support for redis-sentinel
  Warteschlange    | Horde Framework Packages
  Typ              | Enhancement
  Status           | Resolved
  Priorität        | 2. Medium
  Milestone        |
  Patch            | 1
  Zuständige       | Jan Schneider
------------------------------------------------------------------------------


michael.menge at zdv.uni-tuebingen.de (2020-05-11 13:00) hat geschrieben:

TLDR The Release of Horde 5.2.22 on 20.04.2020 enabled the configuration
of redis sentinel without the update of the Hashtable that is required  
to use redis sentinel.

Here is the Error message

EMERG: HORDE ERR unknown command `SETNX`, with args beginning with:  
`hht_45289762969fd88794817c4c5ad82ce6_l`, `1`,  [pid 22546 on line 370  
of "/usr/share/pear/Predis/Client.php"]

DEBUG: HORDE  1. Horde_Registry::appInit() /var/www/html/horde/index.php:18
  2. Horde_Registry->__construct() /usr/share/pear/Horde/Registry.php:287
  3. Horde_Session->setup() /usr/share/pear/Horde/Registry.php:535
  4. Horde_Session->start() /usr/share/pear/Horde/Session.php:188
  5. session_start() /usr/share/pear/Horde/Session.php:204
  6. Horde_SessionHandler->read()
  7. Horde_SessionHandler_Storage_Hashtable->read()  
/usr/share/pear/Horde/SessionHandler.php:169
  8. Horde_HashTable_Predis->lock()  
/usr/share/pear/Horde/SessionHandler/Storage/Hashtable.php:96
  9. Predis\Client->__call() /usr/share/pear/Horde/HashTable/Predis.php:187
10. Predis\Client->executeCommand() /usr/share/pear/Predis/Client.php:314
11. Predis\Client->onErrorResponse() /usr/share/pear/Predis/Client.php:335

SETNX is a Redis command, that can not be uses on theredis-sentinel server.

# grep hashtable conf.php
$conf['sessionhandler']['hashtable'] = false;
$conf['hashtable']['params']['hostspec'] =  
array('dbtest1.mail.localhost', 'dbtest2.mail.localhost',  
'dbtest.mail.localhost');
$conf['hashtable']['params']['port'] = array('26379', '26379', '26379');
$conf['hashtable']['params']['service'] = 'mymaster';
$conf['hashtable']['params']['replication'] = 'sentinel';
$conf['hashtable']['params']['protocol'] = 'tcp';
$conf['hashtable']['params']['persistent'] = false;
$conf['hashtable']['driver'] = 'Predis';

I have configured the redis-sentinel servers (Port 26379) but without  
the patch of
Horde/Core/Factory/HashTable.php which has not been released jet, Predis does
not know that that it is talking to the redis-sentinel

It works finde if the normal redis is configured (replication = none)  
but without the
advantages of redis-sentinel









More information about the bugs mailing list