RE: openldap service stop cause database corruption

Antonini Gabriele <[email protected]>
Newsgroups gmane.network.openldap.general
Message-ID <81CE9E6CC58F7948868DF703A374EF83AF190E67@pomsx01.intranet.giunti.it>
> I don't know about CentOS, but if it's anything like Redhat, the
> system provided init scripts are very hostile to processes that don't
> shut down fast enough.
> 
> The killproc() function will send a TERM, wait 100k microseconds, then
> send a KILL.
> 
> You're running a large process on a low-memory machine.  I strongly
> suspect CentOS isn't giving slapd enough time to shut down properly.
> 
> Instead of using the system scripts, try sending a plain kill to slapd
> and timing how long it takes to shut down.  If it's more than 100
> seconds, you'll either need to add memory (I'd recommend that anyway)
> or stop using the CentOS init scripts to start and stop OpenLDAP.

I tried modifying stop script adding 30 seconds sleep after killproc but the problem remains. Here is the stop script:

function stop() {
        # Stop daemons.
        prog=`basename ${slapd}`
        echo -n $"Stopping $prog: "
        killproc ${slapd}
        sleep 30
        RETVAL=$?
        echo
        if [ $RETVAL -eq 0 ]; then
            if grep -q "^replogfile" /etc/openldap/slapd.conf; then
                prog=`basename ${slurpd}`
                echo -n $"Stopping $prog: "
                killproc ${slurpd}
                sleep 30
                RETVAL=$?
                echo
            fi
        fi
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ldap /var/run/slapd.args
        return $RETVAL
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.