Contract Error Reference
DVN Contract Errors
These errors are emitted by the DVN smart contract when operations fail.DVNFeeLib Errors
These errors relate to fee calculation and configuration.Worker Errors (Inherited)
DVN Contract Events
Monitor these events to track DVN operations:Gasolina Service Issues
Health Check Failures
Symptom:GET / doesn’t return “HEALTHY”
Possible Causes:
-
Service not running
-
Container crash loop
-
Port misconfiguration
- Verify the container is listening on the correct port (default: 8999 for GCP)
- Check load balancer health check configuration
RPC Connection Failures
Symptom: Signature requests fail with RPC-related errors Diagnostic Steps:-
Verify RPC endpoints are accessible:
-
Check provider configuration:
- Verify
providers.jsoncontains valid endpoints - Ensure API keys are correct and not rate-limited
- Confirm chain IDs match expected values
- Verify
-
Add backup providers:
- Add multiple RPC providers per chain for redundancy
- Monitor RPC usage to avoid rate limits
- Use dedicated RPC endpoints for production
Signature Generation Failures
Symptom: API returns 500 error when requesting signatures Possible Causes:-
KMS key access issues (AWS/GCP)
-
Mnemonic secret not found
-
Event not found on chain
- Verify transaction hash is correct
- Ensure RPC provider is synced
- Check if transaction has been mined
- Verify IAM/service account permissions for KMS
- Check secret manager configuration
- Wait for transaction confirmation before requesting signatures
Infrastructure Issues
AWS Deployment Failures
”Resource already exists” Error
Cause: Previous deployment artifacts weren’t cleaned up Solution:CDK Bootstrap Required
Symptom: Deployment fails with “This stack uses assets, so the toolkit stack must be deployed” Solution:GCP Deployment Failures
”API has not been used in project” Error
Cause: GCP APIs need time to propagate after enabling Solution:- Wait 2-5 minutes after enabling APIs
- Retry the Terraform apply:
KeyRing Creation Error
Cause: Cloud KMS API not fully enabled Solution:- Visit the Cloud KMS API page in GCP Console
- Ensure the API is enabled
- Wait a few minutes and retry
Accessing Logs
AWS CloudWatch
GCP Cloud Logging
Verification Failures
Block Confirmation Issues
Symptom: Signatures not generated; waiting for confirmations Diagnostic:- Wait for required confirmations to pass
- Verify RPC provider is synced to chain head
- Check if chain is experiencing delays
Signer Mismatch
Symptom:DVN_InvalidSignatures error when submitting to contract
Diagnostic:
-
Query signers from Gasolina:
-
Query signers from contract:
- Ensure Gasolina signers match those registered in the DVN contract
- If signers changed, update the DVN contract using
setSigner - Verify you’re using the correct Gasolina instance
Quorum Not Met
Symptom: Verification transaction reverts despite having signatures Diagnostic:-
Check required quorum on contract:
- Count signatures in your payload
- Ensure you have at least
quorumsignatures - Verify all signers are valid (not removed)
- Check signature order (some chains require alphabetical ordering)
Common Scenarios
Scenario: New Chain Support
Issue: DVN doesn’t support a newly added chain Steps:- Add RPC providers for the new chain to
providers.json - Update
availableChainNamesin config - Redeploy Gasolina
- Request DVN contract deployment on the new chain from LayerZero
- Update
setDstConfigfor fee configuration
Scenario: Key Rotation
Issue: Need to rotate signing keys Steps:- Generate new keys (KMS or mnemonic)
- Add new signer to DVN contract:
- Update Gasolina configuration with new key
- Redeploy Gasolina
- Optionally remove old signer:
Scenario: Taking Over Admin Role
Issue: Need to take direct control from Essence Steps:- Prepare a wallet to receive admin role
- Generate
quorumChangeAdminsignatures: - Sign with Gasolina signers
- Call
quorumChangeAdmindirectly on DVN contract - Now you control transaction submission
Debugging Commands Reference
Contract Queries
Gasolina API Tests
Log Analysis
Getting Help
If you’ve exhausted these troubleshooting steps:- Check Documentation:
- GitHub Issues:
- Community Support:
- Error messages and logs
- Configuration (redact secrets)
- Chain and environment
- Steps to reproduce