-
Notifications
You must be signed in to change notification settings - Fork 14
Updates to the VHS connection-manager #392
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
…w away incoming validated ledgers; Add informative logs to track lifecycle of validations
|
Note to reviewers: I am working on fixing the linter errors. |
| */ | ||
| async function updateUNLManifestNetwork(network: string): Promise<void> { | ||
| export async function updateUNLManifestNetwork(network: string): Promise<void> { | ||
| // TODO: In an ideal scenario, the networks table should not contain undefined network.id rows |
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.
network.id will never be undefined since it's the primary key, so insert would fail if id is not set
|
Do we need to address the first issue since the |
| if(validator_keys.master_key == 'nHU4bLE3EmSqNwfL4AP1UZeTNPrSPPP6FXLKXo2uqfHuvBQxDVKd' || validator_keys.signing_key == 'n9LbM9S5jeGopF5J1vBDoGxzV6rNS8K1T5DzhNynkFLqR9N2fywX') { | ||
| console.log('DEBUG: XRPL Mainnet received the following ledgers: ', Array.from(ledgerHashIndexMap)) | ||
| console.log('DEBUG: Number of Validations received by the Ripple validator: ', validations.size) | ||
| console.log('DEBUG: Validations received by the Ripple validator: <ignore the second value, which is the timestamp>', validations) |
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.
Logger has 4 different logging level
interface Logger {
info: (arg: string) => void
warn: (arg: string) => void
error: (arg: string, err?: unknown) => void
debug: (arg: string) => void
}
This comment applies to all log statements added in this PR.
| incomplete: boolean, | ||
| ): Promise<void> { | ||
| // obtain ledger_hashes validated by the network, strip out the ledger_index info for agreement calculation purposes | ||
| let ledgers = new Set<string>() |
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.
Can you fix all the alerts and the failed build?
Hello, you are correct. Point-1 is addressed in a more elegant way by a differnet PR #396 . |
|
This PR will be superceded by #396 . The attached PR is a much wider refactor of the chains logic. I have ensured that ledgers are not lost even if > 20 ledgers are missing from a chain.
I will create another PR to rectify the victim-transaction-retry mechanism in case of db deadlock. ^^ @reviewers: thanks for your consideration. |
High Level Overview of Change
This PR addresses two issues:
chainslogic in connection-manager #391Context of Change
Type of Change
Before / After
Test Plan
Appropriate unit tests have been added in this PR. The new code changes have also been deployed in the VHS staging environment since Oct 23, 2025 4.02 PM. It will be monitored for performance changes.