Fix sub-second timing comparison error for Devise confirmation period
On databases such as MySQL, it's possible to get into a timing comparison
error if the value of Confirmable#confirmation_sent_at
is within a second
of 0.days.ago
. This is possible mostly in specs that test this behavior
and most likely not happening in practice. The result of this error causes
a user to be deemed active when it should be inactive. To prevent this
error, we explicitly check the configuration setting to be 0.days.ago
.
Closes gitlab-org/gitlab-ee#2362
Merge request reports
Activity
changed milestone to %9.2
assigned to @rymai
Submitted a fix upstream to Devise: https://github.com/plataformatec/devise/pull/4529
added ~149423 test labels
assigned to @smcgivern
- Resolved by username-removed-443319
@stanhu great investigation, thanks
🙂 assigned to @stanhu
assigned to @smcgivern
mentioned in commit 09e2c1af
mentioned in issue #31934 (closed)
mentioned in commit 848466ee