Sendmail error (exited with code 75) - RHEL6

Well! Very, very strange behaviour that I can’t explain : the
/tmp/sendmail-stdin filled by tee is fulfilled all the time, but when I
encounter the bug, nothing appear in the file!

Can you modify the script (and go back to sendmailpipe) with this added
line?

echo "=== START $$" >> /tmp/sendmail-lsof
lsof -d^mem,^cwd,^txt,^rtd -a -p $$ >> /tmp/sendmail-lsof
echo "=== END $$" >> /tmp/sendmail-lsof

and then send us the output when you encounter the problem?

Well! Very, very strange behaviour that I can’t explain : the
/tmp/sendmail-stdin filled by tee is fulfilled all the time, but when I
encounter the bug, nothing appear in the file!

Can you modify the script (and go back to sendmailpipe) with this added
line?

echo "=== START $$" >> /tmp/sendmail-lsof
lsof -d^mem,^cwd,^txt,^rtd -a -p $$ >> /tmp/sendmail-lsof
echo "=== END $$" >> /tmp/sendmail-lsof

and then send us the output when you encounter the problem?

Thank you for your concern Thomas.

Here is the modified script :
#!/bin/bash

TMP_FILE=“/tmp/sendmail-stdin”
TMP_LSOF_FILE=“/tmp/sendmail-lsof”
DATUM=“date +%Y%m%d-%H%M%S

echo “=====NEW SENDMAIL CALL=======” >> “${TMP_LSOF_FILE}”
echo “${DATUM}” >> “${TMP_LSOF_FILE}”
echo “=== START $$” >> “${TMP_LSOF_FILE}”
lsof -d^mem,^cwd,^txt,^rtd -a -p $$ >> “${TMP_LSOF_FILE}”
echo “=== END $$” >> “${TMP_LSOF_FILE}”

echo “=====NEW SENDMAIL CALL=======” >> “${TMP_FILE}”
echo “${DATUM}” >> “${TMP_FILE}”
echo “========MESSAGE BEGIN========” >> “${TMP_FILE}”
exec tee -a “${TMP_FILE}” | /usr/sbin/sendmail.real “$@”
echo “========MESSAGE ENDED========” >> “${TMP_FILE}”
echo “${DATUM}” >> “${TMP_FILE}”
echo “======END SENDMAIL CALL======” >> “${TMP_FILE}”

Here are the “sendmail-stdin” log, showing a bad behavior, for 3 mails in a
row :
=====NEW SENDMAIL CALL=======
20120913-110049
========MESSAGE BEGIN========
========MESSAGE ENDED========
20120913-110049
======END SENDMAIL CALL======
=====NEW SENDMAIL CALL=======
20120913-110049
========MESSAGE BEGIN========
========MESSAGE ENDED========
20120913-110049
======END SENDMAIL CALL======
=====NEW SENDMAIL CALL=======
20120913-110049
========MESSAGE BEGIN========
========MESSAGE ENDED========
20120913-110049
======END SENDMAIL CALL======

And here is the “sendmail-lsof” of the corresponding messages :
=====NEW SENDMAIL CALL=======
20120913-110049
=== START 18686
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 18686 apache 1r FIFO 0,8 0t0 1982013 pipe
sendmail 18686 apache 2w REG 253,0 1940786 144696
/var/log/httpd/error_log
sendmail 18686 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 18686
=====NEW SENDMAIL CALL=======
20120913-110049
=== START 18693
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 18693 apache 1r FIFO 0,8 0t0 1982078 pipe
sendmail 18693 apache 2w REG 253,0 1941340 144696
/var/log/httpd/error_log
sendmail 18693 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 18693
=====NEW SENDMAIL CALL=======
20120913-110049
=== START 18700
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 18700 apache 1r FIFO 0,8 0t0 1982130 pipe
sendmail 18700 apache 2w REG 253,0 1941912 144696
/var/log/httpd/error_log
sendmail 18700 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 18700

I returned to SMTP until sendmailpipe work again…

Thanks,
Raphaël Berlamont

And here is the “sendmail-lsof” of the corresponding messages :
#####################################
=== START 18686
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 18686 apache 1r FIFO 0,8 0t0 1982013 pipe
sendmail 18686 apache 2w REG 253,0 1940786 144696
/var/log/httpd/error_log
sendmail 18686 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 18686

What does the sendmail-lsof file look like for a successful invocation
of sendmail?

And here is the “sendmail-lsof” of the corresponding messages :
#####################################
=== START 18686
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 18686 apache 1r FIFO 0,8 0t0 1982013 pipe
sendmail 18686 apache 2w REG 253,0 1940786 144696
/var/log/httpd/error_log
sendmail 18686 apache 255r REG 253,0 687 24192
/usr/sbin/sendmail
=== END 18686

What does the sendmail-lsof file look like for a successful invocation
of sendmail?

On a working sendmail call, it looks like this :
=====NEW SENDMAIL CALL=======
20120913-095359
=== START 17662
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 17662 apache 0r FIFO 0,8 0t0 1970074 pipe
sendmail 17662 apache 1w FIFO 0,8 0t0 1970075 pipe
sendmail 17662 apache 2w REG 253,0 1878695 144696
/var/log/httpd/error_log
sendmail 17662 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 17662

On a non-working sendmail call, we have only one “pipe” process :
=====NEW SENDMAIL CALL=======
20120913-095159
=== START 17601
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 17601 apache 1r FIFO 0,8 0t0 1969455 pipe
sendmail 17601 apache 2w REG 253,0 1871756 144696
/var/log/httpd/error_log
sendmail 17601 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 17601
Raphaël Berlamont

On a working sendmail call, it looks like this :
#####################################
=====NEW SENDMAIL CALL=======
20120913-095359
=== START 17662
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 17662 apache 0r FIFO 0,8 0t0 1970074 pipe
sendmail 17662 apache 1w FIFO 0,8 0t0 1970075 pipe
sendmail 17662 apache 2w REG 253,0 1878695 144696
/var/log/httpd/error_log
sendmail 17662 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 17662
#####################################

On a non-working sendmail call, we have only one “pipe” process :
#####################################
=====NEW SENDMAIL CALL=======
20120913-095159
=== START 17601
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sendmail 17601 apache 1r FIFO 0,8 0t0 1969455 pipe
sendmail 17601 apache 2w REG 253,0 1871756 144696
/var/log/httpd/error_log
sendmail 17601 apache 255r REG 253,0 687 24192 /usr/sbin/sendmail
=== END 17601
#####################################

FD 0 (normally STDIN) is non-existant, and FD 1 (normally STDOUT) is
read not write.

Can you save as HTML your RT System Configuration page and send it? It
automatically redacts passwords, but if you don’t want to send it to the
list send it to me directly.

Can you save as HTML your RT System Configuration page and send it? It
automatically redacts passwords, but if you don’t want to send it to the
list send it to me directly.

Hello Thomas,

You’ll find our configuration in HTML format in the attached zip.
I hope you’ll find something interesting…

Regards,
Raphaël Berlamont

System-Configuration.zip (21.9 KB)

You’ll find our configuration in HTML format in the attached zip.
I hope you’ll find something interesting…

The module versions I was looking for seem fine, however I notice you
have OTRS loaded in the same mod_perl instance. I bet OTRS and RT step
on each other’s toes. If you add:

PerlOptions +Parent

to your RT virtualhost’s block, does that help?

You’ll find our configuration in HTML format in the attached zip.
I hope you’ll find something interesting…

The module versions I was looking for seem fine, however I notice you
have OTRS loaded in the same mod_perl instance.

Yes… Yet another test plateform that came into production without being
-at least- cleaned.

I bet OTRS and RT step
on each other’s toes.

If you add:

PerlOptions +Parent

to your RT virtualhost’s block, does that help?

Well, at least, now I don’t have any OTRS references in the configuration
page, but the real result will be available tomorrow.

I’ll let you know. Thank you very much for your help.
Raphaël Berlamont

I bet OTRS and RT step
on each other’s toes.

If you add:

PerlOptions +Parent

to your RT virtualhost’s block, does that help?

Well, at least, now I don’t have any OTRS references in the configuration
page, but the real result will be available tomorrow.

I’ll let you know.

Hello Thomas, hello list.

I’m happy to say that the problem seems to be solved : today, not a single
sendmail error.

Thank you very very much Thomas.

Best regards,
Raphaël Berlamont