Package: slapd
Version: 2.2.26-5
Severity: wishlist

Experience told me that it is very important for BDB backend stability to have
a DB_CONFIG file in the database path.

I modified a bit /etc/init.d/slapd so that it checks the presence of this file.
Please find attached the patch.

Here's an example of output if the file is not present:

# /etc/init.d/slapd restart
Stopping OpenLDAP: slapd.
Starting OpenLDAP: Warning: DB_CONFIG not present in /var/lib/ldap, please read 
/usr/share/doc/slapd/README.DB_CONFIG.gz, running BDB recovery, slapd.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.14-2-686
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)

Versions of packages slapd depends on:
ii  coreutils [fileutils]         5.93-5     The GNU core utilities
ii  debconf                       1.4.59     Debian configuration management sy
ii  fileutils                     5.93-5     The GNU file management utilities 
ii  libc6                         2.3.5-8    GNU C Library: Shared libraries an
ii  libdb4.2                      4.2.52-20  Berkeley v4.2 Database Libraries [
ii  libiodbc2                     3.52.3-1   iODBC Driver Manager
ii  libldap-2.2-7                 2.2.26-5   OpenLDAP libraries
ii  libltdl3                      1.5.20-2   A system independent dlopen wrappe
ii  libperl5.8                    5.8.7-8    Shared Perl library
ii  libsasl2                      2.1.19-1.7 Authentication abstraction library
ii  libslp1                       1.2.1-3    OpenSLP libraries
ii  libssl0.9.8                   0.9.8a-4   SSL shared libraries
ii  libwrap0                      7.6.dbs-8  Wietse Venema's TCP wrappers libra
ii  perl [libmime-base64-perl]    5.8.7-8    Larry Wall's Practical Extraction 
ii  psmisc                        21.8-1     Utilities that use the proc filesy

Versions of packages slapd recommends:
ii  db4.2-util                    4.2.52-20  Berkeley v4.2 Database Utilities
pn  libsasl2-modules              <none>     (no description available)

-- debconf information:
  slapd/fix_directory: true
* shared/organization: MAFIA
  slapd/upgrade_slapcat_failure:
* slapd/backend: LDBM
* slapd/allow_ldap_v2: false
* slapd/no_configuration: false
* slapd/move_old_database: true
  slapd/suffix_change: false
  slapd/slave_databases_require_updateref:
* slapd/dump_database_destdir: /var/backups/slapd-VERSION
  slapd/autoconf_modules: true
* slapd/domain: linbox.com
  slapd/password_mismatch:
* slapd/invalid_config: true
  slapd/upgrade_slapadd_failure:
* slapd/dump_database: when needed
* slapd/migrate_ldbm_to_bdb: false
* slapd/purge_database: false
--- slapd.old   2005-12-03 14:55:35.000000000 +0100
+++ slapd       2005-12-03 15:00:43.000000000 +0100
@@ -235,6 +235,18 @@
 start() {
        echo -n "Starting OpenLDAP:"
        trap 'report_failure' 0
+
+       bdb_envs=`find_bdb_envs`
+
+       # We care only about BDB environments
+       if [ ! -z "$bdb_envs" ]; then
+           for dbdir in $bdb_envs; do
+               if [ ! -e $dbdir/DB_CONFIG ]; then
+                   echo -n " Warning: DB_CONFIG not present in $dbdir, please 
read /usr/share/doc/slapd/README.DB_CONFIG.gz,"
+               fi
+           done
+       fi
+
        if [ "$TRY_BDB_RECOVERY" = "yes" ]; then
                try_fix_db
        fi

Reply via email to