[SERVER-43641] platform/random.h causing bugs, upgrade overdue Created: 25/Sep/19 Updated: 29/Oct/23 Resolved: 09/Oct/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code |
| Affects Version/s: | None |
| Fix Version/s: | 4.3.1 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Billy Donahue | Assignee: | Billy Donahue |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||||||||||||||
| Sprint: | Dev Tools 2019-10-07, Dev Tools 2019-10-21 | ||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||
| Linked BF Score: | 12 | ||||||||||||||||||||||||||||||||||||
| Description |
|
Working hypothesis for BF-13608 is that it may have been caused by a badly calculated PseudoRandom sampling operation. Without changing the underlying fundamentals or the API, we can make all these PseudoRandom and SecureRandom operations do what they claim to do, relying on vetted stdlib <random> facilities. |
| Comments |
| Comment by Githook User [ 10/Oct/19 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Billy Donahue [ 09/Oct/19 ] |
|
we'll try this again! |
| Comment by Githook User [ 09/Oct/19 ] |
|
Author: {'username': 'BillyDonahue', 'email': 'billy.donahue@mongodb.com', 'name': 'Billy Donahue'}Message: This reverts commit a40b196bd3cecd0b66a6323f57e6f08efe0af392. |
| Comment by Githook User [ 02/Oct/19 ] |
|
Author: {'name': 'James Wahlin', 'username': 'jameswahlin', 'email': 'james.wahlin@mongodb.com'}Message: Revert " This reverts commit 96da177c6ae7b7ed0f29983ad033d8a59524b0b2. |
| Comment by James Wahlin [ 02/Oct/19 ] |
|
Reopening as this change will be reverted. db_free_mon_test and db_repl_coordinator_test are failing consistently on the required builders post commit. |
| Comment by Githook User [ 02/Oct/19 ] |
|
Author: {'name': 'Billy Donahue', 'username': 'BillyDonahue', 'email': 'billy.donahue@mongodb.com'}Message: Respecify PseudoRandom and SecureRandom as template instances of Fix range and stats errors in the implementations of those Test uniformity of nextInt32(max), which uses an inappropriate Just keep a shared urandom file descriptor open. SecureRandom add fill, remove create, fix callers Obsoletes |
| Comment by Billy Donahue [ 25/Sep/19 ] |
|
Demo of how PseudoRandom::nextInt32() is non-uniformly distributed. |
| Comment by Billy Donahue [ 25/Sep/19 ] |