Troubleshooting & FAQ
Comprehensive troubleshooting guide for diagnosing and resolving common Prism issues.
Table of Contents
Connection & Upstream Issues
No Healthy Upstreams Available
1. All Upstreams Failing Health Checks
2. Incorrect Configuration
3. Circuit Breakers All Open
Upstream Connection Timeouts
1. Increase Timeout Values
2. Check Network Latency
3. Reduce Concurrent Load
HTTP 429 Rate Limiting
1. Add More Upstreams
2. Enable Caching to Reduce Upstream Calls
3. Implement Rate Limiting at Prism Level
Cache Problems
Low Cache Hit Rate
1. Increase Cache Sizes
2. Adjust Chunk Size for Log Cache
3. Enable Cache Warming
4. Check Request Patterns
High Cache Eviction Rate
1. Increase Cache Memory Limits
2. Adjust Hot Window Size
3. Check Memory Usage
Cache Invalidation After Reorgs
1. Adjust Safety Depth
2. Check for Reorg Storms
3. Enable Reorg Coalescing
Authentication Errors
Invalid or Missing API Key
1. Include API Key in Request
2. Verify API Key Configuration
3. Check Authentication Metrics
Method Not Allowed for API Key
Rate Limit Exceeded
1. Increase Rate Limit
2. Implement Client-Side Rate Limiting
3. Use Multiple API Keys
Performance Problems
High Request Latency (P99 > 1s)
1. Enable Caching
2. Add Faster Upstreams
3. Enable Request Hedging
4. Optimize Connection Pooling
Low Throughput (RPS < Expected)
1. Increase Concurrency Limits
2. Add More Upstreams
3. Enable Load Balancing
4. Use Batch Requests
Circuit Breaker Issues
Circuit Breaker Stuck Open
1. Wait for Automatic Recovery
2. Reduce Circuit Breaker Sensitivity
3. Restart Prism (Last Resort)
Circuit Breaker Opens Too Easily
1. Increase Failure Threshold
2. Add Retry Logic
3. Adjust Error Classification
Reorg Handling Issues
Cache Contains Stale Data After Reorg
1. Verify Reorg Detection Is Working
2. Reduce Safety Depth
3. Clear Cache Manually
Too Many Reorg Detections
1. Upstreams Reporting Different Chain States
2. WebSocket Reconnections Causing False Reorgs
3. Network Issues Between Prism and Upstreams
WebSocket Connection Failures
WebSocket Disconnects Repeatedly
1. Increase Reconnection Delay
2. Check Upstream WebSocket Support
3. Disable WebSocket (Fallback to HTTP)
Missing Block Notifications
1. Verify WebSocket Subscription
2. Enable HTTP Polling Fallback
3. Check Firewall Rules
Error Codes Reference
JSON-RPC Standard Errors
Code
Message
Description
Troubleshooting
Ethereum JSON-RPC Errors
Code
Message
Description
Troubleshooting
Prism-Specific Errors
Code
Message
Description
Troubleshooting
Upstream Provider Errors
Debug Strategies
General Debugging Workflow
Debugging Specific Issues
Debug Cache Misses
Debug Upstream Selection
Debug Authentication Issues
Debug Performance Issues
FAQ
General Questions
Q: What methods does Prism cache?
Q: How long does cached data stay valid?
Q: Can I disable caching for specific methods?
Q: How many upstreams should I configure?
Q: What happens during a blockchain reorg?
Configuration Questions
Q: What's the difference between safety_depth and max_reorg_depth?
safety_depth and max_reorg_depth?Q: How do I optimize for lowest latency?
Q: How do I optimize for highest throughput?
Troubleshooting Questions
Q: Why is my cache hit rate so low?
Q: How do I know if an upstream is slow or failing?
Q: Why do I see "Circuit breaker is open" errors?
Q: How can I reduce API costs?
Last updated