[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#9025) Suggested enhancement: Automatically order module loading according to dependencies



Full_Name: James Turner
Version: 2.4
OS: Linux
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (81.86.27.193)


As OpenLDAP 2.4, system administrators have to make sure that they configure the
correct order in which modules are loaded during sever startup. (e.g. load
"back_monitor" last, "auditlog" typically second from last). Configuring this
order incorrectly often prevents the server from starting up, or modules from
functioning as expected.

Is it feasible for a future version of OpenLDAP to determine the correct module
loading order automatically (e.g. using dependency metadata for each module) so
that everything "just works" without the sysadmin having to figure it out by
hand?

Step 1: Parse all the olcModuleList objects under cn=config to obtain a complete
set of {path,module name} tuples.
Step 2: Topologically sort the list based on known dependencies between the
modules.
Step 3: Load the modules in the correctly sorted order.

In terms of design, this arguably strengthens the conceptual model that the
objects under cn=config declare the OpenLDAP configuration which can be modified
as the system runs, rather than an imperative sequence of actions to carry out
at startup.