Bug 434645

Summary: DATA timeouts leave behind stale df files in mqueue
Product: Red Hat Enterprise Linux 4 Reporter: Damian Menscher <menscher>
Component: sendmailAssignee: Jaroslav Škarvada <jskarvad>
Status: CLOSED ERRATA QA Contact: qe-baseos-daemons
Severity: low Docs Contact:
Priority: low    
Version: 4.6CC: azelinka, jmarko, jskarvad, pknirsch, rvokal
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: sendmail-8.13.1-4.el4 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-16 14:36:26 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:
Attachments:
Description Flags
reproducer
none
Proposed patch
none
Proposed cron script none

Description Damian Menscher 2008-02-23 21:03:09 UTC
Description of problem:
If a timeout occurs while reading a message (during the DATA phase) a df file
might have been left behind in the queue.

Version-Release number of selected component (if applicable):
sendmail-8.13.1-3.2.el4

Additional info:
Release notes for sendmail 8.13.7 say they fix this problem, which was
introduced in 8.13.6 (and presumably backported into the RHEL sendmail).

Comment 2 RHEL Program Management 2008-10-31 16:46:00 UTC
This request was evaluated by Red Hat Product Management for
inclusion, but this component is not scheduled to be updated in
the current Red Hat Enterprise Linux release. If you would like
this request to be reviewed for the next minor release, ask your
support representative to set the next rhel-x.y flag to "?".

Comment 3 Jaroslav Škarvada 2010-09-27 14:24:10 UTC
Does anybody know how to reproduce this? I set the DATA timeout to 5 seconds and run the following script in several instances for hours and everything work as expected (no stale files in the queue):

while /bin/true
do
  exec 3<>/dev/tcp/localhost/25
  echo "ehlo localhost">&3
  echo "mail from: root@localhost">&3
  echo "rcpt to: root@localhost">&3
  echo "data">&3
  dd if=/dev/urandom bs=1024 count=1024 >&3
  sleep 20
  exec 3>&-
  sleep 1
done

Comment 4 Jaroslav Škarvada 2010-09-29 10:25:24 UTC
Created attachment 450439 [details]
reproducer

Finally reproduced by following script.

Comment 5 Jaroslav Škarvada 2010-09-29 15:12:25 UTC
Created attachment 450502 [details]
Proposed patch

Back-ported patch from sendmail-8.13.7.

Comment 8 Jaroslav Škarvada 2010-10-04 15:15:19 UTC
Created attachment 451426 [details]
Proposed cron script

Proposed script for cleaning stalled mqueue files that were created before sendmail update. It can be also used as cron script (by moving it to e.g. cron.daily) for periodical cleaning (in case the problem persists).

Comment 11 errata-xmlrpc 2011-02-16 14:36:26 UTC
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/RHSA-2011-0262.html