Envio Error Codes
This guide provides a comprehensive list of error codes you may encounter when using Envio HyperIndex. Each error includes an explanation and recommended actions to resolve the issue.
How to Use This Guide
When encountering an error in Envio, you'll receive an error code (like EE101
). Use this guide to:
- Locate the error code by category or by searching for the specific code
- Read the explanation to understand what caused the error
- Follow the recommended steps to resolve the issue
If you can't resolve an error after following the suggestions, please reach out for support on our Discord community.
Error Categories
Envio error codes are categorized by their first digits:
Error Code Range | Category | Description |
---|---|---|
EE100 - EE199 | Configuration File | Issues with the configuration file format, parameters, or values |
EE200 - EE299 | Schema File | Problems with GraphQL schema definition |
EE300 - EE399 | ABI File | Issues with smart contract ABI files or event definitions |
EE400 - EE499 | Initialization Arguments | Problems with initialization parameters or directories |
EE500 - EE599 | Event Handling | Issues with event handler files or functions |
EE600 - EE699 | Event Syncing | Problems with event synchronization process |
EE700 - EE799 | Database Functions | Issues with database operations |
EE800 - EE899 | Database Migrations | Problems with database schema migrations or tracking |
EE900 - EE999 | Contract Interface | Issues related to smart contract interfaces |
EE1000 - EE1099 | Chain Manager | Problems with blockchain network connections |
EE1100 - EE1199 | Lazy Loader | General errors related to the loading process |
Initialization-Related Errors
Configuration File Errors (EE100-EE111)
EE100
: Invalid Addresses
Issue: The configuration file contains invalid smart contract addresses.
Solution: Verify all contract addresses in your configuration file. Ensure they:
- Match the correct format for the blockchain (0x-prefixed for EVM chains)
- Are valid addresses for the specified network
- Have the correct length (42 characters including '0x' for EVM)
EE101
: Non-Unique Contract Names
Issue: The configuration file contains duplicate contract names.
Solution: Each contract in your configuration must have a unique name. Review your config.yaml and ensure all contract names are unique.
EE102
: Reserved Words in Configuration File
Issue: Your configuration uses reserved programming words that conflict with Envio's code generation.
Solution:
- Review the reserved words list for JavaScript, TypeScript, and ReScript
- Rename any contract or event names that use reserved words
- Choose descriptive names that don't conflict with programming languages
EE103
: Parse Event Error
Issue: Envio couldn't parse event signatures in your configuration.
Solution:
- Check your event signatures in the configuration file
- Ensure they match the format in your ABI
- Refer to the configuration guide for correct event definition syntax
EE104
: Resolve Config Path
Issue: Envio couldn't find your configuration file at the specified path.
Solution:
- Verify that your configuration file exists in the correct directory
- Ensure the file is named correctly (usually
config.yaml
) - Check for file permission issues
EE105
: Deserialize Config
Issue: Your configuration file contains invalid YAML syntax.
Solution:
- Check your YAML file for syntax errors
- Ensure proper indentation and structure
- Validate your YAML using a linter or validator
EE106
: Undefined Network Config
Issue: No hypersync_config
or rpc_config
defined for the network specified in your configuration.
Solution:
- Add either a HyperSync or RPC configuration for your network
- See the HyperSync Data Source or RPC Data Source documentation
- Example:
network:
network_id: 1
rpc_config:
rpc_url: "https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY"
EE108
: Invalid Postgres Database Name
Issue: The Postgres database name provided doesn't meet requirements.
Solution: Provide a database name that:
- Begins with a letter or underscore
- Contains only letters, numbers, and underscores (no spaces)
- Has a maximum length of 63 characters
EE109
: Incorrect RPC URL Format
Issue: The RPC URL in your configuration has an invalid format.
Solution:
- Ensure all RPC URLs start with either
http://
orhttps://
- Verify the URL is correctly formatted and accessible
- Example:
https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY
EE110
: End Block Not Greater Than Start Block
Issue: Your configuration specifies an end block that is less than or equal to the start block.
Solution: If providing an end block, ensure it's greater than the start block:
start_block: 10000000
end_block: 20000000 # Must be greater than start_block
EE111
: Invalid Characters in Contract or Event Names
Issue: Contract or event names contain invalid characters.
Solution: Use only alphanumeric characters and underscores in contract and event names.
Schema File Errors (EE200-EE217)
EE200
: Schema File Read Error
Issue: Envio couldn't read the schema file.
Solution:
- Ensure the schema file exists at the expected location
- Check file permissions
- Verify the file isn't corrupted
EE201
: Schema Parse Error
Issue: The schema file contains syntax errors.
Solution:
- Check for GraphQL syntax errors in your schema.graphql file
- Ensure all entities and fields are properly defined
- Validate your GraphQL schema with a schema validator
EE202
: Multiple @derivedFrom
Directives
Issue: An entity field has more than one @derivedFrom
directive.
Solution: Use only one @derivedFrom
directive per entity. Review your schema and remove duplicate directives.
EE203
: Missing Field Argument for @derivedFrom
Issue: A @derivedFrom
directive is missing the required field
argument.
Solution: Add the field
argument to your @derivedFrom
directive:
type User {
id: ID!
orders: [Order!]! @derivedFrom(field: "user")
}
EE204
: Invalid @derivedFrom
Argument
Issue: The field
argument in @derivedFrom
has an invalid value.
Solution: Ensure the field
argument contains a valid string value that matches a field name in the referenced entity.