Get answers quicker by searching

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

Emails sent to lists outside selected ones
  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    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?

  • 14 Comments
  • Vote Up0Vote Down BenBen
    Posts: 3,484Sendy support

    Hi @tnktp,

    This is the first I've ever heard and it's completely impossible.

    Best regards,
    Ben

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    I wish I could agree with your certainty. Here is the list in question:

    mysql> select id, app from lists where name like 'Amy%';
    +----+------+
    | id | app  |
    +----+------+
    |  1 |    1 |
    +----+------+
    1 row in set (0.00 sec)
    

    Here is the campaign in question:

    mysql> select id, app, to_send, to_send_lists from campaigns where id = 17;
    +----+------+---------+------------------------------------------------------------------------------------------------------+
    | id | app  | to_send | to_send_lists                                                                                        |
    +----+------+---------+------------------------------------------------------------------------------------------------------+
    | 17 |    4 |    2255 | 49,51,50,73,31,45,78,79,82,80,53,52,81,54,77,34,76,55,75,56,65,57,58,59,60,19,18,61,62,63,64,74,33,***1*** |
    +----+------+---------+------------------------------------------------------------------------------------------------------+
    1 row in set (0.00 sec)
    

    Here's an example of another list that was selected:

    mysql> select id, app from lists where id = 74;
    +----+------+
    | id | app  |
    +----+------+
    | 74 |    4 |
    +----+------+
    1 row in set (0.00 sec)
    
  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    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.

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    (Additionally I would say it's a bug that there's not error handling for >33 lists.)

  • Vote Up0Vote Down BenBen
    Posts: 3,484Sendy support

    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

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    Thank you for your help, Ben! Will changing my schema cause any problems with upgrades in the future?

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    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)

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    (redacted)

  • Vote Up0Vote Down BenBen
    Posts: 3,484Sendy support

    Hi @tnktp,

    Did you set the list column in campaigns table to TEXT as well? Sorry if I didn't mention this earlier.

    Thanks.

    Best regards,
    Ben

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    No, I unfortunately just followed your instructions and did not audit the code.

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    I'm assuming you meant the column 'lists' and not 'list'.

    mysql> alter table campaigns modify column lists text;

  • Vote Up0Vote Down BenBen
    Posts: 3,484Sendy support

    Yes, it's lists.

  • Vote Up0Vote Down tnktptnktp
    Posts: 16Sendy user

    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;

  • Vote Up0Vote Down BenBen
    Posts: 3,484Sendy support

    This is now resolved in version 1.1.7.3.

This discussion has been closed.
All Discussions