Bug 676666
Summary: | DS pipe log script is executed as many times as the dirsrv service is restarted | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Rich Megginson <rmeggins> |
Component: | 389-ds-base | Assignee: | Rich Megginson <rmeggins> |
Status: | CLOSED ERRATA | QA Contact: | Chandrasekar Kannan <ckannan> |
Severity: | medium | Docs Contact: | |
Priority: | high | ||
Version: | 6.1 | CC: | benl, dpal, jgalipea, rmeggins, shaines, sramling, syeghiay |
Target Milestone: | rc | Keywords: | screened |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | 389-ds-base-1.2.8-0.9.rc4.el6 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | 668385 | Environment: | |
Last Closed: | 2011-05-19 12:41:28 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 668385 | ||
Bug Blocks: | 639035, 656390, 676871 |
Description
Rich Megginson
2011-02-10 16:48:04 UTC
Checking in 0009-bump-version-to-1.2.8.rc3.patch; /cvs/dist/rpms/389-ds-base/RHEL-6/0009-bump-version-to-1.2.8.rc3.patch,v <-- 0009-bump-version-to-1.2.8.rc3.patch initial revision: 1.1 done RCS file: /cvs/dist/rpms/389-ds-base/RHEL-6/0010-Bug-668385-DS-pipe-log-script-is-executed-as-many-ti.patch,v done Checking in 0010-Bug-668385-DS-pipe-log-script-is-executed-as-many-ti.patch; /cvs/dist/rpms/389-ds-base/RHEL-6/0010-Bug-668385-DS-pipe-log-script-is-executed-as-many-ti.patch,v <-- 0010-Bug-668385-DS-pipe-log-script-is-executed-as-many-ti.patch initial revision: 1.1 done RCS file: /cvs/dist/rpms/389-ds-base/RHEL-6/0011-bump-version-to-1.2.8.rc4-bump-ds-console-version-to.patch,v done Checking in 0011-bump-version-to-1.2.8.rc4-bump-ds-console-version-to.patch; /cvs/dist/rpms/389-ds-base/RHEL-6/0011-bump-version-to-1.2.8.rc4-bump-ds-console-version-to.patch,v <-- 0011-bump-version-to-1.2.8.rc4-bump-ds-console-version-to.patch initial revision: 1.1 done Checking in 389-ds-base-git.sh; /cvs/dist/rpms/389-ds-base/RHEL-6/389-ds-base-git.sh,v <-- 389-ds-base-git.sh new revision: 1.11; previous revision: 1.10 done Checking in 389-ds-base.spec; /cvs/dist/rpms/389-ds-base/RHEL-6/389-ds-base.spec,v <-- 389-ds-base.spec new revision: 1.20; previous revision: 1.19 done Tested with the latest 389-ds-base and it fails. [root@ds90-rhel6-32vm slapd-ds90]# rpm -qi 389-ds-base Name : 389-ds-base Relocations: (not relocatable) Version : 1.2.8.2 Vendor: Red Hat, Inc. Release : 1.el6 Build Date: Thu 14 Apr 2011 06:53:22 PM EDT Install Date: Sun 17 Apr 2011 01:33:14 PM EDT Build Host: x86-003.build.bos.redhat.com Group : System Environment/Daemons Source RPM: 389-ds-base-1.2.8.2-1.el6.src.rpm Size : 4094342 License: GPLv2 with exceptions Signature : (none) Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> URL : http://port389.org/ Summary : 389 Directory Server (base) Description : 389 Directory Server is an LDAPv3 compliant server. The base package includes the LDAP server and command line utilities for server administration. [root@ds90-rhel6-32vm slapd-ds90]# [root@ds90-rhel6-32vm slapd-ds90]# cat /etc/sysconfig/dirsrv-ds90 # This file is sourced by dirsrv upon startup to set # the default environment for a single specific directory # server instances. To set defaults for all instances, edit # the file in the same directory called dirsrv. # These settings are used by the start-dirsrv and # start-slapd scripts (as well as their associates stop # and restart scripts). Do not edit them unless you know # what you are doing. SERVER_DIR=/usr/lib/dirsrv ; export SERVER_DIR SERVERBIN_DIR=/usr/sbin ; export SERVERBIN_DIR CONFIG_DIR=/etc/dirsrv/slapd-ds90 ; export CONFIG_DIR INST_DIR=/usr/lib/dirsrv/slapd-ds90 ; export INST_DIR RUN_DIR=/var/run/dirsrv ; export RUN_DIR DS_ROOT= ; export DS_ROOT PRODUCT_NAME=slapd ; export PRODUCT_NAME # Put custom instance specific settings below here. /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex="err=32" > /tmp/test_access & [root@ds90-rhel6-32vm slapd-ds90]# [root@ds90-rhel6-32vm slapd-ds90]# ls -al /var/log/dirsrv/slapd-ds90 total 32 drwxrwx---. 2 nobody nobody 4096 Apr 17 14:39 . drwxr-xr-x. 4 root root 4096 Apr 17 13:46 .. -rw-------. 1 nobody nobody 0 Apr 17 13:46 access prw-------. 1 nobody nobody 0 Apr 17 14:37 access.pipe -rw-------. 1 nobody nobody 63 Apr 17 14:39 access.pipe.rotationinfo -rw-------. 1 nobody nobody 63 Apr 17 13:46 access.rotationinfo -rw-------. 1 nobody nobody 0 Apr 17 13:46 audit -rw-------. 1 nobody nobody 63 Apr 17 13:46 audit.rotationinfo -rw-------. 1 nobody nobody 7159 Apr 17 14:39 errors -rw-------. 1 nobody nobody 63 Apr 17 13:46 errors.rotationinfo [root@ds90-rhel6-32vm slapd-ds90]# ps -ef |grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog root 17841 1 0 14:39 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 17935 16232 0 14:43 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm slapd-ds90]# service dirsrv restart ds90 Shutting down dirsrv: ds90... [ OK ] Starting dirsrv: ds90... [ OK ] [root@ds90-rhel6-32vm slapd-ds90]# ps -ef |grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog root 17841 1 0 14:39 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 17969 1 0 14:43 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 18038 16232 0 14:44 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm slapd-ds90]# service dirsrv restart ds90 Shutting down dirsrv: ds90... [ OK ] Starting dirsrv: ds90... [ OK ] [root@ds90-rhel6-32vm slapd-ds90]# ps -ef |grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog root 17841 1 0 14:39 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 17969 1 0 14:43 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 18070 1 2 14:44 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe --plugin=/usr/share/dirsrv/data/logregex.py logregex.regex=err=32 root 18138 16232 0 14:44 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm slapd-ds90]# The steps to reproduce the bug were old. I have now tested with updated documentation from the wiki... and it passes. [root@ds90-rhel6-32vm sysconfig]# cat /etc/sysconfig/dirsrv-ds90 # This file is sourced by dirsrv upon startup to set # the default environment for a single specific directory # server instances. To set defaults for all instances, edit # the file in the same directory called dirsrv. # These settings are used by the start-dirsrv and # start-slapd scripts (as well as their associates stop # and restart scripts). Do not edit them unless you know # what you are doing. SERVER_DIR=/usr/lib/dirsrv ; export SERVER_DIR SERVERBIN_DIR=/usr/sbin ; export SERVERBIN_DIR CONFIG_DIR=/etc/dirsrv/slapd-ds90 ; export CONFIG_DIR INST_DIR=/usr/lib/dirsrv/slapd-ds90 ; export INST_DIR RUN_DIR=/var/run/dirsrv ; export RUN_DIR DS_ROOT= ; export DS_ROOT PRODUCT_NAME=slapd ; export PRODUCT_NAME # Put custom instance specific settings below here. accpidfile=$RUN_DIR/dslogpipe-ds90-acc.pid # see if there is already a logpipe running - doing a stop or # restart (which first calls stop) should have made the old # one exit, but let's make sure we kill it first if [ -f $accpidfile ] ; then accpid=`cat $accpidfile` if [ -n "$accpid" ] ; then kill "$accpid" > /dev/null 2>&1 fi fi # only log failed binds python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe -u nobody \ -s $RUN_DIR/slapd-ds90.pid \ -i $accpidfile --plugin=/usr/share/dirsrv/data/failedbinds.py \ failedbinds.logfile=/var/log/dirsrv/slapd-ds90/access.failedbinds & # sleep gives the script a chance to create the pipe, if necessary sleep 1 [root@ds90-rhel6-32vm sysconfig]# [root@ds90-rhel6-32vm sysconfig]# [root@ds90-rhel6-32vm sysconfig]# ps -ef | grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog root 18497 16232 0 15:02 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm sysconfig]# service dirsrv stop ds90 Shutting down dirsrv: ds90... [ OK ] [root@ds90-rhel6-32vm sysconfig]# service dirsrv start ds90 Starting dirsrv: ds90... [ OK ] [root@ds90-rhel6-32vm sysconfig]# [root@ds90-rhel6-32vm sysconfig]# [root@ds90-rhel6-32vm sysconfig]# ps -ef | grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog nobody 18552 1 0 15:02 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe -u nobody -s /var/run/dirsrv/slapd-ds90.pid -i /var/run/dirsrv/dslogpipe-ds90-acc.pid --plugin=/usr/share/dirsrv/data/failedbinds.py failedbinds.logfile=/var/log/dirsrv/slapd-ds90/access.failedbinds root 18621 16232 0 15:03 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm sysconfig]# service dirsrv restart ds90 Shutting down dirsrv: ds90... [ OK ] Starting dirsrv: ds90... [ OK ] [root@ds90-rhel6-32vm sysconfig]# ps -ef | grep log root 1121 1 0 Apr10 ? 00:01:02 /sbin/rsyslogd -c 4 gdm 1783 1745 0 Apr10 ? 00:00:00 plymouth-log-viewer --icon gdm 1798 1 0 Apr10 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog nobody 18655 1 0 15:03 pts/1 00:00:00 python /usr/bin/ds-logpipe.py /var/log/dirsrv/slapd-ds90/access.pipe -u nobody -s /var/run/dirsrv/slapd-ds90.pid -i /var/run/dirsrv/dslogpipe-ds90-acc.pid --plugin=/usr/share/dirsrv/data/failedbinds.py failedbinds.logfile=/var/log/dirsrv/slapd-ds90/access.failedbinds root 18724 16232 0 15:03 pts/1 00:00:00 grep log [root@ds90-rhel6-32vm sysconfig]# An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2011-0533.html |