moving fallback RPC section & hypersyc url change#725
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
WalkthroughReorganized and relocated RPC fallback documentation from Changes
Sequence Diagram(s)sequenceDiagram
participant Indexer as Indexer
participant PrimaryRPC as Primary RPC
participant FallbackRPC as Fallback RPC(s)
participant Watcher as Block Watcher
rect rgb(240,248,255)
Note right of Indexer: Normal flow
Indexer->>PrimaryRPC: Request latest block / data
PrimaryRPC-->>Indexer: Return block
end
rect rgb(255,245,235)
Note right of Watcher: Fallback activation when primary misses blocks (>20s)
Watcher->>PrimaryRPC: Detect missing block / timeout
Watcher->>FallbackRPC: Query fallback providers (automatic failover)
FallbackRPC-->>Indexer: Return block/data
Indexer->>PrimaryRPC: Continue polling (primary may recover)
end
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
I don't think it makes sense to move this here.
The rpc as a fallback is mostly to address a hypersync issue, so in my mind, it's more something that's shown for when you're reading the hypersync source doc.
There was a problem hiding this comment.
@moose-code thought it was somewhat confusing that this section was under hypersync. Since RPC fallback is more closely related to RPC as a data source, I moved that section to where it felt like a better fit. Also, having all RPC-related things in one place is better.
There was a problem hiding this comment.
I don't agree. I think it's important for users understanding HyperSync to know that there is an option for an RPC fallback.
I am happy to be overruled here. I would suggest that you ask JJ to review this PR.
| client = hypersync.HypersyncClient( | ||
| hypersync.ClientConfig( | ||
| url="https://ethereum.hypersync.xyz", | ||
| url="https://eth.hypersync.xyz", |
|
The pr title says reorg pages, do you mean rpc fallback or is there something missing from this pr |
|
@DenhamPreen I wanted to say reorganization of that particular section, not the pages. I have updated the title to "moving fallback RPC section" |
moose-code
left a comment
There was a problem hiding this comment.
@nikbhintade going to preapprove but just ask you add a small section back in the hypersync side that points towards this so users will find this if they look in hypersync or rpc
|
yeah, I will add that section |
|
Added it. |
There was a problem hiding this comment.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
docs/HyperIndex/Advanced/hypersync.md(1 hunks)
🔇 Additional comments (1)
docs/HyperIndex/Advanced/hypersync.md (1)
75-77: LGTM!The section title change from "Availability and Support" to "Hosting and Support" accurately reflects the content, which focuses on Envio's infrastructure maintenance.
| ### Alternative Data Sources | ||
|
|
||
| HyperSync data source is vendorlock-free. While HyperSync is **recommended for optimal performance**, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/HyperIndex/Advanced/rpc-sync.md) documentation. |
There was a problem hiding this comment.
🧩 Analysis chain
Verify link format consistency across documentation.
Line 85 uses a link with the .md extension: [RPC Data Source](/docs/HyperIndex/Advanced/rpc-sync.md). However, line 89 uses a similar link without the .md extension: [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback). Additionally, line 89 omits the Advanced/ directory segment. These inconsistencies could lead to broken links depending on your documentation platform's routing.
Verify that:
- Both links use consistent path formats (with or without
.mdextension and directory paths) - The actual file location matches the referenced paths (confirm whether the file is
docs/HyperIndex/Advanced/rpc-sync.mdordocs/HyperIndex/rpc-sync.md) - Both links will resolve correctly by checking your build output or documentation site
Run this script to verify the file exists and check link consistency:
🏁 Script executed:
#!/bin/bash
# Check if the RPC sync documentation file exists at expected locations
echo "=== Checking for rpc-sync.md file ==="
fd "rpc-sync.md" --type f
echo ""
echo "=== Checking for inconsistent link references in hypersync.md ==="
grep -n "rpc-sync" docs/HyperIndex/Advanced/hypersync.mdLength of output: 720
Fix broken link on line 89 in hypersync.md.
Line 89 references an incorrect path: [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback)
The file exists at docs/HyperIndex/Advanced/rpc-sync.md (confirmed), but line 89 omits the Advanced/ directory segment, resulting in a broken link. Update line 89 to: [RPC Fallback](/docs/HyperIndex/Advanced/rpc-sync.md#improving-resilience-with-rpc-fallback)
Line 85's link format is correct and should serve as the reference.
🤖 Prompt for AI Agents
In docs/HyperIndex/Advanced/hypersync.md around lines 83–85, the link to the RPC
fallback is pointing to the wrong path (missing the Advanced/ segment) and thus
breaks; update the referenced link target so it points to the correct file and
anchor by changing the href to
/docs/HyperIndex/Advanced/rpc-sync.md#improving-resilience-with-rpc-fallback so
it matches the actual file location.
| ### Improving Resilience with RPC fallback | ||
|
|
||
| HyperSync data source is vendorlock-free. While HyperSync is recommended for optimal performance, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/HyperIndex/Advanced/rpc-sync.md) documentation. | ||
| For production deployments, it’s recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section. |
There was a problem hiding this comment.
Fix spacing typo in line 89.
There's a missing space after the period: reliability.You should be reliability. You.
Apply this diff to fix the typo:
-For production deployments, it's recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.
+For production deployments, it's recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability. You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ### Improving Resilience with RPC fallback | |
| HyperSync data source is vendorlock-free. While HyperSync is recommended for optimal performance, you can always switch to RPCs without the need to change your indexer code. For information on configuring RPC-based indexing, visit the [RPC Data Source](/docs/HyperIndex/Advanced/rpc-sync.md) documentation. | |
| For production deployments, it’s recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability.You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section. | |
| ### Improving Resilience with RPC fallback | |
| For production deployments, it's recommended to use HyperSync as the primary data source and have RPCs as fallback to improve reliability. You can read more about it in the [RPC Fallback](/docs/HyperIndex/rpc-sync#improving-resilience-with-rpc-fallback) section. |
🤖 Prompt for AI Agents
In docs/HyperIndex/Advanced/hypersync.md around lines 87 to 89, fix the spacing
typo by inserting a space after the period so "reliability.You" becomes
"reliability. You"; update the sentence to include that space and save the file.
Summary by CodeRabbit