Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev/core#256 - use unsigned int for temporary recipient ids #12465

Merged
merged 1 commit into from
Jul 13, 2018

Conversation

rthouvenin
Copy link
Contributor

Overview

This is to solve Gitlab issue 28, which affects (seriously) CiviCRM users who have sent more than 231 emails.

Before

When submitting an A/B mailing, the whole target group receives version A

After

When submitting an A/B mailing, only 50% of the sample group receives version A, the other half version B, and the rest is assigned to Final mailing.

Technical Details

The temporary table that holds recipient ids to move from mailing A to mailing B and C should use the column type int unsigned, which matches the one used by civicrm_mailing_recipients.

Comments

This is also a heads up that someone will hit 232 emails sooner than later, and a number of columns should be migrated to BIGINT type at some point.

@civibot
Copy link

civibot bot commented Jul 13, 2018

(Standard links)

@seamuslee001
Copy link
Contributor

@monishdeb i think this one might be for you to review as you have been in this code lately

@eileenmcnaughton
Copy link
Contributor

So the advice is to use unsigned where there is no chance of a negative integer - https://stackoverflow.com/questions/11515594/when-should-i-use-unsigned-and-signed-int-in-mysql

this seems to be clearly the case here so I'm merging

@eileenmcnaughton eileenmcnaughton merged commit b968b9b into civicrm:master Jul 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants