When Stitch replicates data from a database integration, it will check for the required user permissions and database server settings. If permissions or server settings aren’t properly defined, you may receive an error during the Extraction phase of the replication process.
These errors will surface in the integration’s Extraction Logs.
In this reference:
Common extraction errors
The following errors are applicable to all database integrations that support Extraction Logs:
- Stitch has discovered more than the maximum supported limit of 10,000 tables in your integration.
- The process was terminated. Most often this occurs because the job has exceeded its allotted runtime. The next job will...
- A single record is larger than the Stitch API limit of 20MB
Maximum discoverable table limit exceeded
Applicable to |
All database integrations |
Level | Critical |
Category |
Discovery job limits |
Potential cause(s) |
Stitch discovered more than the maximum limit of 10,000 tables for the integration. |
Suggested action(s) |
Decrease the number of discoverable tables by limiting the Stitch database user’s access only to tables you want to replicate. You can accomplish this by altering the Stitch database user’s privileges in the database. Refer to the documentation for your database for instructions. |
Back to Common error list
Back to top
Extraction job time limit exceeded
Applicable to |
All integrations |
Level | Info |
Category |
Extraction job limits |
Potential cause(s) |
The extraction exceeded the maximum 24 hours limit set for individual extraction jobs. Stitch sets a maximum limit of 24 hours for individual extraction jobs. This is done to balance resource usage across Stitch, and to help prevent unexpected or unintended continuations of connections against integrations. |
Suggested action(s) |
To help decrease the runtime of extraction, we recommend de-selecting unneeded tables and columns. This will reduce the amount of data being replicated. Stitch will automatically retry extraction based on the integration’s schedule. |
Back to Common error list
Back to top
Maximum record size exceeded
Applicable to |
All integrations |
Level | Critical |
Category |
Extraction job limits |
Potential cause(s) |
A single record exceeded the maximum size limit of 20MB. This limit is imposed by the Import API, which Stitch uses as part of the replication process. |
Suggested action(s) |
Locate the record in the source and, if possible, modify it to be less than Stitch’s limit. You can also try de-selecting columns in the table containing the record. |
Back to Common error list
Back to top
Amazon DynamoDB extraction errors
The extraction errors in this section are applicable to the following database integrations:
- Amazon DynamoDB
Projection expression contains double quotes
Applicable to |
Amazon DynamoDB v1 database integrations |
Level | Critical |
Category |
Projection expressions |
Potential cause(s) |
A projection expression entered in Stitch contains double quotes. |
Suggested action(s) |
Remove double quotes from any projection expression and ensure they adhere to Stitch’s other requirements for projection expressions. |
Back to Amazon DynamoDB error list
Back to top
Microsoft SQL Server extraction errors
The extraction errors in this section are applicable to the following database integrations:
-
Amazon Microsoft SQL Server RDS
-
Microsoft Azure SQL Database
-
Microsoft SQL Server
- Cannot sync stream: [TABLE_NAME] using log-based replication. Change Tracking is not enabled for database: [DATABASE_NAME]
- Cannot sync stream: [TABLE_NAME] using log-based replication. Change Tracking is not enabled for table: [TABLE_NAME]
- CHANGE_TRACKING_MIN_VALID_VERSION has reported a value greater than current-log-version. Executing a full table sync.
Change tracking isn't enabled for a database
Applicable to |
Microsoft SQL Server v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
Change Tracking is not enabled for the named database, which contains tables that are set to replicate and use Log-based Incremental Replication in Stitch. |
Suggested action(s) |
Enable Change Tracking for the database referenced in the error message. To use Change Tracking, you must enabled it both at the database and table level. To enable Change Tracking for the database, log into your database and run the following statement, replacing
|
Back to Microsoft SQL Server error list
Back to top
Change tracking isn't enabled for a table
Applicable to |
Microsoft SQL Server v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
Change tracking is not enabled for the named table, which is set to replicate and use Log-based Incremental Replication. |
Suggested action(s) |
Enable change tracking for the table referenced in the error message. To use Change Tracking, you must enabled it both at the database and table level. Microsoft SQL Server requires that Change Tracking be enabled for every table you want to use Log-based Incremental for. To enable Change Tracking for the table, log into your database and run the following statement, replacing
Run the statement for every table you want to replicate using Log-based Incremental Replication. |
Back to Microsoft SQL Server error list
Back to top
Insufficient log retention settings
Applicable to |
Microsoft SQL Server v1-backed database integrations |
Level | Info |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The log retention settings for the database are insufficient, causing log files to age out before Stitch can replicate them. When this occurs, Stitch will clear the saved log position ID for any affection table(s) and re-replicate them in full. |
Suggested action(s) |
Increase the database’s In addition, make sure you resolve any connection or replication issues quickly. This will reduce the likelihood that binary log files will age out and cause this error. |
Back to Microsoft SQL Server error list
Back to top
MongoDB extraction errors
The extraction errors in this section are applicable to the following database integrations:
-
MongoDB
-
MongoDB Atlas
- Clearing state because Oplog has aged out Must complete full table sync before starting oplog replication for [COLLECTION_NAME]
- not authorized on local to execute command { [COMMAND] }
- Projection blacklists key property id
- Projection cannot have a mix of inclusion and exclusion.
- The projection: [PROJECTION_QUERY] for stream [COLLECTION_NAME] is not valid json
- [DATA_TYPE] is not a supported replication key type
Insufficient maximum OpLog size
Applicable to |
MongoDB v1+-backed database integrations |
Level | Info |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The OpLog’s maximum size is insufficient, causing log files to age out before Stitch can replicate them. When this occurs, Stitch will clear the saved log position ID for any affection collection(s) and re-replicate them in full. |
Suggested action(s) |
Increase the maximum size of the OpLog using the replSetResizeOplog command. Note: As the maximum size you need depends on your database, it may take some experimentation to identify the best setting. Mongo doesn’t currently recommend an OpLog size. |
Back to MongoDB error list
Back to top
Insufficient privileges on local database
Applicable to |
MongoDB v1+-backed database integrations |
Level | Critical |
Category |
Database user privileges |
Potential cause(s) |
The Stitch MongoDB database user isn’t authorized to execute commands on the |
Suggested action(s) |
Grant the Stitch MongoDB database user |
Back to MongoDB error list
Back to top
Projection query excludes the collection's _id field
Applicable to |
MongoDB v1+-backed database integrations |
Level | Critical |
Category |
Projection queries |
Potential cause(s) |
A projection query for a collection set to replicate is excluding the collection’s For example:
|
Suggested action(s) |
Modify the collection’s projection query to remove the exclusion of the Refer to the Selecting MongoDB Fields Using Projection Queries guide for more info. |
Back to MongoDB error list
Back to top
Projection query contains inclusion and exclusion statements
Applicable to |
MongoDB v1+-backed database integrations |
Level | Critical |
Category |
Projection queries |
Potential cause(s) |
A projection query for a collection set to replicate includes both inclusion and exclusion statements. MongoDB doesn’t currently support inclusion and exclusion statements in the same projection query. The following projection query is an example of including both types of statements:
|
Suggested action(s) |
Modify the collection’s projection query to use only inclusion or only exclusion statements. For example:
Refer to the Selecting MongoDB Fields Using Projection Queries guide for more info and examples of projection queries. |
Back to MongoDB error list
Back to top
Projection query contains invalid JSON
Applicable to |
MongoDB v1+-backed database integrations |
Level | Critical |
Category |
Projection queries |
Potential cause(s) |
A projection query for a collection set to replicate isn’t valid JSON. A projection query is a JSON object; keys within the object must be enclosed in double quotes ( For example: The following projection queries are invalid JSON:
|
Suggested action(s) |
Modify the collection’s projection query to be valid JSON. For example:
You can use JSONFormatter to validate the projection query before entering it into Stitch. |
Back to MongoDB error list
Back to top
Incompatible data type for Replication Key
Applicable to |
MongoDB v1+-backed database integrations |
Level | Critical |
Category |
Replication Keys |
Potential cause(s) |
A Replication Key field contains an incompatible data type. Stitch requires MongoDB Replication Key fields to be one of the following data types:
|
Suggested action(s) |
|
Back to MongoDB error list
Back to top
MySQL extraction errors
The extraction errors in this section are applicable to the following database integrations:
-
Amazon Aurora MySQL RDS
-
Amazon MySQL RDS
-
Google CloudSQL MySQL
-
Magento
-
MariaDB
-
Microsoft Azure MySQL
-
MySQL
- A slave with the same server_uuid/server_id as this slave has connected to the master
- binlog_format is not set to 'ROW': [MIXED or STATEMENT].
- binlog_row_image is not set to 'FULL': [MINIMAL or NOBLOB].
- binlog_row_image system variable does not exist. MySQL version must be at least 5.6.2 to use binlog replication.
- Error persisting data for table "[table_name]": Record 0 did not conform to schema
- It is a view.
- Misconfigured master - server id was not set
- MySQL binary logging is not enabled.
- No max value for PK found for table [table_name].
- Requested position ([log_file_position_from_state]) for log file [binary_log_file_name] is greater than current position ([current_log_file_position_on_server]).
- Unable to replicate binlog stream because the following binary log(s) no longer exist: [binary_log_file_name]
MySQL server ID isn't unique
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The server ID of the instance Stitch is connected to is not unique. When using Log-based Replication, the ID of the server Stitch connects to must be unique. This is because MySQL doesn’t allow replication to occur using the same server ID simultaneously across multiple connections. |
Suggested action(s) |
If you’re using Log-based Replication and any of the following are true, you’ll need to define a unique server ID in the integration’s Settings page in Stitch:
To do this, refer to the instructions for the database you’re connecting: |
Back to MySQL error list
Back to top
Unsupported value for binlog_format server parameter
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The |
Suggested action(s) |
Change the The steps for changing this parameter will vary depending on the type of MySQL database you’re using. Click the links below to view instructions for that database. |
Back to MySQL error list
Back to top
Unsupported value for binlog_row_image server parameter
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The |
Suggested action(s) |
Changing the The steps for changing this parameter will vary depending on the type of MySQL database you’re using. Click the links below to view instructions for that database. |
Back to MySQL error list
Back to top
MySQL version is insufficient for Log-based Incremental Replication
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The The version of the MySQL database is less than 5.6.2, which is the minimum version that supports binlog replication. Versions prior to 5.6.2 don’t support the binlog replication feature, which is required to use Log-based Incremental Replication in Stitch. |
Suggested action(s) |
The source MySQL database must be running MySQL version 5.6.2 or greater to use binlog replication. If you can upgrade your database version, you may be able to use binlog replication. |
Back to MySQL error list
Back to top
Schema violation
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The data replicated for a table does not match the expected schema. This occurs when the structure of a table changes in the source and Stitch is unable to verify its schema. This occurs due to how Log-based Incremental Replication works, and how log messages are structured in database binary files. Refer to the Log-based Incremental Replication documentation for more info and examples. This can occur when:
|
Suggested action(s) |
To resolve the error, you’ll need to perform a table-level reset. To do this, open the Table Settings page for the table and click the Reset Table button. This will clear the table’s Replication Key value and queue a full re-replication of the table. To prevent this error in the future:
|
Back to MySQL error list
Back to top
A view is using an unsupported Replication Method
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The source object is a database view. Binary logging doesn’t track events that occur in database views, so Stitch is unable to use Log-based Replication for views. |
Suggested action(s) |
Update the view’s Replication Method to either Key-based Incremental or Full Table. |
Back to MySQL error list
Back to top
MySQL server ID not set
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The server ID for the MySQL server hasn’t been set. The likely cause of this error is setting server parameters on the master server without rebooting the master, which is required for server parameter changes to take effect. |
Suggested action(s) |
Reboot the master instance to ensure the server parameters for enabling binlog are applied. |
Back to MySQL error list
Back to top
Binary logging isn't enabled
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
Binary logging isn’t enabled for the MySQL server. |
Suggested action(s) |
Enable binary logging on your MySQL server. This is done by defining the The steps for enabling binary logging will vary depending on the type of MySQL database you’re using. Click the links below to view instructions for that database. Note: Amazon MySQL RDS and Amazon Aurora RDS databases should have binary logging enabled by default. If you receive this error for either of these databases, verify that the rest of the required server settings are defined correctly. |
Back to MySQL error list
Back to top
There are no Primary Keys in the table.
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The table is empty. For Log-based Incremental Replication there must be Primary Keys in the table, as it’s the only way to identify unique records. If the table is empty, there are no Primary Key values, resulting in this error. Note: Remaining tables will not be replicated if this error occurs, even if they contain valid data. |
Suggested action(s) |
Use Key-based Incremental Replication to continue replication, or add Primary Keys to the table so that Log-based Incremental Replication can be used. |
Back to MySQL error list
Back to top
Unavailable log file position
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
When Stitch replicates data using Log-based Replication, it will “bookmark” its place by saving a position in the log file. When the next replication job begins, Stitch will use this value to identify the place in the log where it should begin reading data. This error means that the log position Stitch has is “ahead” of the server. To summarize, the log position Stitch is attempting to use is greater than the log position that the MySQL database has available. Typically this will be an issue only if the server uses a very small |
Suggested action(s) |
Perform an integration-level reset. To do this, open the Integration Settings page and click the Reset This Integration button. This will clear the integration’s Replication Keys and queue a full re-replication of the integration. We also recommend checking the value of the |
Back to MySQL error list
Back to top
Insufficient log retention settings
Applicable to |
MySQL v1-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The requested binary log file has been removed from the server. When a binary log file is removed before Stitch can read from it, replication will be unable to proceed. This can be caused by:
|
Suggested action(s) |
To resolve the error, you’ll need to perform an integration-level reset. To do this, open the Integration Settings page and click the Reset This Integration button. This will clear the integration’s Replication Keys and queue a full re-replication of the integration. To prevent this error in the future, verify your server’s log retention settings and update them if needed. Stitch recommends a minimum of 3 days, but 7 days is preferred. This ensures that you have time to resolve any issues that arise before logs age out and are purged. The steps for changing this parameter will vary depending on the type of MySQL database you’re using. Click the links below to view instructions for that database. In addition, make sure you resolve any connection or replication issues quickly. This will reduce the likelihood that binary log files will age out and cause this error. |
Back to MySQL error list
Back to top
Oracle extraction errors
The extraction errors in this section are applicable to the following database integrations:
-
Amazon Oracle RDS
-
Oracle
- CONTINUOUS_MINE is desupported for use with DBMNS_LOGMNR.START_LOGMNR
- LogMiner is NOT supported for views. Please change the replication method for [table_name]
- ORA-01291: missing logfile
- ORA-01292: no log file has been specified for the current LogMiner session
- Unable to replicate with logminer for stream([table_name]) because supplmental_log_data is not set to 'ALL' for either the table or the...
The database is using a version that doesn't support LogMiner
Applicable to |
All Oracle-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The database is using a version that doesn’t include support for Oracle’s LogMiner package, which Stitch uses to perform Log-based Incremental Replication. The database must be using a version from 8.0 through 18c. |
Suggested action(s) |
To resolve this error, you have two options:
|
Back to Oracle error list
Back to top
A database view is using Log-based Incremental Replication
Applicable to |
All Oracle-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The source object is a database view. Binary logging doesn’t track events that occur in database views, so Stitch is unable to use Log-based Replication for views. |
Suggested action(s) |
Change the view’s Replication Method to Key-based Incremental or Full Table. |
Back to Oracle error list
Back to top
Missing log files and insufficient RMAN retention policy settings
Applicable to |
All Oracle-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
The requested log file has been removed from the server. When a log file is removed before Stitch can read from it, replicaiton will be unable to proceed. This error typically arises due to insufficient RMAN retention policy settings, which define how long log files remain on a server before they’re automatically purged. It can also be caused by log files being purged before historical replication completes or critical errors that prevent Stitch from replicating data. When this occurs, it means Stitch was unable to proceed to the log file before the retention period passed and the log was purged. |
Suggested action(s) |
To resolve the error, you’ll need to perform an integration-level reset. To do this, open the Integration Settings page and click the Reset Table button. This will clear the integration’s Replication Keys and queue a full re-replication of the integration. To prevent this error in the future, verify your RMAN retention policy settings and update them if needed. Stitch recommends a minimum of 3 days, but 7 days is preferred. This ensures that you have time to resolve any issues that arise before logs age out and are purged. Refer to the Oracle documentation for more info. In addition, make sure you resolve any connection or replication issues quickly. This will reduce the likelihood that log files will age out and cause this error. |
Back to Oracle error list
Back to top
Unavailable SCNs and RMAN retention window settings
Applicable to |
All Oracle-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
LogMiner is unable to locate the System Change Number (SCN) value Stitch has saved. SCNs are used to identify data in log files for Log-based Incremental Replication.
|
Suggested action(s) |
|
Back to Oracle error list
Back to top
Supplemental logging is incorrectly defined
Applicable to |
All Oracle-backed database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
Supplemental logging is incorrectly defined either for the database or the table. Supplemental logging is required by Oracle to use LogMiner, which Stitch uses to perform Log-based Incremental Replication. |
Suggested action(s) |
Stitch supports supplemental logging at the database and table level:
Refer to the Oracle documentation for more info. |
Back to Oracle error list
Back to top
PostgreSQL extraction errors
The extraction errors in this section are applicable to the following database integrations:
-
Amazon Aurora PostgreSQL RDS
-
Amazon PostgreSQL RDS
-
Google CloudSQL PostgreSQL
-
Heroku
-
PostgreSQL
- Fatal Error Occured - FATAL: connection requires a valid client certificate
- Unable to find replication slot 'stitch' nor 'stitch_[name]' with wal2json
SSL connections can't be required
Applicable to |
Google CloudSQL PostgreSQL v2 database integrations |
Level | Critical |
Category |
SSL configuration |
Potential cause(s) |
The Google CloudSQL PostgreSQL instance is configured to require SSL to connect. This configuration isn’t currently supported, as it requires the database to expect client certifications. |
Suggested action(s) |
Verify that the instance isn’t set to require SSL in Google Cloud. If it is, disable the setting and re-try the connection in Stitch. |
Back to PostgreSQL error list
Back to top
Missing replication slot
Applicable to |
PostgreSQL v2 database integrations |
Level | Critical |
Category |
Log-based Incremental Replication |
Potential cause(s) |
Stitch is unable to find a replication slot that adheres to Stitch’s naming requirements. |
Suggested action(s) |
Verify that a replication slot exists for the database you’re trying to connect, and that it adheres to Stitch’s naming requirements. |
Back to PostgreSQL error list
Back to top
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.