-
Notifications
You must be signed in to change notification settings - Fork 27
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
CORE-18981 Add configuration to disable session heartbeats #5384
Conversation
Jenkins build for PR 5384 build 35 Build Successful: |
# Conflicts: # gradle.properties
# Conflicts: # gradle.properties
...ts/link-manager/src/main/kotlin/net/corda/p2p/linkmanager/inbound/InboundMessageProcessor.kt
Outdated
Show resolved
Hide resolved
...onents/link-manager/src/main/kotlin/net/corda/p2p/linkmanager/sessions/SessionManagerImpl.kt
Outdated
Show resolved
Hide resolved
...onents/link-manager/src/main/kotlin/net/corda/p2p/linkmanager/sessions/SessionManagerImpl.kt
Outdated
Show resolved
Hide resolved
...onents/link-manager/src/main/kotlin/net/corda/p2p/linkmanager/sessions/SessionManagerImpl.kt
Outdated
Show resolved
Hide resolved
...onents/link-manager/src/main/kotlin/net/corda/p2p/linkmanager/sessions/SessionManagerImpl.kt
Outdated
Show resolved
Hide resolved
...onents/link-manager/src/test/kotlin/net/corda/p2p/linkmanager/sessions/SessionManagerTest.kt
Outdated
Show resolved
Hide resolved
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.
LGTM
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
This PR introduces a configuration switch to enable/disable heartbeats. Session health is determined by heartbeats while enabled and by time between sending and acknowledging messages when disabled. Since heartbeats are not the only method of determining session health,the heart beat manager has been renamed to the session health manager and withing that manager class, the configuration switches between two implementations of session health checks.
Changes worth noting:
Large Network Test Metrics
Run 1
Cluster 1
Cluster 2
Run 2
Cluster 1
Cluster 2
Run 3
In this run, members were onboarded with heartbeats enabled, then heart beats were turned of and 60 flows were run sequentially. Then heartbeats were enabled, followed by 60 flows, then disabled followed by 60 flows, and finally enabled once more followed by 60 flows. Flows were not running while switching the config.
Cluster 1
Cluster 2