[dev] How to keep IMP from blocking other apps

Sebastian Birnbach birnbacs at gmail.com
Wed Jan 9 15:04:08 UTC 2019


In my Horde installation, authentication is done against Horde's prefs
container, i.e. an SQL server. IMP is configured to create its mail server
session on passed-through user login credentials
(imp/config/backends.ocal.php: 'hordeauth' => true).

The mail server is a local dovecot installation. It checks the passed user
credentials against the same SQL server (SQL table 'horde_users'; password
scheme: SHA-512 for both Horde and dovecot).

Please note that the mail server is NOT used for Horde authentication.

Idea of the configuration was to make sure a Horde session can always be
created (except if the SQL server dies, in which case Horde won't run
anyways) and users can conveniently be administered through the Horde
console.

This all worked out and functions as intended. But.



If the mail server dies or, as I recently experienced , takes ~30 seconds
for a response (my misconfiguration), a page request to *any* Horde app
will not be served until IMP has spoken to the mail server. This can be
observed even with most unrelated pages like the user prefs.

That is, once the mail server dies or responds slowly, the rest of Horde is
quite unusable.



I opened RFE #14885, asking for adding an IMP timeout, only to be told that
my problem was a configuration issue.

So, can anybody think of a configuration that keeps IMP from blocking other
apps? I imagine a system configuration where mail is not the only
application of importance should be quite common.

Kind regards

  Seb.


More information about the dev mailing list