Issue492

Title make "Failed issue tracker submission" e-mails to python-dev less cryptic
Priority bug Status chatting
Superseder Nosy List chris.jerdonek, ezio.melotti, loewis, pitrou, r.david.murray
Assigned To ezio.melotti Topics

Created on 2012-11-16.20:42:09 by chris.jerdonek, last changed 2012-11-18.15:57:14 by chris.jerdonek.

Messages
msg2641 (view) Author: chris.jerdonek Date: 2012-11-16.20:42:08
This issue is to make the "Failed issue tracker submission" e-mails sent to python-dev less cryptic for list members.

Background: Occasionally (on the order of a couple times per week), the python-dev mailing list receives an e-mail like the following:

http://mail.python.org/pipermail/python-dev/2012-November/122757.html

Each message starts with the text--

"An unexpected error occurred during the processing
of your message. The tracker administrator is being
notified."

The current message may be confusing to list members because it says "your message," so list members may think the message has to do with them personally.  Moreover, because the text says that the "tracker administrator" is being notified, it's not clear if these e-mails were meant to be sent to python-dev, or if the forwarded e-mail is a mistake due to an error state.

I think the introductory text for these messages should be rephrased so that it is clear to python-dev list members what the message is for.  The introductory text could say something along these lines:

"The Python issue tracker at http://bugs.python.org/ has experienced an unexpected error due to a user submission.  This message and the error details below are being sent to the python-dev mailing list.  The tracker administrators will take responsibility for investigating this error."
msg2642 (view) Author: r.david.murray Date: 2012-11-16.21:13:00
The problem with that suggestion is that this is just the message template that is used when an email submission fails.  So if a user did a reply to a tracker message, and their reply failed for some reason, they would get a message that said "this message is being sent to python-dev" when it wasn't.

The easiest solution here, I think, is to change the 'from' address in the repository hook to be tracker-discuss instead of python-dev.  We will presume that people on the tracker-discuss list will not be as surprised to see tracker error messages on the list.
msg2643 (view) Author: chris.jerdonek Date: 2012-11-16.22:39:30
I was starting with a suggestion for ideal wording without regard for constraints, since I didn't know the constraints.

If the text must be the same and the e-mails will be sent to a mailing list of non-administrators (e.g. python-dev or tracker-discuss), then I would suggest wording that makes sense and reduces the possibility of confusion for both types of recipients (i.e. submitter and mailing list members).  For example, the text could incorporate wording like:

"The Python issue tracker at http://bugs.python.org/ experienced an unexpected error while processing your submission.  This message and the error details below may also be sent to the python-dev mailing list.  The tracker administrators will take responsibility for investigating this error."

Since I don't know all the details, this wording may need to be adjusted for accuracy.
msg2644 (view) Author: r.david.murray Date: 2012-11-16.23:10:48
Yes, sorry, I was explaining the constraints but I didn't express that well.

Note that the *only* time such messages are sent anywhere other than to the submitter and the roundup-admin (that no one has time to fully track) is when they come from the repo commit hooks.
msg2645 (view) Author: chris.jerdonek Date: 2012-11-16.23:19:37
Then perhaps something like the following?

"The Python issue tracker at http://bugs.python.org/ experienced an unexpected error while processing your submission.  The tracker administrators will take responsibility for investigating this error.  (In rare cases, this message and the error details below may also be sent to the python-dev mailing list.)"

(Or some other phrase in place of "In rare cases.")
msg2646 (view) Author: loewis Date: 2012-11-16.23:41:16
-1 on the entire issue - no action should be taken.

The real problem is that there is a bug in roundup in each and every case where the email is sent. So the proper action is to fix the bug, not to massage the error message. python-dev readers should easily be able to understand the message.
msg2647 (view) Author: chris.jerdonek Date: 2012-11-17.00:12:20
Martin, if the messages aren't meant to be sent to python-dev, then I agree with you.  This issue was created with the assumption that the messages to python-dev were intentional.  The initial feedback I received on this point was different.  For example, Brett indicated that the e-mails were intentional here:

http://mail.python.org/pipermail/tracker-discuss/2012-November/003586.html

I also acknowledged in my opening comment that I wasn't sure: "it's not clear if these e-mails were meant to be sent to python-dev, or if the forwarded e-mail is a mistake due to an error state."

Is there already an issue in the meta tracker for the e-mails being mistakenly sent to python-dev?
msg2648 (view) Author: ezio.melotti Date: 2012-11-17.09:08:06
AFAIU this is what happened:
1) someone pushed something on h.p.o;
2) the roundup hook added a message about the commit to the tracker, through the "python-dev" user;
3) the irker hook was supposed to send a message on IRC, but there was a problem and it raised an exception;
4) at that point the mail you saw was sent back to the "python-dev" user to inform him that there was a problem with the submission, and a second mail with the traceback was sent to the tracker admins;

There are two possible reasons why this arrived to the python-dev ML:
1) because the fromaddr used by the hgroundup hook might be set to python-dev@python.org;
2) because python-dev@python.org is listed among the alternate mail addresses of the "python-dev" user;

These could both be changed to tracker-discuss, but I'm not able to change the hgroundup myself (I think this should be done in the hgrc of the hooks repo: http://hg.python.org/hooks/file/fc6022656a7b/hgroundup.py#l70).
msg2649 (view) Author: chris.jerdonek Date: 2012-11-17.19:18:30
Can a different user be created or used for this?  One that does not have as one of its e-mail addresses a mailing list with members who are not roundup administrators?
msg2650 (view) Author: ezio.melotti Date: 2012-11-17.19:45:23
No need for a different user, the email can be changed on the current one.
msg2651 (view) Author: chris.jerdonek Date: 2012-11-17.19:49:48
Can the e-mail addresses be changed to an e-mail address of roundup administrators?  You only mentioned changing it to tracker-discuss.
msg2652 (view) Author: ezio.melotti Date: 2012-11-17.20:42:17
There's roundup-admin, but amany error emails already arrive there, so if we use this address it will be easy to miss new errors.  Now we changed the address to tracker-discuss (and an email was sent there already while we were testing).  Normally you shouldn't see any error email arriving there, at least until I break something (and if you see them, feel free to ping me).
msg2653 (view) Author: chris.jerdonek Date: 2012-11-17.21:15:19
Thanks, that's a little better.  But if roundup-admin is receiving too many e-mails due to CC's of other users' errors (in turn reducing the usefulness of that address), then maybe you can do something to the subject lines of those messages to make it easier to filter them out or apply rules.

For example, mailer.bounce_message() takes a subject keyword argument in the code below:

http://hg.python.org/tracker/roundup/file/089a52e7a89b/roundup/mailgw.py#l1512

You could do something like prepend "[cc-notification]" to the subject line.

It would also be easy to change the subject line in the code below, if these are also an issue:

http://hg.python.org/tracker/roundup/file/089a52e7a89b/roundup/mailer.py#l247
msg2655 (view) Author: ezio.melotti Date: 2012-11-18.13:27:56
I guess that could be done, but we try to avoid changing roundup if possible, so that it doesn't diverge too much from the original.
If possible it might be interesting to eliminate / filter out all the "Undelivered mail returned to sender" so that we will end up with only the actual errors (about 3-5 mails per day).
msg2656 (view) Author: chris.jerdonek Date: 2012-11-18.15:08:12
I don't know how such errors appear to the code, but perhaps making the first N characters of the error text the subject line (after any subject header) would suffice.  Currently, it looks like every message has the identical subject line, "Failed issue tracker submission" (the default for the keyword argument to bounce_message()), which I imagine is not very convenient for browsing errors.  This might also be enough to let you filter away any undesired messages strictly based on the subject line of the e-mail.
msg2657 (view) Author: ezio.melotti Date: 2012-11-18.15:18:31
That's only to report to the users that their submission wasn't successful, the subject of the mail received by the admins contains already the error, e.g.:
  Error: could not serialize access due to concurrent update
  Templating Error: 'There is no class called "None"'
Indeed I could just set up my filters to ignore only the "undelivered" ones, but the point is that undelivered mails produce lot of noise and are quite useless.
msg2658 (view) Author: chris.jerdonek Date: 2012-11-18.15:57:13
> That's only to report to the users that their submission wasn't successful, the subject of the mail received by the admins contains already the error

Okay, I was referring to the copies of those messages to users that are sent to the admin address (the e-mails that I was suggesting above have subject lines prepended with [cc-notification]).  Those e-mails to the admins appear to have the uninformative subject line, "Failed issue tracker submission."

But yes, I see now that other e-mails to admins do have a proper subject.
History
Date User Action Args
2012-11-18 15:57:14chris.jerdoneksetmessages: + msg2658
2012-11-18 15:18:31ezio.melottisetmessages: + msg2657
2012-11-18 15:08:12chris.jerdoneksetmessages: + msg2656
2012-11-18 13:27:56ezio.melottisetmessages: + msg2655
2012-11-17 21:15:19chris.jerdoneksetstatus: resolved -> chatting
messages: + msg2653
2012-11-17 20:42:17ezio.melottisetstatus: chatting -> resolved
assignedto: ezio.melotti
messages: + msg2652
2012-11-17 19:49:48chris.jerdoneksetmessages: + msg2651
2012-11-17 19:45:23ezio.melottisetmessages: + msg2650
2012-11-17 19:18:31chris.jerdoneksetmessages: + msg2649
2012-11-17 09:08:06ezio.melottisetnosy: + ezio.melotti, pitrou
messages: + msg2648
2012-11-17 00:12:20chris.jerdoneksetmessages: + msg2647
2012-11-16 23:41:16loewissetnosy: + loewis
messages: + msg2646
2012-11-16 23:19:37chris.jerdoneksetmessages: + msg2645
2012-11-16 23:10:48r.david.murraysetmessages: + msg2644
2012-11-16 22:39:30chris.jerdoneksetmessages: + msg2643
2012-11-16 21:13:01r.david.murraysetstatus: unread -> chatting
nosy: + r.david.murray
messages: + msg2642
2012-11-16 20:42:09chris.jerdonekcreate