-
Notifications
You must be signed in to change notification settings - Fork 16
Ensure valid ENSRainbow connection before indexing starts #1850
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
Open
tk-o
wants to merge
22
commits into
main
Choose a base branch
from
feat/ensure-valid-ensrainbow-connection
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
3f5dc4f
Create `ensRainbowClient` singleton for ENSIndexer app
tk-o f9e4e11
Simplify `ensrainbow/signleton.ts` file
tk-o 40bab87
Create `waitForEnsRainbowToBeReady` function
tk-o e84c0c7
Implement `eventHandlerPreconditios`
tk-o febed1c
docs(changeset): Introduced event handler preconditions to improve re…
tk-o 911035a
Merge remote-tracking branch 'origin/main' into feat/onchain-event-ha…
tk-o 22c3c22
Fix URL comparison for ENSRainbow singleton instnace
tk-o d0dd98c
Apply suggestions from code review
tk-o b9a0829
Apply PR feedback
tk-o ef53bf8
Update testing suite
tk-o d51b2ea
Update testing suite
tk-o e60b06f
Update ENSDb SDK to allow storing and reading `EnsRainbowPublicConfig…
tk-o f929618
docs(changeset): Extended the ENSNode Metadata with ENSRainbow Public…
tk-o 63fbec5
Enable ENSDb Writer Worker to store "unstarted" Indexing Status object
tk-o fb1d93e
Require valid ENSRainbow connection before starting indexing
tk-o c3967b9
Update testing suite
tk-o f346b2a
Apply AI PR feedback
tk-o 4e2454b
Improve docs for Ponder Indexing Engine
tk-o caef441
Merge remote-tracking branch 'origin/main' into feat/ensure-valid-ens…
tk-o 3d7bfb3
Apply PR feedback
tk-o 8b96b5d
Merge branch 'main' into feat/ensure-valid-ensrainbow-connection
shrugs 4a80427
fix: tidy up ensdb reader fns
shrugs File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| --- | ||
| "@ensnode/ensdb-sdk": minor | ||
| --- | ||
|
|
||
| Extended the ENSNode Metadata with ENSRainbow Public Config. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
I'm not confident it's right to completely remove this logic.
My worry is: how do we tell the difference between the following situations:
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.
Omnichain status is "unstarted" if an only if no indexing has started. This is related to the fact that the omnichain status can only be "unstarted" if and only if all chains are queued. And a chain is queued if and only if its
config.startBlockis equal to itscheckpointBlock(checkpointBlockis sourced from Ponder Indexing Status, which is sourced from_ponder_checkpointtable in the ENSIndexer Schema).If indexing has started and ENSIndexer has written any indexed data into the ENSIndexer Schema, the
checkpointBlockfor some indexed chain has also been stored in the_ponder_checkpointtable in the ENSIndexer Schema in ENSDb. Therefore, if ENSIndexer instance restarts, some of the indexed chains will not be "queued" anyomore ascheckpointBlockwill be ahead ofconfig.startBlockfor that chain. That leads us to the fact that the omnichain status cannot be "unstarted" anymore, and goes straight to "backfill".