Emails sent to lists outside selected ones
I'm a new user to Sendy and recently installed and set it up to replace an existing phplist install. The logic worked well with "brands" being like clients that I had. However, out the gate I've had a pretty major problem. One of my brand accounts sent to their lists and somehow Sendy included a list from another client which resulted in a high number of unsubscribes/spam reports. I'm not for sure how this is even possible - brand accounts are fully separate, right? And there isn't blocking between them for data access?
This discussion has been closed.
Comments
Hi @tnktp,
This is the first I've ever heard and it's completely impossible.
Best regards,
Ben
I wish I could agree with your certainty. Here is the list in question:
Here is the campaign in question:
Here's an example of another list that was selected:
Ben! So it's quite possible then. The problem is evident. I have a client with 74 lists, to_send_lists is a varchar of 100. They're maxing this out, it's getting truncated. That's where the list ID 1 comes from.
Why were you so sure it's impossible? It seems clear that the send process doesn't do validation on the app ID.
So there are two problems here, one is an "enhancement" for large lists, and the other is a bug for bad handling.
(Additionally I would say it's a bug that there's not error handling for >33 lists.)
Hi @tnktp,
In that case, you are right. The
to_send_lists
column is a VARCHAR of 100. I never imagined anyone with a list count of around 74. I guess no one ever reported this issue to me before was because hardly anyone has such a huge list count.I said sending to other lists not selected in the 'Define recipients' page is impossible because there is no code that will cause this to happen. Little did I know it's an issue with the database's character length.
I'll change it to a larger number or a TEXT type in the next version.
In the meantime, you can fix this by changing the VARCHAR limit to a larger number or change it to a TEXT type instead of VARCHAR.
Thanks.
Best regards,
Ben
Thank you for your help, Ben! Will changing my schema cause any problems with upgrades in the future?
More problems. I altered the table and set the column to text. Regardless, this brand user has managed to yet again send to a list does not belong to them. The same impact as before, a very high bounce rate and lots of unsubscribes which does not bode well for my reputation as a new Amazon SES user, and is unfortunate for the other brand accounts on the system whose lists are being use erroneously. In this case, the list was id 2.
mysql> select to_send_lists from campaigns where id = 40;
+------------------------------------------------------------------------------------------------------+
| to_send_lists |
+------------------------------------------------------------------------------------------------------+
| 8,6,20,9,27,22,35,36,85,37,38,86,88,39,30,29,32,41,24,25,26,68,69,42,66,40,43,46,44,47,48,70,71,72,2 |
+------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
(redacted)
Hi @tnktp,
Did you set the
list
column incampaigns
table to TEXT as well? Sorry if I didn't mention this earlier.Thanks.
Best regards,
Ben
No, I unfortunately just followed your instructions and did not audit the code.
I'm assuming you meant the column 'lists' and not 'list'.
mysql> alter table campaigns modify column lists text;
Yes, it's
lists
.Just to confirm, that resolved my issue. I hope that you'll integrate this with future releases for other users.
mysql> alter table campaigns modify column lists text;
mysql> alter table campaigns modify column to_send_lists text;
This is now resolved in version 1.1.7.3.