 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| Sendmail Error Handling I have an app that broadcasts emails to selected subscribers. The app loops through the recipient list, puts up to the batch size addresses into the bcc: then sends. Rinse and repeat. The problem we're running into is that some people are consistently not receiving emails and we've run through the list of things to check for overly aggressive anti-spam filters on their end.
What I'm wondering is if the batches these recipients happen to land in could be failing because sendmail ran into an error while trying to send that batch. In particular, a dead address. The app (ASP.NET) has the send operation in a Try block. Catch records the error to a log and then keeps going...but none of the alerts in question recorded any errors.
When sending to a bcc list, does sendmail continue sending to all good recipients even if it encounters recipient unknown or a defunct domain? Or does it abort the batch when it hits such a response? What error or response should it be sending back to the invoker to indicate this situation? -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 RobIn Deo speramus.Premium join:2001-08-25 Kendall, FL kudos:3 | Invalid e-mail addresses in the batch will prevent the entire e-mail from being sent, from what I understand. I am not sure what error or response it will generate, however. -- CheckSite.us | YourIP.us | Reverseip.us |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| Hmmmmm. Sendmail tastes all of the addresses first before actually sending? I was under the impression that it works like this:
multiple recipients at the same domain grouped together connect to domain rcpt to send message move along to next
If this is correct, then at least some recipients would receive the message but ones after a bad address would not. This is what I suspect may be happening here (but I am not ruling out anything else).
I suppose I could rework the logic to send to each subscriber individually and perhaps trap an offending address to determine where it is in the batch...though that will kill performance since these messages can go to thousands of recipients. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 RobIn Deo speramus.Premium join:2001-08-25 Kendall, FL kudos:3 | Since you are grouping them into batches and putting them in the bcc field, then any incorrectly formatted email addresses should prevent the entire email message from executing since the BC batch isn't correct. At least that has been my experiencece.
I would considering sending individual emails, with a wait time between every 100 messages sent. -- CheckSite.us | YourIP.us | Reverseip.us |
|
|
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| Incorrectly formatted addresses aren't the problem...addresses that are not recognized by the destination host (as in someone who has left a company or misspelled their address). Between the data entry handler and the recipient selector routine, there is zero chance of an invalid format getting down to sendmail. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 RobIn Deo speramus.Premium join:2001-08-25 Kendall, FL kudos:3 | said by DC DSL:Incorrectly formatted addresses aren't the problem...addresses that are not recognized by the destination host (as in someone who has left a company or misspelled their address). Between the data entry handler and the recipient selector routine, there is zero chance of an invalid format getting down to sendmail. Ohh, then no, there's no reason why the entire batch would be rejected. Is your reply-to email address a valid address? Are you receiving any returned emails? -- CheckSite.us | YourIP.us | Reverseip.us |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| We do get NDRs after the fact. They aren't the problem. This looks like some servers are causing batches to halt for an invalid recipient and sendmail isn't reporting back so the app can handle it. I'm not a sendmail guru so I'm looking for input as to what's going on so I can work out a strategy for dealing with it. The app was coded for the built-in Windows Server SMTP, which did report invalid addresses and I could record it and keep going. Sendmail seems to not behave the same way. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 RobIn Deo speramus.Premium join:2001-08-25 Kendall, FL kudos:3 | Hmm.. if you're getting NDRs, then I don't think sendmail is halting the batch. No idea though. |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| Invalid recipient behavior varies. Some outright reject on the message but others don't as an anti-spam measure. Some are front-ends that pass messages along to others behind them for disposition. Some delay NDRs until after they've validated the originating server to prevent DoS message looping attacks. I just don't know if this is a sendmail behavior that I can do anything about. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 cdruGo ColtsPremium,MVM join:2003-05-14 Fort Wayne, IN kudos:7 | reply to DC DSL How big of a list is it? |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| It varies based on the selection criteria for a broadcast. Could be a handful of addresses...or thousands. The problem is sporadic and the only thing I see that's consistent is certain people complaining that they don't receive them. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 cdruGo ColtsPremium,MVM join:2003-05-14 Fort Wayne, IN kudos:7 | I'd honestly send them out individually.
Presuming the address's domain names are spread out over the typical spectrum of ISPs, even several thousand addresses probably isn't going to run you into trouble as long as the messages follow all recommended best practices. Now if your list is 5k or more, then some throttling might be in order.
For the people that claim they don't receive the email, are they on the same ISP? Multiple different ISPs but always the same few? Do others at the same domain name receive the same (or very similar) message? |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| Sending individually takes longer to process and does use more bandwidth (client's got a 1mbps pipe for everything...not my choice or control).
Some of the failed recipients share a domain (i.e, work for the same company) but few of the domains are at the same host. However, someone at a company may get the message but the rest won't. The only pattern I see is that those who do receive are in the distro before someone who doesn't. This leads me to thinking a dead address is causing the problem. Fixing them one off is not the issue...provided I can find the address causing it to derail. The problem is the app isn't being alerted to automatically suspend a problem address. There are over 500K subscribers...and we won't know there's a problem unless someone pings us that they aren't getting anything.
With all the rabid "Linux awesome; Windows sucks!" people around here, I'm kinda surprised someone who's a sendmail expert hasn't chimed in to tell me what I'm doing wrong.  -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 | reply to DC DSL
Re: Sendmail Error Handling Your problem is due to use of the dotnet. You must change to php on not Microsoft platform to prevent. |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| said by Rajarshi:Your problem is due to use of the dotnet. You must change to php on not Microsoft platform to prevent. You clearly do not have a clue as to what I'm talking about. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 | said by DC DSL:You clearly do not have a clue as to what I'm talking about. The dotnet cannot understand advanced codes of SendMail causing failure. Php accepts codes allowing correct functioning. Use php to receive codes. |
|
 DC DSLThere's a reason I'm Command.Premium join:2000-07-30 Washington, DC kudos:2 Reviews:
·Covad Communicat..
·Verizon Online DSL
| said by Rajarshi:said by DC DSL:You clearly do not have a clue as to what I'm talking about. The dotnet cannot understand advanced codes of SendMail causing failure. Php accepts codes allowing correct functioning. Use php to receive codes. Tell me, exactly what status codes are you talking about? ASP.NET's SmtpClient recognizes the SmtpStatusCode values listed here. I am trying to find out what conditions could cause sendmail to not signal an error during processing of a batch of to:, cc:, or bcc: addresses. If you do not know, then kindly stay out of the discussion. -- "Dance like the photo isn't being tagged; love like you've never been unfriended; and tweet like nobody is following." |
|
 | I am expert of php and do not understand the page you link. SendMail returns advanced status codes that the dotnet is not capable to understand. |
|