-
Notifications
You must be signed in to change notification settings - Fork 561
Open
Description
Greptile Summary
Replaced batched transaction fetching (getParsedTransactions) with sequential individual requests (getParsedTransaction) to prevent RPC rate limiting (429 errors).
Key changes:
- Removed
MAX_TRANSACTION_BATCH_SIZEconstant (was 10) -
-
- Added
TRANSACTION_FETCH_DELAY_MSconstant (100s delay between requests)
- Added
-
- Implemented sequential fetching with delays instead of batching
- Added per-transaction error handling with
try-catchand warning logs - Individual transaction failures no longer block fetching remaining transactions
Trade-offs:
- Slower overall fetch time (~2.5s for 25 transactions vs ~175s with batching)
- Better resilience to rate limits and individual transaction errors
- Improved error visibility with per-transaction warnings
Confidence Score: 3/5
- This PR is safe to merge but introduces performance trade-offs that should be monitored
- The change successfully addresses rate limiting issues with a straightforward solution, and includes better error handling. However, it introduces significant performance degradation (10x+ slower) which could impact user experience. The approach is a workaround rather than a proper solution - the PR author notes making calls from the backend would be better. The implementation is correct and won't cause functional issues, but the performance impact and lack of backend implementation lower confidence.
- No files require special attention - the single changed file has clear logic and proper error handling
Important Files Changed
| Filename | Overview |
|---|
Last reviewed commit: 4c391bf
Originally posted by @greptile-apps[bot] in #854 (comment)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels