Troubleshooting
Common issues and solutions when working with Meteor.
Connection Issues
Database connection refused
Symptom: connection refused or dial tcp: connect errors when running a recipe.
Solutions:
- Verify the host and port in your recipe config are correct and reachable from where Meteor is running.
- Check that the database server allows connections from Meteor's IP address (firewall rules, security groups).
- For Docker deployments, use the container network address, not
localhost.
Authentication failures
Symptom: authentication failed or access denied errors.
Solutions:
- Verify credentials in your recipe config or environment variables.
- Check that the database user has read permissions on the schemas you want to extract.
- For GCP services (BigQuery, Bigtable, GCS), ensure the service account has the required IAM roles.
TLS/SSL errors
Symptom: x509: certificate or tls: handshake failure errors.
Solutions:
- If the data source uses a self-signed certificate, check the extractor README for SSL configuration options.
- Ensure the system's CA certificates are up to date.
Recipe Issues
Recipe validation errors
Symptom: invalid recipe or validation failed errors when running meteor run.
Solutions:
- Run
meteor lint <recipe-file>to validate recipe syntax before running. - Ensure
name,version, andsourcefields are present. - Ensure at least one sink is defined.
- Check that the extractor and sink names match registered plugin names. Use
meteor list extractorsandmeteor list sinksto see available plugins.
Environment variables not resolved
Symptom: Template variables like {{ .connection_url }} appear literally in error messages.
Solutions:
- Environment variables must have the
METEOR_prefix. For example,METEOR_CONNECTION_URLmaps to{{ .connection_url }}in the recipe. - Ensure the variable is exported:
export METEOR_CONNECTION_URL=... - You can also use the
--varflag to pass variables from a YAML file.
Unknown extractor or sink
Symptom: no extractor found or no sink found errors.
Solutions:
- Check spelling — extractor names are lowercase (e.g.,
bigquery, notBigQuery). - Run
meteor list extractorsormeteor list sinksto confirm the plugin is registered.
Extraction Issues
Empty results
Symptom: Recipe runs successfully but produces no assets.
Solutions:
- Check that the source has data accessible with the provided credentials.
- For database extractors, verify the user has
SELECTpermissions on the target schemas/tables. - Check if
excludeconfig is filtering out all results. - For BigQuery, ensure
project_idis correct and the service account can list datasets.
Partial extraction
Symptom: Some assets are extracted but others are missing.
Solutions:
- Check the
excludeconfiguration in your recipe. - For database extractors, ensure the user has permissions on all target schemas.
- Check Meteor logs for per-asset errors that may indicate permission issues on specific resources.
Sink Issues
Compass sink returns errors
Symptom: HTTP errors when sinking to Compass.
Solutions:
- Verify the
hostURL is correct and Compass is running. - Check that the
typein the config matches a valid Compass type. - Ensure the
mappingconfig maps required fields correctly.
Kafka sink connection timeout
Symptom: Timeouts when publishing to Kafka.
Solutions:
- Verify broker addresses in the
brokersconfig. - Check that Meteor can reach the Kafka brokers (network, firewall).
- Ensure the Kafka topic exists or auto-creation is enabled on the cluster.
Performance
Extraction is slow
Solutions:
- For BigQuery, reduce scope using
excludeto skip unnecessary datasets. - Disable
include_column_profileif column profiling is not needed — it significantly increases extraction time. - For large sources, consider splitting into multiple recipes by dataset or schema.
High memory usage
Solutions:
- Meteor is designed for low memory usage, but extracting from very large sources can increase consumption.
- Split large extraction jobs into smaller, focused recipes.
- When running in containers, set appropriate memory limits and monitor usage.
Getting Help
If you cannot resolve an issue:
- Check the GitHub issues for known problems and solutions.
- Open a new issue with your recipe (redact credentials), the full error message, and Meteor version (
meteor version). - Join the community on Slack for real-time help.