-
Notifications
You must be signed in to change notification settings - Fork 945
[Merged by Bors] - Fix race condition in seen caches #1937
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
Conversation
Squashed commit of the following: commit dc76a33 Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 11:37:48 2020 +1000 Tighten `BeaconChain` field visibility commit 7c60abd Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 10:45:26 2020 +1000 Fix test compile errors commit f726abb Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 10:26:32 2020 +1000 Lift locks for observed operations commit 2332366 Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 10:14:54 2020 +1000 Lift locks for observed producers commit a99a2dc Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 07:57:47 2020 +1000 Lift observed attesters locks commit 6093eb9 Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 07:51:08 2020 +1000 Add more debug logs for block proc. commit 3331751 Author: Paul Hauner <paul@paulhauner.com> Date: Thu Aug 6 07:37:56 2020 +1000 Lift ObservedAttestations locks commit 0f93f9c Author: Paul Hauner <paul@paulhauner.com> Date: Wed Aug 5 15:15:42 2020 +1000 Push naive attns into op pool when producing block commit 4b128ee Author: Paul Hauner <paul@paulhauner.com> Date: Wed Aug 5 15:06:22 2020 +1000 Lift RwLocks out of naive pool
paulhauner
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mmm, so much easier to reason about! Thank you!
I think it would be prudent to test this on a testnet or two before mainnet launch, just to be sure that the extra lock contention doesn't negatively impact performance.
Agree, Pyrmont should be good for that I think. I've run it locally and can't notice a change in CPU usage.
|
bors r+ |
## Issue Addressed Closes #1719 ## Proposed Changes Lift the internal `RwLock`s and `Mutex`es from the `Observed*` data structures to resolve the race conditions described in #1719. Most of this work was done by @paulhauner on his `lift-locks` branch, I merely updated it for the current `master` and checked over it. ## Additional Info I think it would be prudent to test this on a testnet or two before mainnet launch, just to be sure that the extra lock contention doesn't negatively impact performance.
|
Pull request successfully merged into master. Build succeeded: |
Issue Addressed
Closes #1719
Proposed Changes
Lift the internal
RwLocks andMutexes from theObserved*data structures to resolve the race conditions described in #1719.Most of this work was done by @paulhauner on his
lift-locksbranch, I merely updated it for the currentmasterand checked over it.Additional Info
I think it would be prudent to test this on a testnet or two before mainnet launch, just to be sure that the extra lock contention doesn't negatively impact performance.