Issue 1
Description
The following error message is displayed during migration with DTS:
Causes
Check the log of the source Redis database. If it contains the following message, the client-output-buffer-limit
configured for the source database is exceeded.
psync scheduled to be closed ASAP for overcoming of output buffer limits
Solution
Run the following command to set the client-output-buffer-limit
to infinite and initiate the DTS task again.
config set client-output-buffer-limit 'slave 0 0 0'
Issue 2
Description
The following error message is displayed during migration with DTS:
Causes
By capturing packets on two DTS Syncer instances in the region, it was found that the value of the key was characters rather than a number, causing the INCR execution to fail.
Solution
Delete the relevant key and initiate the DTS migration again.
Issue 3
Description
The following error message is displayed during migration with DTS:
errmsg:Error reading bulk length while SYNCing:Operation now in progress read rdb length from src fail save rdb fail ready shutdown dts
Causes
The error message of the source instance reveals that the RDB file does not have permission to access the directory.
Solution
Run the following command to set diskless replication and initiate the DTS task again.
config set repl-diskless-sync yes
Issue 4
Description
The following error message is displayed during migration with DTS:
Causes
The disk space in the DTS Syncer instance is insufficient.
Solution
Clear the disk in the DTS Syncer instance or mount a new disk and then initiate the DTS task again.
Issue 5
Description
The following error message is displayed during migration with DTS:
Causes
The issue is caused by insufficient memory on the source, leading to RDB generation failure, or an unstable network.
Solution
1. Adjust the kernel connection limits and buffer limits on the source.
Disconnect the source database and adjust the limit on the connections to the source system kernel.
echo "net.ipv4.tcp_max_syn_backlog=4096" >> /etc/sysctl.conf
echo "net.core.somaxconn=4096" >> /etc/sysctl.conf
echo "net.ipv4.tcp_abort_on_overflow=0" /etc/sysctl.conf
sysctl -p
Execute the following command to set the source's client-output-buffer-limit to unlimited.
config set client-output-buffer-limit 'slave 0 0 0'
2. If the issue persists, increase the memory on the machine where the source node is located to ensure that the node has sufficient resources to generate the RDB file.
Issue 6
Description
The following error message is displayed during migration from Redis Memory Edition (Standard Architecture) to Cluster Architecture with DTS:
Causes
Solution
Migrate the data to a Standard Architecture instance in the cloud, or change the business logic to clear multi-key operations.
Issue 7
Description
The following error message is displayed during migration with DTS:
You can see the following information in the execution log of the source node:
44:M 05 Jun 03:31:06.728 * Starting BGSAVE for SYNC with target: disk
44:M 05 Jun 03:31:06.978 * Background saving started by pid 89
89:C 05 Jun 03:32:08.417
44:M 05 Jun 03:32:08.698
44:M 05 Jun 03:32:08.698
44:M 05 Jun 03:32:08.698
44:M 05 Jun 03:50:24.626 * Slave 10.xx.xx.119:<unknown-slave-port> asks for synchronization
44:M 05 Jun 03:50:24.626 * Full resync requested by slave 10.xx.xx.119:<unknown-slave-port>
44:M 05 Jun 03:50:24.626 * Starting BGSAVE for SYNC with target: disk
44:M 05 Jun 03:50:24.880 * Background saving started by pid 90
90:C 05 Jun 03:51:22.585 * DB saved on disk
90:C 05 Jun 03:51:22.739 * RDB: 280 MB of memory used by copy-on-write
44:M 05 Jun 03:51:23.008 * Background saving terminated with success
44:M 05 Jun 03:51:27.898 * Synchronization with slave 10.xx.xx.119:<unknown-slave-port> succeeded
44:M 05 Jun 03:52:19.531
Causes
This is often because the connection of the DTS task to the source node timed out due to network environment issues, big keys contained in the database, or client-output-buffer-limit
overflows on the source node.
Solution
Clear big keys in the source database. You can quickly locate, assess, and delete big keys as instructed in Memory Analysis. Run the following command to set the client-output-buffer-limit
to infinite on the source node.
config set client-output-buffer-limit 'slave 0 0 0'
Issue 8
Description
The following error message is displayed during migration with DTS:
Causes
If this error message is displayed when you retry a failed DTS task, it generally indicates that the target node is not empty or the memory is full.
Solution
Clear the target node and try again, or submit a ticket to apply for DTS overwrite. Issue 9
Description
The following error message is displayed during migration with DTS:
Causes
The Redis node of the target instance experienced an HA master/replica switch, or the proxy node experienced a failover, causing the sync task to fail.
Solution
Create a new DTS task and configure the new node after the HA switch as the target node for data migration.
Issue 10
Description
When the memory eviction policy of the target instance is set to allkey-lru
during migration with DTS, the following error message is displayed:
Causes
The memory of the target instance is smaller than the memory used by the data to be migrated from the source database.
Solution
Issue 11
Description
The following error message is displayed during migration with DTS:
Causes
If an error is reported when you start a DTS migration task with a proxy, it is usually because the bandwidth of the proxy is insufficient.
Solution
Expand the bandwidth of the proxy or perform migration tasks serially in sequence. For detailed directions, see Bandwidth Adjustment. Issue 12
Description
The following error message is displayed during migration with DTS:
[launch]SrcInstance nodes has changed.
Causes
The source node experienced an HA master/replica switch, causing the DTS task sync to fail.
Solution
Create a new DTS task and configure the new node after the HA switch as the target node for data migration.
Was this page helpful?