Skip to content

bounce_soft dont count higher than 1

edited May 2013 in Troubleshooting

Hi my setup are the latest sendy, latest nginx and latest mariadb.

everything works nice except the softbounces. the first time it counts 1 in the subscribers table but not the second and third time, it seems like reset to 0 and set 1 everytime. i got no errors on any software i use.

i go crazy

Comments

  • Hi @sennah82,

    On your second send, if the email gets delivered, the soft bounce column will be reset. Amazon also retries sending invisibly in the background and if the email gets delivered, the soft bounce column will be reset as well.

    Thanks.

    Ben

  • edited May 2013

    hi, ya i recognize that your logic is working in this way. but im testing with e-mail addresses that will never be delivered.
    can i check the resend settings on amazon ?
    when i manipulate the bounce_soft column and set the count to 2 instead of 1 and send another campaign to this not existing email addresses, sendy set the count back to 1 .... so it doesnt matter if resend is working when sendy is set it always to 1

  • edited May 2013

    i have checked the access logs and i see the first call of a bounce, but not the retries. i checked the topic delivery policy settings in ses and these are standard, 3 retries .... 20 sek timeout delay .... but it seems like amazon doesnt try to send the soft bounces again .... should i edit anything in the topic policy ?

  • May I know what is the "topic policy" you're referring to?

  • topic delivery policy is something like:
    {
    "http": {
    "defaultHealthyRetryPolicy": {
    "minDelayTarget": 20,
    "maxDelayTarget": 20,
    "numRetries": 3,
    "numMaxDelayRetries": 0,
    "numNoDelayRetries": 0,
    "numMinDelayRetries": 0,
    "backoffFunction": "linear"
    },
    "defaultSicklyRetryPolicy": null,
    "disableSubscriptionOverrides": false,
    "defaultThrottlePolicy": {
    "maxReceivesPerSecond": null
    }
    }
    }

    topic access control policy is somthing like:
    {
    "Version": "2008-10-17",
    "Id": "__default_policy_ID",
    "Statement": [
    {
    "Sid": "__default_statement_ID",
    "Effect": "Allow",
    "Principal": {
    "AWS": "*"
    },
    "Action": [
    "SNS:Publish",
    "SNS:RemovePermission",
    "SNS:SetTopicAttributes",
    "SNS:DeleteTopic",
    "SNS:ListSubscriptionsByTopic",
    "SNS:GetTopicAttributes",
    "SNS:Receive",
    "SNS:AddPermission",
    "SNS:Subscribe"
    ],
    "Resource": "arn:aws:sns:us-east-1:xxxxxxxxxxxx:bounces",
    "Condition": {
    "StringEquals": {
    "AWS:SourceOwner": "xxxxxxxxxx"
    }
    }
    }
    ]
    }

  • Thanks @sennah82,

    The topic policy you're referring to does not apply to soft bounce retries. The retries for your SNS topics refers to contacting the SNS subscription endpoint, by default it takes 3 retries before giving up. Hence, please ignore this topic policy as it doesn't apply to soft bounces or any bounces for that matter.

    Going back to your original post, you mentioned that soft bounce never goes above 1. After testing again, I figured you're right about that.

    The bounce_soft column will be reset to 0 after emails are sent without any errors. It's crucial to set the bounce_soft status of a subscriber back to 0 whenever an email was successfully sent to it so as not to turn a supposedly valid email into a "hard bounce" after the 3rd send.

    The issue is that Amazon's API does not return the bounce status immediately after sending an email. It waits for the feedback loop to trigger an SNS notification if there is a soft bounce, then increments the bounce_soft value. At that moment, the bounce_soft value was already reset to 0 when the email was previously sent successfully. Incrementing the value makes it 1 again. When you send another email to this "soft bounced" email, the cycle repeats, hence you're always seeing 1 for bounce_soft.

    After thinking long and hard and doing some research about this, I've figured this is a non issue.

    Amazon retries soft bounces until they eventually give up, by which time they will let Sendy know that the email is a "hard bounce". See Amazon SES's representative's reply to a user in their own forum below:

    1. SES will queue messages for redelivery in the face of soft bounces. If the messages ultimately doesn't get delivered, SES will return the appropriate bounce to you.

    This means that you do not have to worry that a soft bounce will never be turned into a hard bounce. Because, Amazon will return a "hard bounce" SNS notification to Sendy after giving up on sending retries for soft bounces. Sendy will in turn flag the email as "hard bounce" so that your future emails will not be sent to them just like all emails that have been marked as "hard bounce" the first time.

    I'm considering removing soft bounce handling in Sendy for future updates as Amazon has already been taking care of soft bounces.

    Thanks.

    Ben

  • edited June 2013

    thank you for the explanation. thread can be closed :)

This discussion has been closed.