Tous les produits
Search
Centre de documentation

Data Transmission Service:Erreurs courantes et dépannage

Dernière mise à jour :Aug 13, 2026

Cette rubrique décrit les causes possibles des erreurs courantes que Data Transmission Service (DTS) peut retourner lors de la configuration ou de l'exécution d'une tâche DTS. Elle explique également comment résoudre ces erreurs.

Remarque

Dans cette rubrique, l'expression régulière (.*)? est utilisée pour représenter les variables dans les messages d'erreur.

Vue d'ensemble

DTS retourne des erreurs courantes appartenant aux trois catégories suivantes :

Erreurs courantes lors de la configuration d'une tâche DTS

DTS.Msg.LXCreateOrderError

Scénario : Échec de la création de la commande lors de l'achat d'une instance DTS.

Cause possible : Vous achetez une instance de synchronisation de données transfrontalière, mais l'ID de votre compte Alibaba Cloud n'est pas ajouté à la liste d'autorisation.

Solution : Demandez les permissions nécessaires pour synchroniser des données au-delà des frontières, puis réessayez. Pour plus d'informations, reportez-vous à Demander l'autorisation de synchronisation de données transfrontalière.

DTS.Msg.InvalidParameter.KafkaHostInvalid

Scénario : Vous configurez une tâche DTS pour répliquer des données vers un cluster Kafka connecté via Express Connect, VPN Gateway, or Smart Access Gateway.

Cause possible : Un nom de domaine a été saisi dans le champ d'adresse IP.

Solution : Seul une adresse IP est acceptée dans ce champ. Saisissez une adresse IP privée valide et réessayez.

DTS.Msg.InvalidParameter.KafkaBrokerInvalid

Scénario : Configuration d'une tâche DTS pour répliquer des données vers un cluster Kafka auto-géré hébergé sur une instance Elastic Compute Service (ECS).

Cause possible : Des listeners ont été configurés sur un nœud Kafka en utilisant un nom de domaine.

Solution : Configurez les listeners sur le nœud Kafka en respectant le format suivant :

listeners=Protocol://Private IP address:Port number
advertised_listeners=Protocol://Private IP address:Port number

DTS.Msg.OperationDenied.JobStatusModifying

Scénario : Appel de l'opération ModifyDtsJob pour modifier la configuration d'une tâche de synchronisation de données.

Cause possible : L'instance DTS associée à la tâche se trouve dans l'état Modifying Objects.

Solution : Patientez jusqu'à ce que l'état de l'instance passe à Running, puis réessayez.

DTS.Msg.InvalidParameter.AliyunUidFormat

Scénario : Lors de la configuration d'une tâche de synchronisation de données entre comptes Alibaba Cloud, vous sélectionnez une instance de base de données dans la liste déroulante.

Cause possible : L'ID du compte Alibaba Cloud auquel appartient l'instance de base de données source est invalide.

Solution : Saisissez un ID de compte Alibaba Cloud valide.

DTS.Msg.DuplicateAccount.RDSSqlServer

Scénario : Une base de données SQL Server est spécifiée comme base de données source ou de destination d'une tâche DTS.

Cause possible : L'instance de base de données est déjà utilisée dans une autre tâche DTS, ou il s'agit d'une instance clonée.

Solution : Contactez le support technique d'Alibaba Cloud.

DTS.Msg.SrcLink.InternetAddressNotFound

Scénario : Configuration d'une tâche de migration de données interrégionale.

Cause possible : L'instance de base de données source ne possède pas d'endpoint public.

Solution : Configurez un endpoint public pour l'instance de base de données source, ou mettez en place une tâche de synchronisation de données.

DTS.Msg.UpdateJob.OperationDenied.InitStatus

Scénario : Tentative de modification d'une tâche de synchronisation de données déjà configurée.

Cause possible : La tâche de synchronisation de données a déjà démarré.

Solution : Réinitialisez la tâche ou resélectionnez les objets à synchroniser.

Avertissement

La réinitialisation d'une tâche entraîne la suppression de sa configuration initiale. Soyez prudent.

DTS.Msg.Throttling.User

Scénario : Utilisation d'une fonctionnalité DTS.

Cause possible : Le nombre maximal de requêtes API a été atteint.

Solution : Attendez 15 à 30 secondes avant d'envoyer une nouvelle requête.

DTS.Msg.LXCreateOrder.NotFoundPricePlan

Scénario : Échec de la création de la commande lors de l'achat d'une instance DTS.

Cause possible : Un paramètre invalide a été spécifié lors de l'appel API pour créer une instance DTS, ou le type d'instance DTS acheté n'est pas pris en charge.

Solution : Vérifiez la validité des paramètres spécifiés et réessayez.

DTS.Msg.LXPayOrder.InsufficientBalance

Scénario : Échec du paiement lors de l'achat d'une instance DTS.

Cause possible : Solde insuffisant sur votre compte.

Solution : Rechargez votre compte et réessayez.

DTS.Msg.CheckStatus.InvalidInitStatus

Scénario : Modification des objets à synchroniser.

Cause possible : La tâche de synchronisation de données n'est pas configurée.

Solution : Terminez la configuration de la tâche de synchronisation de données avant de la modifier.

DTS.Msg.DRDSInvokeFail.DatabaseAuthorizationFailed

Scénario : Lors de la configuration d'une tâche de synchronisation de données pour une base de données PolarDB-X, un message d'erreur similaire à l'exemple suivant apparaît :

can not getTableTopology (drds****,ib_ibos****)
Could not connect to address=(host=100.100.XX.XX)(port=****)(type=master) : (conn=****) [10.0.1.1:3306]
Access denied for user 'ib_ibos****'@'100.104.XX.XX' to database 'ib_ibos****')

Cause possible : Le compte de base de données spécifié ne dispose pas des permissions requises sur la base de données.

Solution : Accordez ou modifiez les permissions sur la base de données pour le compte spécifié. Procédez comme suit :

  1. Connectez-vous à la console PolarDB-X.

  2. Dans le volet de navigation de gauche, cliquez sur Instances. Sur la page Instances, cliquez sur le nom de l'instance créée.

  3. Dans le volet de navigation de gauche, choisissez Configuration Management > Account Management.

  4. Localisez le compte de base de données créé et cliquez sur Modify Permissions dans la colonne Actions. Dans la boîte de dialogue qui s'affiche, accordez ou modifiez les permissions sur la base de données.

  5. Cliquez sur OK.1

DTS.Msg.DescribeColumns.TimeOut

Tentative d'obtention des informations sur les colonnes de la base de données source, notamment pour une tâche DTS dont la base de données de destination est un cluster AnalyticDB for MySQL.

Cause possible : La base de données source contient un grand nombre de colonnes ou sa vitesse de lecture est trop lente, ce qui provoque un délai d'expiration lors de la récupération des schémas.

Solution :

  • Appelez l'opération API appropriée pour récupérer les schémas de la base de données source.

  • Vérifiez la vitesse de lecture des données de la base de données source.

DTS.Msg.DescribeStruct.TimeOut

Scénario : Interrogation des informations sur la base de données source et ses tables après la réussite du test de connectivité.

Cause possible : Vous tentez d'obtenir les schémas d'un grand nombre de bases de données sources. Alternativement, la base de données source contient beaucoup de tables ou présente une vitesse de lecture trop faible, entraînant un dépassement de délai lors de la récupération des schémas.

Solution :

  • Spécifiez la base de données source comme objet à synchroniser ou migrer. Ainsi, DTS ne récupère pas les informations détaillées des tables sources.

  • Utilisez l'opération API correspondante pour obtenir les schémas de la base de données source.

  • Contrôlez la vitesse de lecture des données depuis la base de données source.

DTS.Msg.DRDSErrExecuteOnMySQL.ClientVersionTooLow

Scénario : Une base de données PolarDB-X est désignée comme source d'une tâche DTS.

Cause possible : La version du client de base de données PolarDB-X est antérieure à la version requise.

Solution : Mettez à jour le client de base de données PolarDB-X vers une version conforme aux exigences.

DTS.Msg.DbTypeNotSupport.OnlyReadRDS

Scénario : Une base de données PolarDB-X est définie comme source d'une tâche DTS.

Cause possible : L'instance de base de données source est une instance PolarDB-X read-only.

Solution : Remplacez l'instance de base de données source par une instance PolarDB-X primary.

DTS.Msg.DbTypeNotSupport.PolarDBRDS

Scénario : Une base de données PolarDB-X est utilisée comme source d'une tâche DTS.

Cause possible : L'instance de base de données source est une instance PolarDB-X dont le storage type est PolarDB.

Solution : Changez l'instance de base de données source pour une instance PolarDB-X dont le storage type est ApsaraDB RDS for MySQL.

DTS.Msg.OperationDenied.NotPurchased

Scénario : Démarrage d'une tâche DTS via un appel API.

Cause possible : Aucune instance DTS n'a été achetée pour la tâche que vous tentez de démarrer.

Solution : Achetez une instance DTS, puis lancez la tâche.

DTS.Msg.CheckJobFailed.ServerUnAvailable

Scénario : Configuration d'une tâche DTS.

Cause possible : Le système ne parvient pas à se connecter au serveur exécutant la tâche DTS, empêchant ainsi le test de connectivité sur la base de données source ou de destination.

Solution : Contactez le support technique d'Alibaba Cloud.

DTS.Msg.StopJobFailed.ServerUnAvailable

Scénario : Configuration d'une tâche DTS.

Cause possible : Impossible de se connecter au serveur hébergeant la tâche DTS, ce qui empêche la mise en pause de celle-ci.

Solution : Contactez le support technique d'Alibaba Cloud.

DTS.Msg.SQLExecuteError.JDBC4CommunicationsException

Scénario : Consultation des informations sur la base de données source et ses tables après un test de connectivité réussi.

Cause possible : Une erreur de communication de données est survenue. Un paquet a été envoyé du pilote Java Database Connectivity (JDBC) vers le serveur de base de données source, mais aucune réponse n'a été reçue.

Solution :

DTS.Msg.SQLExecuteError.ConnectionRefused

Scénario : Interrogation des informations sur la base de données source et ses tables suite à un test de connectivité positif.

Cause possible : Votre demande de connexion à la base de données source a été refusée.

Solution :

  • Assurez-vous que le processus listener fonctionne correctement. Sinon, vérifiez sa configuration.

  • Examinez la charge du système pour détecter une éventuelle surcharge.

DTS.Msg.GetKafkaMetaInfo.NoAvailableBroker

Scénario : Le paramètre Kafka Version est défini sur Later Than 1.0 pour la base de données de destination.

Cause possible 1 : Nom d'utilisateur ou mot de passe de la base de données incorrect.

Solution 1 : Saisissez des identifiants valides. Si l'authentification est désactivée sur le cluster Kafka, ces champs ne sont pas requis.

Cause possible 2 : Impossible de récupérer les MetaInfo du broker Kafka.

Solution 2 :

  • Vérifiez que le paramètre bootstrap.servers du broker Kafka est correctement défini.

  • Confirmez que la version du cluster Kafka hébergeant la base de données de destination répond aux prérequis.

  • Testez la connectivité réseau.

DTS.Msg.GetMongoDbShardInfo.EmptyInstances

Scénario : Configuration d'une tâche DTS avec une instance de cluster shardé ApsaraDB for MongoDB comme source ou destination.

Cause possible : Les informations sur les shards sont indisponibles.

Solution : Vérifiez la configuration de la base de données MongoDB pour confirmer qu'elle est bien shardée.

DTS.Msg.GetMongoDbShardInfo.NoShardAddress

Scénario : Une tâche DTS est configurée avec une instance de cluster shardé ApsaraDB for MongoDB en tant que source ou destination.

Cause possible : Échec de la récupération des informations relatives aux shards.

Solution : Assurez-vous que la base de données MongoDB est correctement shardée et demandez des endpoints pour les shards. Pour plus de détails sur cette procédure, reportez-vous à Demander un endpoint pour un nœud shard ou ConfigServer dans une instance de cluster shardé.

DTS.Msg.SuspendDenied.JobStatusModifying

Scénario : Mise en pause d'une ou plusieurs tâches DTS simultanément.

Cause possible : Une tâche DTS se trouve dans l'état Modifying Objects. Pour éviter toute incohérence des données, DTS interdit la mise en pause d'une tâche dans cet état.

Solution :

  • Pour une seule tâche : attendez la fin de l'état Modifying Objects.

  • Pour plusieurs tâches : excluez celles qui sont dans l'état Modifying Objects ou patientez jusqu'à la fin de cet état.

DTS.Msg.ModifyDenied.JobStatusNotRunning

Scénario : Modification des objets à synchroniser dans une tâche DTS en pause.

Cause possible : Afin de prévenir les incohérences de données, DTS empêche la modification des objets synchronisés lorsque la tâche est en pause. Cette opération n'est autorisée que si l'state de la tâche est Running.

Solution : Démarrez la tâche, attendez que son état passe à Running, puis réessayez.

Remarque

Évitez de modifier les objets à synchroniser si la latence de la tâche dépasse 10 minutes.

DTS.Msg.LXPayOrder.AmountLimitExceeded

Scénario : Le paiement échoue après la configuration d'une tâche DTS.

Cause possible : Pour un compte portant le tag Proof of Concept (POC), le montant de la commande doit être égal à 0. Tout montant supérieur bloque le paiement.

Solution :

  • Utilisez un bon de réduction pour ramener le montant à payer à 0.

  • Recourez à un autre compte pour acheter l'instance DTS.

Remarque

Les commandes dont le paiement a échoué doivent être annulées via la console Expenses and Costs plutôt que de tenter un nouveau règlement.

DTS.Msg.LXPayOrder.AccountBookNotExists

Scénario : Impossibilité de procéder au paiement après avoir configuré une tâche DTS.

Cause possible : Aucun fonds n'a été ajouté à votre compte Alibaba Cloud ou le solde est insuffisant.

Solution : Approvisionnez votre compte, assurez-vous que le solde est suffisant, puis réessayez.

Remarque

Il est nécessaire d'annuler les commandes non payées dans la console Expenses and Costs au lieu de retenter le paiement.

DTS.Msg.ConfigJob.NoneSelectedStep

Scénario : Configuration d'une tâche DTS par appel API.

Cause possible : Le type de tâche n'est pas défini. Cela signifie que les paramètres StructureInitialization, DataInitialization et DataSynchronization sont tous définis sur false.

Solution : Attribuez des valeurs valides à ces paramètres afin de définir le type de tâche.

DTS.Msg.ConfigJob.InvalidDbListFormat

Scénario : Recours à une opération API pour configurer une tâche DTS.

Cause possible : La valeur du paramètre DbList n'est pas une chaîne JSON valide.

Solution : Fournissez une chaîne JSON valide pour ce paramètre.

DTS.Msg.ConfigJob.InvalidReserveFormat

Scénario : Utilisation d'une opération API pour la configuration d'une tâche DTS.

Cause possible : Le paramètre Reserve contient une chaîne JSON invalide.

Solution : Définissez ce paramètre avec une chaîne JSON valide.

DTS.Msg.DistributedDatabaseNodesError

Scénario : Achat d'une instance de synchronisation de données avec une base de données distribuée comme source.

Cause possible : Le nombre de nœuds de la base de données distribuée ne correspond pas à la valeur du paramètre Number of Distributed Database Nodes spécifié lors de l'achat de l'instance DTS.

Solution : Alignez la valeur du paramètre Number of Distributed Database Nodes sur le nombre réel de nœuds de la base de données distribuée.

DTS.Msg.LXQueryOrder.NotFoundNormalOrder

Scénario : Mise à niveau, rétrogradation des configurations d'une instance DTS ou changement de méthode de facturation.

Remarque

La fonctionnalité de rétrogradation des spécifications est en cours de déploiement progressif et n'est accessible qu'à certains utilisateurs.

Cause possible 1 : L'instance est terminée (état Completed) mais n'a pas été libérée.

Solution : Libérez l'instance qui se trouve dans l'état Completed.

Cause possible 2 : Bien que libérée, l'instance reste visible dans la console DTS.

Solution : Contactez le support technique d'Alibaba Cloud.

DTS.Msg.GetSSLInfo.NoSSLConn

Scénario : Sélection de SSL-encrypted pour le paramètre Encryption lors de la configuration d'une tâche DTS.

Cause possible : Le chiffrement SSL n'est pas activé sur l'instance de base de données configurée.

Solution : Activez le chiffrement SSL pour l'instance de base de données ou choisissez Non-encrypted pour le paramètre Encryption.

DTS.Msg.ModifyDynamicConfig.InvalidStatus

Scénario : Modification des configurations d'une instance de synchronisation ou de migration de données déjà acquise.

Cause possible : La tâche n'est pas dans l'état Running.

Solution : Confirmez que la tâche est bien à l'état Running avant de réessayer.

DTS.Msg.TransferInstanceClass.NoPermission

Scénario : Rétrogradation des configurations d'une instance DTS.

Cause possible : L'opération est effectuée par un utilisateur Resource Access Management (RAM) qui ne possède pas les permissions nécessaires pour rétrograder les configurations d'une instance DTS.

Solution : Accordez les permissions adéquates à votre utilisateur RAM ainsi qu'au compte Alibaba Cloud associé pour permettre la rétrogradation des configurations d'une instance DTS. Contactez le support technique d'Alibaba Cloud.

DTS.Msg.OperationDenied.ConsumerGroupOutOfUsage

Scénario : Création d'un groupe de consommateurs pour une instance de suivi des modifications.

Cause possible : L'instance de suivi des modifications comporte déjà plus de 20 groupes de consommateurs.

Solution : Supprimez les groupes de consommateurs inutilisés selon vos besoins métier, puis réessayez.

DTS.Msg.GrantAccessAlreadyExists

Scénario : Configuration d'une tâche DTS.

Cause possible : Erreur occasionnelle.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

DTS.Msg.DbListIsEmpty

Scénario : Configuration d'une tâche DTS via une opération API.

Cause possible : Le paramètre DbList est nul ou sa valeur équivaut à null.

Solution : Attribuez une valeur non nulle au paramètre DbList. Pour plus d'informations, reportez-vous à Objets de migration, de synchronisation et d'abonnement.

DTS.Msg.GetRedisNodes.NotCluster

Scénario : Une instance Redis est spécifiée comme base de données source ou de destination d'une tâche DTS.

Cause possible : Le paramètre Instance Mode ne correspond pas à l'architecture de l'instance Redis.

Solution : Ajustez le paramètre Instance Mode conformément à l'architecture de l'instance Redis.

DTS.Msg.InvalidDestinationEndPointRegion

Scénario : Configuration d'une tâche DTS effectuée par appel API.

Cause possible : La région spécifiée pour l'instance de base de données de destination est invalide ou non prise en charge par DTS.

Solution : Indiquez une région valide pour l'instance de base de données de destination. Pour consulter les Region ID prises en charge, reportez-vous à Régions prises en charge.

DTS.Msg.InvalidSourceEndPointRegion

Scénario : Recours à une opération API pour configurer une tâche DTS.

Cause possible : Région invalide ou non supportée par DTS pour l'instance de base de données source.

Solution : Sélectionnez une région valide pour l'instance de base de données source. Pour plus de détails, consultez Régions prises en charge.

DTS.Msg.AdminAccountExists

Scénario : Configuration d'une tâche DTS.

Cause possible : DTS crée un compte privilégié pour certains types de bases de données sources. Cette erreur survient lorsqu'un compte existant dans la base de données source porte le même nom que celui que DTS tente de créer.

Solution : Contactez le support technique d'Alibaba Cloud.

DTS.Msg.NotSupportModify

Scénario : Appel de l'opération ModifyDtsJob pour ajuster la configuration d'une tâche DTS.

Cause possible : Le paramètre DtsInstanceId correspond à l'ID d'une instance de migration de données.

Solution : Seules les configurations ETL (extract, transform, load) d'une tâche de migration peuvent être modifiées via la console DTS. Pour toute autre modification, créez une nouvelle tâche.

DTS.Msg.PrePayNotAllowDelete

Scénario : Tentative de libération d'une instance DTS via une opération API.

Cause possible : Une instance DTS par abonnement ne peut pas être libérée.

Solution : Ne libérez pas une instance DTS par abonnement.

DTS.Msg.Forbidden.AliyunUIDNotFound

Scénario : Configuration d'une tâche DTS dans la console DTS. Cette erreur survient fréquemment lors de la réplication de données entre comptes Alibaba Cloud ou lors d'une connexion à la console DTS avec un utilisateur RAM.

Cause possible : Les informations du compte Alibaba Cloud utilisé pour accéder à la console DTS ne sont pas initialisées.

  • Pour une tâche DTS impliquant une réplication inter-comptes Alibaba Cloud, le compte propriétaire de la base de données source ne s'est jamais connecté à la console DTS.

  • En cas de connexion via un utilisateur RAM, le compte Alibaba Cloud parent n'a jamais accédé à la console DTS.

Solution : Identifiez l'identifiant unique (UID) mentionné dans le message d'erreur, connectez-vous à la console DTS avec le compte Alibaba Cloud correspondant, puis réessayez.

DTS.Msg.RamPermissionDenied

Scénario : Vous vous connectez à la console DTS en tant qu'utilisateur RAM pour effectuer des opérations.

Cause possible : L'utilisateur RAM ne dispose pas des permissions requises.

Solution : Accordez les permissions nécessaires à l'utilisateur RAM, puis réessayez. Pour plus d'informations, reportez-vous à Autoriser un utilisateur RAM à gérer DTS ou Politiques personnalisées pour DTS.

Remarque

Lors de la création d'une politique personnalisée, vous devez utiliser les valeurs des paramètres Action et ResourceId affichées dans le message d'erreur.

错误提示

DTS.Msg.EcsJoinSecurityGroupLimitExceeded

Scénario : Vous configurez une tâche DTS où le paramètre Access Method est défini sur Self-managed Database on ECS pour une instance de base de données.

Cause possible : L'instance ECS a déjà été ajoutée à cinq groupes de sécurité.

Solution : Retirez l'instance ECS des groupes de sécurité superflus selon vos besoins métier, puis réessayez. Pour plus d'informations, reportez-vous à Retirer une instance d'un groupe de sécurité.

Remarque

Si des contraintes métier empêchent le retrait de l'instance ECS de certains groupes de sécurité, ajustez les groupes de sécurité de l'instance ECS afin que leur nombre total n'excède pas cinq.

DTS.Msg.UpgradeTrialTimesLimit

Scénario : Vous testez une nouvelle fonctionnalité DTS permettant d'augmenter le nombre maximal de requêtes par seconde (RPS) d'une instance DTS.

Cause possible : Le quota d'essai pour augmenter la limite supérieure de RPS est épuisé. DTS offre trois essais gratuits par compte Alibaba Cloud. Chaque essai gratuit reste valide pendant 24 heures.

Solution : Aucune.

DTS.Msg.HasRunningTrial

Scénario : Vous testez une nouvelle fonctionnalité DTS permettant d'augmenter le nombre maximal de RPS d'une instance DTS.

Cause possible : La fonctionnalité est déjà activée pour cette instance DTS. Il est impossible de l'activer à nouveau tant que l'essai gratuit précédent reste valide.

Solution : Aucune.

DTS.Msg.DtsInstanceHasNoLimit

Scénario : Vous testez une nouvelle fonctionnalité DTS permettant d'augmenter le nombre maximal de RPS d'une instance DTS.

Cause possible : L'instance DTS n'a aucune limite de RPS. Par conséquent, cette fonctionnalité ne peut pas être activée pour cette instance.

Solution : Aucune.

DTS.Msg.UpgradeTrialInvalidJobStatus

Scénario : Vous testez une nouvelle fonctionnalité DTS permettant d'augmenter le nombre maximal de RPS d'une instance DTS.

Cause possible : Cette fonctionnalité n'est pas prise en charge pour l'instance DTS dans son état actuel. Elle fonctionne uniquement lorsque l'instance est dans l'état Running, Paused ou Failed.

Solution : Aucune.

DTS.Msg.InvalidMigrationJobId

Scénario : Vous appelez une opération API pour configurer une tâche DTS.

Cause possible : L'ID de tâche spécifié est invalide ou la tâche a été supprimée.

Solution : Spécifiez un ID de tâche valide, puis réessayez.

DTS.Msg.InvalidIpAddress

Scénario : Vous configurez une tâche DTS où le paramètre Access Method est défini sur Public IP Address, Express Connect, VPN Gateway, or Smart Access Gateway ou Cloud Enterprise Network (CEN) pour une instance de base de données.

Cause possible : Le format de l'adresse IP spécifiée est invalide, ce qui empêche sa résolution.

Solution : Saisissez une adresse IP valide, puis réessayez.

DTS.Msg.PauseDenied.JobStatusNotRunning

Scénario : Vous mettez en pause une tâche DTS.

Cause possible : La tâche que vous souhaitez mettre en pause n'est pas dans l'état Running. Elle peut se trouver, par exemple, dans l'état Failed, Paused ou Initializing.

Solution : Corrigez la tâche ou attendez qu'elle passe à l'état Running, puis mettez-la en pause.

DTS.Msg.CheckpointOutOfAdjustableRange

Scénario : Vous modifiez le point de contrôle de consommation de la phase Incremental Write d'une instance DTS.

Cause possible : Le point de contrôle de consommation spécifié se situe en dehors de la plage de temps valide.

Solution : Spécifiez un point de contrôle de consommation compris dans la plage de temps valide.

DTS.Msg.MaxRetryTime.Invalid

Scénario : Vous modifiez la valeur du paramètre Retry Time for Failed Connections.

Cause possible : La nouvelle valeur se situe en dehors de la plage autorisée. Valeurs valides : de 10 à 1440. Unité : minutes.

Solution : Définissez une valeur comprise dans la plage autorisée pour le paramètre Retry Time for Failed Connections. Nous recommandons une valeur supérieure à 30.

DTS.Msg.CrossRegionJobTransferToCluster

Scénario : Vous migrez une tâche DTS d'un cluster partagé vers un cluster dédié.

Cause possible : Les bases de données source et destination spécifiées dans la tâche DTS du cluster partagé résident dans des régions différentes. Dans ce cas, la migration de la tâche DTS vers un cluster dédié est impossible.

Solution : Aucune.

DTS.Msg.JobNotInClusterRegion

Scénario : Vous migrez une tâche DTS d'un cluster partagé vers un cluster dédié.

Cause possible : Le cluster partagé source de la migration et le cluster dédié cible résident dans des régions différentes. La migration d'une tâche DTS n'est possible que vers un cluster dédié situé dans la même région que le cluster partagé.

Solution : Aucune.

DTS.Msg.CallCloudProductApiError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de l'appel par DTS d'une opération API d'un autre service Alibaba Cloud.

Solution : Consultez la cause et la solution en fonction des valeurs des paramètres CloudProduct, ErrCode et ErrMsg dans le message d'erreur.

DTS.Msg.MongoCommandError

Scénario : Vous spécifiez une base de données MongoDB comme base de données source d'une tâche DTS.

Cause possible : Une erreur survient lors de l'exécution de commandes MongoDB.

Solution : Reportez-vous à la documentation officielle MongoDB et résolvez l'erreur en fonction de la commande exécutée et du message d'erreur.

DTS.Msg.RedisCluster.NotSupportClassicNetworkEcs

Scénario : Vous spécifiez une base de données Redis comme base de données source ou destination d'une tâche DTS via une opération API.

Cause possible : DTS ne prend pas en charge les clusters Redis hébergés sur une instance ECS déployée sur le réseau classique.

Solution : Aucune.

DTS.Msg.NotSupportRedisMinorVersion

Scénario : Vous spécifiez une base de données Redis comme base de données source ou destination d'une tâche DTS via une opération API.

Cause possible : DTS ne prend pas en charge cette version mineure de l'instance Redis.

Solution : Mettez à jour la version mineure de l'instance Redis, puis reconfigurez la tâche. Pour plus d'informations sur la mise à jour de la version mineure, reportez-vous à Mettre à jour les versions mineures et proxy.

DTS.Msg.DtsInstanceNotExists

Scénario : Vous appelez une opération API pour obtenir les détails d'une instance DTS.

Cause possible : L'instance DTS n'existe pas.

Solution : Aucune.

DTS.Msg.NotPurchaseDtsInstance

Scénario : Vous appelez une opération API pour modifier les paramètres de limitation de débit d'une tâche DTS.

Cause possible : Aucune instance DTS n'a été achetée pour cette tâche. La modification des paramètres de limitation de débit est donc impossible.

Solution : Achetez une instance DTS avant de modifier les paramètres de limitation de débit.

DTS.Msg.NotSupportJobType

Scénario : Vous appelez une opération API pour consulter les données de surveillance des performances.

Cause possible : DTS ne permet pas de consulter les données de surveillance des performances pour ce type de tâche.

Solution : Aucune.

DTS.Msg.MysqlCommandError

Scénario : Vous exécutez une commande MySQL sur une base de données source ou destination.

Cause possible : Une erreur survient lors de l'exécution de la commande MySQL.

Solution : Reportez-vous à la documentation officielle MySQL et résolvez l'erreur en fonction de la commande exécutée et du message d'erreur.

DTS.Msg.DynamicConfigError

Scénario : Vous modifiez les paramètres de limitation de débit d'une tâche DTS.

Cause possible : La modification échoue en raison de connexions réseau instables.

Solution : Réessayez.

DTS.Msg.GetVpcError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la connexion de DTS à une instance connectée par Virtual Private Cloud (VPC).

Solution : Reportez-vous à la documentation officielle VPC et résolvez l'erreur en fonction du message d'erreur.

DTS.Msg.ListResourceGroupsError

Scénario : Vous consultez les détails d'une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge le groupe de ressources de la tâche.

Solution : Réessayez.

DTS.Msg.SearchDtsJobLogError

Scénario : Vous consultez les journaux d'une tâche DTS.

Cause possible : La plage de temps spécifiée pour la requête est trop étendue.

Solution : Réduisez la plage de temps de la requête, puis réessayez.

DTS.Msg.GetDgInstanceError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la connexion de DTS à une instance de base de données accessible via une passerelle de base de données.

Solution : Reportez-vous à la documentation officielle de Database Gateway et résolvez l'erreur en fonction du message d'erreur.

DTS.Msg.JobProgressNotExists

Scénario : Vous ignorez une table du module de migration complète des données.

Cause possible : Une erreur survient lors de l'opération d'ignorance de la table.

Solution : Réessayez.

DTS.Msg.GetCenError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la connexion de DTS à une instance CEN.

Solution : Reportez-vous à la documentation officielle CEN et résolvez l'erreur en fonction du message d'erreur.

DTS.Msg.GetDgDatabaseError

Scénario : Vous configurez une tâche DTS dont l'instance de base de données source ou destination est accessible via une passerelle de base de données.

Cause possible : Une erreur survient lors de la connexion de DTS à l'instance de base de données accessible via une passerelle de base de données.

Solution : Contactez le support technique Alibaba Cloud.

DTS.Msg.SQLServerError

Scénario : Vous spécifiez une base de données SQL Server comme base de données source ou destination d'une tâche DTS.

Cause possible : Une erreur survient lors de l'exécution d'une instruction SQL.

Solution : Reportez-vous à la documentation officielle SQL Server et résolvez l'erreur en fonction de l'instruction exécutée et du message d'erreur.

DTS.Msg.InvalidDbList

Scénario : Vous modifiez les objets à synchroniser dans une tâche de synchronisation des données.

Cause possible : Un paramètre invalide a été spécifié pour les objets à synchroniser.

Solution : Vérifiez la validité des paramètres des objets à synchroniser, puis réessayez.

DTS.Msg.GetRdsNetInfoError

Scénario : Vous spécifiez une instance ApsaraDB RDS comme base de données source ou destination d'une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations réseau de l'instance ApsaraDB RDS.

Solution : Contactez le support technique Alibaba Cloud.

DTS.Msg.PolarDB.DBDescribeDBClusterAttribute

Scénario : Vous configurez une tâche DTS dont la base de données source ou destination est une instance PolarDB (PolarDB for MySQL, PolarDB for Oracle, PolarDB for PostgreSQL ou PolarDB-X).

Cause possible : Une erreur survient lorsque DTS interroge les informations de l'instance PolarDB.

Solution : Contactez le support technique Alibaba Cloud.

DTS.Msg.DgInstanceNotExists

Scénario : Vous configurez une tâche DTS dont l'instance de base de données source ou destination est accessible via une passerelle de base de données.

Cause possible : L'instance de base de données accessible via la passerelle de base de données n'existe pas.

Solution : Aucune.

DTS.Msg.MongoDB.DescribeDBInstanceAttribute

Scénario : Vous spécifiez une instance MongoDB comme base de données source ou destination d'une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de l'instance MongoDB.

Solution : Contactez le support technique Alibaba Cloud.

DTS.Msg.ClearConfigureContextError

Scénario : Vous modifiez les objets à synchroniser dans une tâche de synchronisation des données.

Cause possible : Une erreur survient lorsque DTS modifie les objets à synchroniser.

Solution : Contactez le support technique Alibaba Cloud.

DTS.Msg.ModifyCheckpoint.CurrentCheckpointIsEmpty

Scénario : Vous modifiez le point de contrôle de consommation d'une tâche DTS.

Cause possible : Le point de contrôle de consommation spécifié est vide.

Solution : Vérifiez le point de contrôle de consommation spécifié et définissez-en un qui se situe dans la plage de temps valide.

DTS.Msg.DbInstanceNotExists

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance de base de données spécifiée n'existe pas.

Solution : Aucune.

DTS.Msg.NotSupportEsInstance

Scénario : Vous configurez une tâche DTS.

Cause possible : DTS ne prend pas en charge ce cluster Elasticsearch. Une erreur survient lorsque DTS interroge les informations réseau du cluster Elasticsearch.

Solution : Utilisez un cluster Elasticsearch pris en charge par DTS. Pour plus d'informations sur les versions compatibles, reportez-vous à Scénarios de synchronisation des données et Scénarios de migration.

DTS.Msg.AliyunDbsError

Scénario : Vous configurez une tâche de migration de données dont les bases de données SQL Server source et destination sont accessibles via une passerelle de protocole physique.

Cause possible : Une erreur survient lors de l'appel d'une opération API pour accéder à Database Backup (DBS).

Solution : Résolvez l'erreur en fonction du message d'erreur de l'opération API.

DTS.Msg.ScheduleJobError

Scénario : Vous démarrez, mettez en pause ou arrêtez une tâche DTS.

Cause possible : DTS est temporairement indisponible.

Solution : Réessayez ultérieurement.

DTS.Msg.InvalidPort

Scénario : Vous configurez une tâche DTS.

Cause possible : Le paramètre utilisé pour spécifier le numéro de port est invalide.

Solution : Saisissez un numéro de port valide.

DTS.Msg.ModifyDtsJob.NoIncrementalWriteModule

Scénario : Vous modifiez les objets à synchroniser.

Cause possible : La tâche actuelle n'est pas une tâche de synchronisation des données.

Solution : Vérifiez s'il s'agit bien d'une tâche de synchronisation des données. La modification des objets à synchroniser est réservée aux tâches de synchronisation des données.

DTS.Msg.ModifyDtsJob.HasCanNotRestartIncrementalWriteModule

Scénario : Vous modifiez les objets à synchroniser.

Cause possible : Le module d'écriture incrémentielle de la tâche actuelle ne peut pas être redémarré.

Solution : Assurez-vous que le module d'écriture incrémentielle de la tâche est dans l'état Running, Paused ou Failed avant de modifier les objets à synchroniser.

DTS.Msg.ModifyDtsJob.HasNotSyncedIncrementalWriteModule

Scénario : Vous modifiez les objets à synchroniser.

Cause possible : Le module d'écriture incrémentielle de la tâche actuelle n'est pas en cours d'exécution.

Solution : Assurez-vous que le module d'écriture incrémentielle de la tâche est dans l'état Running avant de modifier les objets à synchroniser.

Abnormal.RamCheckUserRole

Scénario : Vous créez une tâche DTS.

Cause possible : Le compte Alibaba Cloud n'a pas accordé de permissions au rôle AliyunDTSDefaultRole, qui est le rôle par défaut dans DTS.

Solution : Accordez les permissions au rôle par défaut dans DTS, puis réessayez. Pour plus d'informations sur l'octroi de permissions, reportez-vous à Accorder des permissions DTS pour accéder aux ressources cloud.

Forbidden.InstanceNotFound

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance spécifiée n'existe pas.

Solution : Vérifiez la validité de l'ID de l'instance, puis réessayez.

InvalidJobId

Scénario : Vous configurez une tâche DTS.

Cause possible : La tâche DTS n'existe pas.

Solution : Vérifiez la validité de l'ID de la tâche, puis réessayez.

InternalError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur interne DTS est survenue.

Solution : Contactez le support technique Alibaba Cloud.

RdsGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

LXCreateOrder.InvokeFail

Scénario : Vous achetez une instance DTS.

Cause possible : Une erreur occasionnelle est survenue.

Solution : Contactez le support technique Alibaba Cloud.

DbProductInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de l'appel par DTS d'une opération API d'un autre service Alibaba Cloud.

Solution : Résolvez l'erreur en fonction du message d'erreur renvoyé par l'opération API de l'autre service Alibaba Cloud. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidParameter

Scénario : Vous appelez une opération API pour configurer une tâche DTS.

Cause possible : Un paramètre invalide a été spécifié.

Solution : Définissez une valeur valide pour ce paramètre.

DTS.Msg.CreateSubDistriubtedJobError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la création d'une tâche distribuée par DTS.

Solution : Contactez le support technique Alibaba Cloud.

NotFound.UserDBInstanceList

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances de base de données.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

AssumeRoleFail

Scénario : Vous configurez une tâche DTS pour répliquer des données entre plusieurs comptes Alibaba Cloud.

Cause possible : Le nom du rôle RAM spécifié pour accéder aux ressources entre comptes Alibaba Cloud est invalide.

Solution : Vérifiez la validité du nom du rôle RAM. Pour plus d'informations, reportez-vous à la section Synchronisation d'instances ApsaraDB RDS for MySQL entre comptes Alibaba Cloud de la rubrique Synchroniser des données entre des instances ApsaraDB RDS for MySQL de différents comptes Alibaba Cloud.

OperationDenied.JobStatus

Scénario : Vous configurez une tâche DTS.

Cause possible : Cette opération n'est pas autorisée pour la tâche dans son état actuel.

Solution : Assurez-vous que l'état de la tâche répond aux exigences requises, puis réessayez.

NetWorkItemNotFound

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance de base de données ne prend pas en charge le type de réseau spécifié.

Solution : Vérifiez que le type de réseau spécifié correspond bien à celui de l'instance de base de données.

EcsJoinSecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de l'ajout d'une instance ECS à un groupe de sécurité.

Solution : Résolvez l'erreur en fonction du message d'erreur. Pour plus d'informations, consultez la section FAQ de la rubrique Ajouter une règle de groupe de sécurité.

SQLExecuteError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de l'exécution d'une instruction SQL.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

NoPermission

Scénario : Vous configurez une tâche DTS en tant qu'utilisateur RAM.

Cause possible : L'utilisateur RAM ne dispose pas des permissions requises.

Solution : Accordez les permissions nécessaires à l'utilisateur RAM, puis réessayez. Pour plus d'informations, reportez-vous à Autoriser un utilisateur RAM à gérer DTS ou Politiques personnalisées pour DTS.

PolarDbGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS dont la base de données source ou destination est une instance PolarDB (PolarDB for MySQL, PolarDB for Oracle, PolarDB for PostgreSQL ou PolarDB-X).

Cause possible : Une erreur survient lorsque DTS interroge les informations de l'instance PolarDB.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidRpsValue

Scénario : Vous modifiez les paramètres de limitation de débit d'une tâche DTS.

Cause possible : La valeur RPS spécifiée ne respecte pas les exigences requises.

Solution : Spécifiez une valeur RPS valide en suivant le message d'erreur, puis réessayez.

RdsInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de l'appel par DTS d'une opération API ApsaraDB RDS.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidTaskStatus

Scénario : Vous modifiez les objets à synchroniser.

Cause possible : Le module d'écriture incrémentielle de la tâche actuelle n'est pas en cours d'exécution.

Solution : Assurez-vous que le module d'écriture incrémentielle de la tâche est dans l'état Running avant de modifier les objets à synchroniser.

PolarDbGetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS dont la base de données source ou destination est une instance PolarDB (PolarDB for MySQL, PolarDB for Oracle, PolarDB for PostgreSQL ou PolarDB-X).

Cause possible : Une erreur survient lorsque DTS interroge les informations de liste d'autorisation de l'instance PolarDB.

Solution : Résolvez l'erreur en fonction du message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ADB30GetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS dont la base de données de destination est un cluster AnalyticDB for MySQL V3.0.

Cause possible : Une erreur survient lorsque DTS interroge les informations réseau du cluster AnalyticDB for MySQL V3.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

QueryInstanceConnection

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations réseau d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsGetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsGetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge la liste d'autorisation d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidParameter.TagValue

Scénario : Vous ajoutez des tags.

Cause possible : La valeur d'un tag est invalide.

Solution : Spécifiez une valeur de tag valide et réessayez.

RamPermissionCheckFailed

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie les permissions d'un utilisateur RAM.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsModifyWhiteName.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie la liste d'autorisation d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DmsInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS appelle une opération API de Data Management (DMS).

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidParameter.DStoreDataRange

Scénario : Vous modifiez le point de contrôle de consommation d'une tâche DTS.

Cause possible : Le point de contrôle de consommation spécifié ne se situe pas dans la plage de temps valide.

Solution : Spécifiez un point de contrôle de consommation situé dans la plage de temps valide, en vous basant sur le message d'erreur.

InvalidStepId

Scénario : Vous configurez une tâche DTS.

Cause possible : L'étape spécifiée n'existe pas.

Solution : Assurez-vous que le numéro d'étape est valide et réessayez.

IllegalJdbcUrl

Scénario : Vous configurez une tâche DTS.

Cause possible : L'URL JDBC d'une instance de base de données est invalide.

Solution : Utilisez une URL JDBC valide et réessayez.

InvalidRegion.NotFound

Scénario : Vous configurez une tâche DTS.

Cause possible : La région que vous avez spécifiée n'existe pas.

Solution : Spécifiez une région valide et réessayez.

MissingParameter

Scénario : Vous configurez une tâche DTS.

Cause possible : Un paramètre requis n'est pas spécifié dans la requête.

Solution : Assurez-vous que les paramètres de la requête sont valides et complets, puis réessayez.

AliyunProductInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS appelle une opération API d'un autre service Alibaba Cloud.

Solution : Consultez la cause et la solution en vous basant sur les valeurs des paramètres CloudProduct, ErrCode et ErrMsg dans le message d'erreur.

DTS.Msg.OperationDenied.JobStatus

Scénario : Vous configurez une tâche DTS.

Cause possible : Cette opération n'est pas autorisée pour la tâche dans son état actuel.

Solution : Réessayez lorsque l'état de la tâche répond aux exigences requises.

OperationDenied.DBInstanceStatus

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance ApsaraDB RDS configurée pour la tâche n'est pas dans l'état Running.

Solution : Assurez-vous que l'état de l'instance ApsaraDB RDS est Running. Réessayez ultérieurement.

InvalidInstanceId

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance de base de données spécifiée n'existe pas.

Solution : Assurez-vous de spécifier un ID d'instance de base de données valide et réessayez.

InvalidStepCode.NotAllowed

Scénario : Vous mettez en pause le module de collecte des données incrémentielles.

Cause possible : Le module de collecte des données incrémentielles ne peut pas être mis en pause.

Solution : Aucune.

InvalidJobType.NotToWay

Scénario : Vous inversez le sens d'une tâche de synchronisation bidirectionnelle.

Cause possible : Ce type de tâche ne permet pas d'inverser le sens de la synchronisation.

Solution : Aucune.

InvalidJobType.NotSupport

Scénario : Vous inversez le sens d'une tâche de synchronisation bidirectionnelle.

Cause possible : Ce type de tâche ne permet pas d'inverser le sens de la synchronisation.

Solution : Aucune.

InvalidJobStatus

Scénario : Vous inversez le sens d'une tâche de synchronisation bidirectionnelle.

Cause possible : L'état actuel de la tâche ne permet pas d'inverser le sens de la synchronisation.

Solution : Assurez-vous que les states des tâches de synchronisation directe et inverse sont Running ou Paused. Réessayez ensuite.

HbaseueNetWorkItemNotFound

Scénario : Vous configurez une tâche DTS.

Cause possible : L'instance de base de données ne prend pas en charge le type de réseau spécifié.

Solution : Assurez-vous que le type de réseau spécifié correspond au type de réseau de l'instance de base de données.

InvalidSslConfig

Scénario : Vous configurez une tâche DTS.

Cause possible : L'enregistrement du fichier SSL TrustStore a échoué.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

VpcInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS se connecte à une instance de base de données.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

QueryInstanceAttr

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

QueryInstanceWhiteList

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge la liste d'autorisation d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

HbaseueModifyInstanceWhiteList

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge la liste d'autorisation d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

CreateAccountFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée un compte de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ModifyAccountFail

Scénario : Vous configurez une tâche DTS.

Cause possible : L'octroi de permissions à un compte de base de données a échoué.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.ModifyDbListFail

Scénario : Vous modifiez les objets à synchroniser dans une tâche de synchronisation des données.

Cause possible : Une erreur survient lors de la modification des objets à synchroniser.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DropAccountFail

Scénario : Vous configurez une tâche DTS.

Cause possible : La suppression d'un compte de base de données a échoué.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

QueryAccountFail

Scénario : Vous configurez une tâche DTS.

Cause possible : DTS ne parvient pas à interroger un compte de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

AccountExists

Scénario : Vous configurez une tâche DTS.

Cause possible : Le compte de base de données spécifié existe déjà.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS appelle une opération API de Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS se connecte à une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DRDSInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS se connecte à une instance PolarDB-X 1.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.InvalidDrdsTable

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de topologie d'une table dans une instance PolarDB-X 1.0.

Solution : Assurez-vous que les informations de topologie de la table sont valides en vous basant sur le message d'erreur, puis réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.MissingUserName

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie l'AccessKey ID du compte Alibaba Cloud auquel appartient un projet MaxCompute.

Solution : Assurez-vous que l'AccessKey ID du compte Alibaba Cloud est valide et réessayez.

DTS.Msg.MissingPassword

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie l'AccessKey secret du compte Alibaba Cloud auquel appartient un projet MaxCompute.

Solution : Assurez-vous que l'AccessKey secret du compte Alibaba Cloud est valide et réessayez.

PolarDbInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

GpdbInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

AdsV3InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.InvalidDbListError

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie les objets à synchroniser.

Solution : Assurez-vous que les objets à synchroniser sont correctement configurés et réessayez.

ADB30GetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de liste d'autorisation d'un cluster AnalyticDB for MySQL V3.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ADB30ModifyWhiteName.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie la liste d'autorisation d'un cluster AnalyticDB for MySQL V3.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ADB30GetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des clusters AnalyticDB for MySQL V3.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ADB30GetDbClusterAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'un cluster AnalyticDB for MySQL V3.0.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DescribeResourceUsage.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'utilisation des ressources d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DescribeDatabases.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsGetInstanceConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsCreateUserAccount.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée un compte de base de données pour une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

HbaseueGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance ApsaraDB for HBase.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

GetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsGetRegions.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de région d'une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsCreateMigrateTask.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée une tâche de migration de données dont la base de données source ou de destination est une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RdsDescribeMigrateTaskById.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge une tâche de migration de données dont la base de données source ou de destination est une instance ApsaraDB RDS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de liste d'autorisation d'une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetInstanceConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetShardingMongoConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'un nœud shard dans une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbModifyWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie la liste d'autorisation d'une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MongoDbGetShardingMongoGidInvokeFail.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge le paramètre gid d'un nœud shard dans une instance MongoDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

PolarDbGetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances PolarDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

PolarDbGetInstanceConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance PolarDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

PolarDbModifyWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie la liste d'autorisation d'un cluster PolarDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

PolarDbGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance PolarDB.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de liste d'autorisation d'une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetInstanceConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge l'adresse de connexion d'une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisModifyWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie la liste d'autorisation d'une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge l'adresse de connexion d'une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisCreateAccount.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée un compte de base de données pour une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RedisGetComputingType.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge l'architecture d'une instance Redis.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetWhiteNames.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge la liste d'autorisation d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetInstanceList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les détails des instances ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetMetricList.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les métriques d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetInstanceConnection.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations réseau d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsModifySecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS modifie le groupe de sécurité d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsAuthSecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS accède au groupe de sécurité d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsLeaveSecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la suppression d'une instance ECS d'un groupe de sécurité.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetSecurityGroupAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge le groupe de sécurité d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsDelSecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la suppression d'un groupe de sécurité ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsRevokeSecurityGroup.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la suppression d'un groupe de sécurité ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les règles du groupe de sécurité d'une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

EcsCreateAccount.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée un compte pour une instance ECS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

LindormGetNetworkItems.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance Lindorm.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

LindormGetVpcAddress.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations de connexion d'une instance Lindorm.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

LindormGetInstanceAttr.InvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance Lindorm.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidOperation.AdvanceAction

Scénario : Vous modifiez le point de contrôle de consommation d'une tâche DTS.

Cause possible : La tâche ne dispose pas du module de collecte de données incrémentielles. Le point de contrôle de consommation ne peut pas être modifié.

Solution : Aucune.

TablestoreInvokeFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS interroge les informations relatives à une instance de base de données.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

UnSupported

Scénario : Vous configurez une tâche DTS.

Cause possible : Cette opération n'est pas prise en charge par la tâche.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

UnSupportedTaskType

Scénario : Vous configurez une tâche DTS.

Cause possible : Ce type de tâche ne prend pas en charge cette opération.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

CheckJobCreateFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée une tâche de vérification.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

ConfigurationDtsJobFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS crée une tâche DTS dont la base de données source ou de destination est une base de données DB2 for i (AS/400).

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

AllSiteInnerApiSupportFail

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lors de la création d'un compte de base de données par DTS.

Solution : Résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Missing.TagKey

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Aucune clé de tag n'est spécifiée pour un tag.

Solution : Spécifiez une clé de tag valide et réessayez.

MissingParameter.TagOrResourceId

Scénario : Vous appelez une opération d'API pour ajouter des tags à une ou plusieurs instances DTS.

Cause possible : Aucun ID d'instance, aucune clé de tag ou aucune valeur de tag n'est spécifié dans les paramètres d'entrée.

Solution : Assurez-vous que les paramètres d'entrée sont valides et complets, puis réessayez.

InvalidParameter.ResourceType

Scénario : Vous appelez une opération d'API pour interroger ou ajouter des tags.

Cause possible : La valeur du paramètre ResourceType est invalide.

Solution : Définissez le paramètre ResourceType sur ALIYUN::DTS::INSTANCE et réessayez.

InvalidParameter.TagKey

Scénario : Vous appelez une opération d'API pour interroger ou ajouter des tags.

Cause possible : La clé d'un tag est invalide.

Solution : Spécifiez une clé de tag valide et réessayez.

InvalidResourceId.NotFound

Scénario : Vous appelez une opération d'API pour interroger ou ajouter des tags.

Cause possible : L'instance DTS spécifiée n'existe pas.

Solution : Assurez-vous que le paramètre ResourceId est valide et réessayez.

InvalidParameter.Tags

Scénario : Vous appelez une opération d'API pour interroger ou ajouter des tags.

Cause possible : La clé ou la valeur d'un tag est invalide.

Solution : Spécifiez une clé et une valeur valides pour le tag, puis réessayez.

InvalidParameter.NextToken

Scénario : Vous appelez une opération d'API pour interroger ou ajouter des tags.

Cause possible : Une erreur survient lorsque DTS analyse un tag.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

InvalidParameter.Category

Scénario : Vous appelez une opération d'API pour interroger tous les tags.

Cause possible : Le paramètre Category est invalide.

Solution : Définissez le paramètre Category sur Custom si le tag est personnalisé, ou sur System s'il est fourni par DTS. Réessayez ensuite.

NumberExceed.Tags

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Le nombre de tags à ajouter dépasse 20.

Remarque

Vous pouvez ajouter jusqu'à 20 tags par instance DTS.

Solution : Réduisez le nombre de tags et réessayez.

NumberExceed.ResourceIds

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Le nombre d'instances DTS dépasse 50.

Remarque

Vous pouvez ajouter des tags à 50 instances maximum en une seule fois.

Solution : Réduisez le nombre d'instances et réessayez.

Duplicate.TagKey

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Un tag existe déjà.

Solution :

  • Modifiez la clé du tag et réessayez.

  • Supprimez les tags en double, à condition que cela n'affecte pas votre activité, puis réessayez.

QuotaExceed.TagsPerResource

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Le nombre de tags dépasse 20.

Remarque

Vous pouvez ajouter jusqu'à 20 tags par instance DTS.

Solution : Supprimez les tags inutilisés, à condition que cela n'affecte pas votre activité, puis réessayez.

NoPermission.SystemTag

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Une erreur survient lorsque DTS interroge les tags.

Solution : Contactez le support technique Alibaba Cloud.

NoPermission.Operator

Scénario : Vous ajoutez des tags à une ou plusieurs instances DTS.

Cause possible : Une erreur survient lorsque DTS interroge les tags.

Solution : Contactez le support technique Alibaba Cloud.

UnsupportedTaskRegion

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : Les clusters dédiés ne prennent pas en charge les tâches DTS configurées pour migrer ou synchroniser des données entre régions.

Solution : Aucune.

UnsupportedDtsJob

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : La tâche ne prend pas en charge cette opération.

Solution : Aucune.

UnsupportedDtsInstance

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : L'instance DTS ne prend pas en charge les clusters dédiés.

Solution : Aucune.

UnsupportedTransferType

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : DTS ne prend pas en charge les tâches qui migrent des données entre clusters dédiés.

Solution : Aucune.

DedicatedClusterReleased

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : Le cluster dédié a été libéré.

Solution : Aucune.

DedicatedClusterReleasing

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : Le cluster dédié est en cours de libération.

Solution : Aucune.

OperationDenied.DedicatedClusterStatus

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : Le cluster dédié n'est pas dans l'état Running.

Solution : Aucune.

OperationDenied.DedicatedClusterUsedDu

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible 1 : Les unités DTS (DU) disponibles restantes dans le cluster dédié sont insuffisantes.

Solution : Augmentez le taux de surengagement du cluster dédié et réessayez. Pour plus d'informations, consultez Définir un taux de surengagement pour un cluster dédié DTS.

Remarque

La valeur maximale du taux de surengagement est de 200 %.

Cause possible 2 : Le cluster dédié spécifié n'existe pas.

Solution : Achetez un cluster dédié et réessayez. Pour plus d'informations, consultez Créer un cluster dédié DTS.

DedicatedClusterAllocateDuFail

Scénario : Vous configurez des tâches dans un cluster dédié.

Cause possible : Une erreur survient lors de l'allocation des DU par le cluster dédié.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

JobProgressNotFound

Scénario : Vous ignorez une table lors de la migration complète des données.

Cause possible : La tâche de migration complète des données contenant la table n'existe pas.

Solution : Aucune.

LXBuyError

Scénario : Vous achetez une instance DTS.

Cause possible : Une erreur survient lors de l'achat de l'instance.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

SourceIpIsNotAllowedToConnect

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie l'adresse IP publique de la base de données source.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DestIpIsNotAllowedToConnect

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie l'adresse IP publique de la base de données de destination.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MissingDtsInstanceId

Scénario : Vous configurez une tâche DTS.

Cause possible : Aucun ID d'instance DTS n'est spécifié dans les paramètres de la requête.

Solution : Vérifiez la validité des paramètres de la requête.

RgPreCheckFailed

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie le groupe de ressources de la tâche.

Solution : Contactez le support technique Alibaba Cloud.

RgOperationFailed

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie le groupe de ressources de la tâche.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

RgRegionNotSupport

Scénario : Vous configurez une tâche DTS.

Cause possible : Une erreur survient lorsque DTS vérifie le groupe de ressources de la tâche.

Solution : Réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

MissingDestinationEndpointPort

Scénario : Vous configurez une tâche DTS.

Cause possible : Aucun port n'est spécifié pour la base de données de destination dans les paramètres de la requête.

Solution : Assurez-vous que les paramètres de la requête sont valides et complets, puis réessayez.

MissingSourceEndpointPort

Scénario : Vous configurez une tâche DTS.

Cause possible : Aucun port n'est spécifié pour la base de données source dans les paramètres de la requête.

Solution : Assurez-vous que les paramètres de la requête sont valides et complets, puis réessayez.

DTS.Msg.NotSupportSubscribeJob

Scénario : Vous modifiez une tâche de suivi des modifications dans la console DTS nouvelle version.

Cause possible : La tâche de suivi des modifications a été créée dans la console DTS version précédente. Vous ne pouvez pas modifier cette tâche dans la console DTS nouvelle version.

Solution : Modifiez la tâche de suivi des modifications dans la console DTS version précédente. Pour revenir à la console DTS version précédente, procédez comme suit : accédez à la page Change Tracking dans la console DMS, placez le pointeur sur l'icône jiqiren dans le coin inférieur droit, puis cliquez sur l'icône 返回旧版.

DTS.Msg.VpcSubnetIpExhaust

Scénario : Vous créez un groupe de consommateurs pour une tâche de suivi des modifications.

Cause possible : Le nombre d'adresses IP disponibles du vSwitch configuré pour la tâche est insuffisant.

Solution : Assurez-vous que le nombre d'adresses IP disponibles du vSwitch est suffisant, puis réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.GetCenVpcError

Scénario : Vous configurez une tâche DTS dont l'instance de base de données source ou de destination est accessible via une instance CEN.

Cause possible : Une erreur survient lorsque DTS interroge les VPC rattachés à l'instance CEN.

Solution : Assurez-vous que l'ID d'instance CEN spécifié est valide et réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

DTS.Msg.InvalidMongoDBStatus

Scénario : Vous spécifiez une instance MongoDB comme base de données source ou de destination d'une tâche DTS.

Cause possible : L'instance MongoDB est invalide.

Solution : Vérifiez l'état de l'instance MongoDB, attendez qu'elle fonctionne correctement, puis réessayez.

SQLException: Misconfigured master - master server_id is 0

Scénario : Vous configurez une tâche DTS.

Cause possible : Le paramètre server_id de la base de données source échoue lors de la vérification.

Solution : Définissez le paramètre server_id sur un entier supérieur à 1 et différent de celui de toute autre base de données, puis réessayez. Pour plus d'informations, consultez Résoudre l'échec de la pré-vérification server_id.

Erreurs courantes pouvant être retournées lors de l'exécution d'une tâche DTS

DTS-RETRY-ERR-0001: get table (.)? detail info failed (.)? Table (.*)? doesn't exist

Cause possible : Lors de la configuration d'une tâche de migration ou de synchronisation de données, vous n'avez sélectionné ni Schema Migration ni Schema Synchronization comme type de migration ou de synchronisation. De plus, vous n'avez pas créé dans la base de données de destination de table ayant le même schéma que la table mentionnée dans le message d'erreur de la base de données source. Par conséquent, la table correspondante n'existe pas dans la base de données de destination.

Solution :

  • Solution 1 : Pour une tâche de synchronisation de données, retirez la table mentionnée dans le message d'erreur de la base de données source de la liste des objets à synchroniser. Pour plus d'informations, consultez Retirer un objet de synchronisation.

  • Solution 2 : Dans la base de données de destination, créez manuellement une table ayant le même schéma que la table mentionnée dans le message d'erreur de la base de données source, puis redémarrez la tâche.

Exemple : Le message d'erreur suivant indique que la table dts_order n'existe pas dans la base de données de destination. Vous pouvez créer une table dts_order dans la base de données de destination en vous basant sur la table dts_order de la base de données source, puis redémarrer la tâche.

replicate-mysql: DTS-70002: get table [dts_order] detail info failed.\ncause:\n\tMySQLSyntaxErrorException: 
Table 'dts_order' doesn't exist

DTS-RETRY-ERR-0002: get table (.)? detail info failed (.)? Table (.*)? does not exist

Cause possible : Certaines tables n'existent pas dans la base de données source ou de destination.

Solution : Choisissez une solution en fonction du type de tâche et du module de tâche mentionnés dans le message d'erreur.

  • Tâche de synchronisation de données :

    • Si l'erreur concerne le module d'écriture incrémentielle, vérifiez si les tables mentionnées dans le message d'erreur existent dans la base de données de destination et si les schémas des tables source et de destination sont cohérents. Si les tables n'existent pas dans la base de données de destination, procédez comme suit :

      1. Retirez les tables mentionnées dans le message d'erreur des objets à synchroniser à l'aide de la fonctionnalité de modification des objets à synchroniser.

      2. Effacez les données des tables mentionnées dans le message d'erreur dans la base de données de destination.

      3. Ajoutez les tables mentionnées dans le message d'erreur aux objets à synchroniser à l'aide de la fonctionnalité de modification des objets à synchroniser.

      4. Reprenez la tâche.

    • Si l'erreur concerne le module de migration complète des données, vérifiez si les tables mentionnées dans le message d'erreur existent dans les bases de données source et de destination et si les schémas des tables source et de destination sont cohérents. Si les tables n'existent pas dans la base de données de destination, reconfigurez la tâche.

  • Tâche de migration de données : Assurez-vous que les schémas des tables source et de destination sont cohérents. Reconfigurez ensuite la tâche.

Exemple :

replicate-mysql: DTS-70002: get table [ars_uat.immc_mc_cs_clue_order] detail info failed.\ncause:\n\tMySQLSyntaxErrorException: Table 'ars_uat.immc_mc_cs_clue_order' doesn't exist

DTS-RETRY-ERR-0003: get table (.)? detail info failed (.)? connect target failed (.*)? Access denied for user

Cause possible : Les informations de compte configurées dans une tâche pour se connecter à la base de données de destination ont été modifiées pendant l'exécution de la tâche. Par conséquent, la connexion à la base de données de destination est impossible. Par exemple, vous avez pu modifier le mot de passe ou les permissions du compte, ou supprimer le compte pendant l'exécution de la tâche.

Solution :

  • Solution 1 : Restaurez les informations de compte configurées dans la tâche pour la connexion à la base de données de destination. Si la tâche échoue après la restauration des informations de compte, redémarrez-la.

  • Solution 2 : Reconfigurez la tâche en utilisant un compte disposant des permissions requises et d'un mot de passe correct.

Exemple : Le message d'erreur suivant indique que vous ne pouvez pas utiliser le compte root pour vous connecter à la base de données de destination :

replicate-mysql: DTS-70002: get table [db_yfq.czb_oil_station] detail info failed.\ncause:\n\tDBCommonException: 
replicate-mysql: DTS-71016: connect target failed (url: jdbc:mysql://121.36.XX.XX:XXXX?useSSL=false&useUnicode=true
&characterEncoding=utf8&rewriteBatchedStatements=true&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&
autoReconnect=false&failOverReadOnly=false&useLocalSessionState=true&transformedBitIsBoolean=FALSE&tinyInt1isBit=
FALSE&sessionVariables=sql_mode=''&allowLoadLocalInfile=true&allowPublicKeyRetrieval=true&socketTimeout=3600000&
connectTimeout=3600000)\n\tSQLException: Access denied for user 'root'@'8.131.XX.XX' (using password: YES)

DTS-RETRY-ERR-0004: get table (.)? detail info failed (.)? No worker nodes available in resource group

Cause possible : Lorsque DTS obtient le schéma de la table spécifiée, aucun nœud worker n'est disponible dans le cluster AnalyticDB for MySQL.

Solution : Vérifiez si le cluster AnalyticDB for MySQL dispose de nœuds worker disponibles.

Exemple :

id=34284****, jobId=cvft576n24l9****, value={"errMsg":"replicate-adb30: DTS-70002: get table [mgdevsys.mytable] 
detail info failed.\ncause:\n\tSQLException: [31003, 2022110109452317201617024803453049329] : No worker nodes 
available in resource group ","jobId":"cfal5qfd243d834","maxRetryTime":7200,"module":"writer","retryCount":2,
"retryTarget":"destDB","retryTime":132,"retrying":true}

DTS-RETRY-ERR-0006: Can not find column (.*)? in destination table

Cause possible : Une colonne est introuvable dans la table de destination.

Solutions :

  • Solution 1 : (Recommandé) Ajoutez la colonne manquante à la table dans la base de données de destination et démarrez la tâche Data Transmission Service (DTS).

  • Solution 2 :

    Important

    Cette solution ne peut pas être utilisée dans les scénarios suivants : vous effectuez une synchronisation bidirectionnelle, des services autres que DTS doivent écrire des données dans la table de destination, ou la table de la base de données de destination est la table cible d'une tâche de synchronisation unidirectionnelle plusieurs-à-un ou de plusieurs tâches de synchronisation unidirectionnelles.

    1. Retirez la table pour laquelle l'erreur est signalée des objets à synchroniser et redémarrez la tâche. Pour plus d'informations sur le retrait d'un objet d'une tâche de synchronisation de données, consultez Retirer un objet d'une tâche de synchronisation de données.

    2. Procédez selon le scénario :

      • Si la tâche de synchronisation de données inclut la synchronisation de schéma, il vous suffit de supprimer la table de la base de données de destination.

      • Si la tâche de synchronisation de données n'inclut pas la synchronisation de schéma, supprimez la table de la base de données de destination. Créez ensuite une table utilisant le même schéma que la table source dans la base de données de destination.

    3. Ajoutez la table aux objets à synchroniser. Pour plus d'informations sur l'ajout d'un objet à une tâche de synchronisation de données, consultez Ajouter un objet à une tâche de synchronisation de données.

Exemple : Le message d'erreur suivant indique que la colonne wx_state n'existe pas dans la table dts_user_authorization de la base de données de destination :

framework: DTS-30019: Can not find column \"wx_state\" in destination table \"dts_user_authorization\". 
Please add the column in the destination table.

Étapes suivantes : DTS ne peut pas synchroniser les opérations DDL. Par conséquent, si vous ajoutez une colonne à une table dans la base de données source pendant la synchronisation des données, cette erreur se produit. Dans ce cas, ajoutez la colonne à la table de destination avant de l'ajouter à la table source afin d'éviter cette erreur.

DTS-RETRY-ERR-0007: Failed to get offsets by times in (.*)? ms

Cause possible 1 : La connexion entre le module d'écriture de données et le module de cache de données expire en raison de fluctuations du réseau.

Solution : Redémarrez la tâche et vérifiez si elle peut reprendre.

Cause possible 2 : La tâche accuse un retard important sur une longue période.

Solution : La tâche ne peut pas reprendre ; vous devez la reconfigurer. Pour ce faire, choisissez ... > Reconfigure Task dans la colonne Actions de l'instance à laquelle appartient la tâche.

Exemple :

Failed to get offsets by times in 60000 ms

DTS-RETRY-ERR-0008: Failed to seek oracle position

Cause possible : Les journaux pertinents sont introuvables car les journaux de la base de données source ont été effacés.

Solution : Reconfigurez la tâche.

Exemple :

dts-k-src: DTS-52110: OracleRecordExtractor Init Error: oracle-reader: DTS-52061: Failed to seek oracle position

DTS-RETRY-ERR-0010: execute statement failed (.*)? modify precision is not supported

Cause possible : DTS ne prend pas en charge certaines instructions DDL dans les scénarios de synchronisation de données. Par conséquent, l'exécution de ces instructions DDL échoue.

Solution :

  • Si vous ne souhaitez pas synchroniser l'intégralité de la base de données, nous vous recommandons de synchroniser à nouveau la table ayant déclenché les erreurs. Vous pouvez retirer la table des objets à synchroniser, la supprimer de la base de données de destination, puis l'ajouter à nouveau aux objets à synchroniser. DTS synchronisera alors à nouveau le schéma et les données historiques de la table. Ainsi, les instructions DDL non prises en charge seront ignorées.

  • Si vous souhaitez synchroniser l'intégralité de la base de données, nous vous recommandons de créer une table (Table A) dans le cluster AnalyticDB for MySQL de destination. La Table A doit avoir un nom différent de la table mentionnée dans le message d'erreur (Table B) et posséder le même schéma que celle-ci. Vous pouvez exécuter l'instruction INSERT INTO SELECT pour écrire les données de la Table B dans la Table A, supprimer la Table B, exécuter l'instruction RENAME pour renommer la Table A en Table B, puis redémarrer la tâche.

Exemple :

transaction-replicate: DTS-70004: execute statement failed: /* dts_id=dtsit911vn1255**** */alter table `billing`.`store_payroll_detail` modify column `epidemic_subsidy` DECIMAL(20, 5) comment '****'
cause:
    SQLException: [15018, 202210211956001921681171220345323****] modify precision is not supported, col=epidemic_subsidy, type decimal, old=21, new=20

DTS-RETRY-ERR-0011 : seek timestamp for topic (.)? with position (.)? failed

Cause possible 1 : la tâche est restée en pause pendant une période prolongée. Après le redémarrage de la tâche, le module de cache de données ne contient aucune donnée au point de consommation spécifié.

Solutions : modifiez le point de consommation de l'instance. Si l'erreur persiste, adoptez l'une des méthodes suivantes selon vos besoins métier. Pour plus d'informations sur la modification du point de consommation, reportez-vous à Modifier le décalage actuel d'une instance de synchronisation ou de migration de données.

  1. Solution 1 : vérifiez si le point de consommation se situe dans la plage temporelle des journaux utilisés pour l'analyse incrémentielle des données dans la base de données source, tels que les journaux binaires ou les journaux redo. Si tel est le cas, relisez les données en arrière-plan. Dans le cas contraire, créez une nouvelle tâche.

  2. Solution 2 : créez une nouvelle tâche.

    Important

    Évitez de suspendre une tâche pendant une durée excessive ou de supprimer les objets à synchroniser. Une tâche suspendue peut être reprise dans un délai limité. Ce délai se réduit considérablement si le volume de données écrites dans la base de données source est important.

Cause possible 2 : la tâche a échoué pendant une période prolongée. Après la résolution du problème, le module de cache de données ne contient aucune donnée au point de consommation spécifié.

Solution : créez une nouvelle tâche.

Important

En cas d'échec d'une tâche, nous vous recommandons de résoudre le problème et de reprendre la tâche dès que possible. Une tâche ayant échoué pendant une longue période risque de ne pas pouvoir être reprise correctement.

Cause possible 3 : si la migration ou la synchronisation complète des données dure longtemps, DTS peut effacer les journaux de données mis en cache après le démarrage de la tâche. Par conséquent, les journaux de données nécessaires à l'analyse incrémentielle sont incomplets.

Remarque

Lors d'une migration ou d'une synchronisation complète des données, DTS stocke de manière circulaire les journaux de données des dernières 24 heures ou jusqu'à 50 Go de journaux pour la base de données source. Ces journaux servent ensuite à l'analyse incrémentielle des données.

Solution : créez une nouvelle tâche. Avant cela, évaluez le volume de données à migrer ou à synchroniser. Si ce volume est important, nous vous conseillons de répartir la charge sur plusieurs tâches.

Exemple : le message d'erreur suivant indique que le module de cache de données ne contient aucune donnée à un point de consommation précis, par exemple 2021-05-20 21:17:51 :

Remarque

Dans ce message d'erreur, 1660802171 correspond à un horodatage UNIX exprimé en secondes. Utilisez un convertisseur d'horodatage UNIX pour obtenir l'heure UTC correspondante.

capture-dstore: DTS-50019: seek timestamp for topic [cn_hangzhou_vpc_rm_XXXX_version2-0] 
with position [{"timestamp":1660802171, "offset":-1}] failed

DTS-RETRY-ERR-0012 : execute statement failed (.*)? modify column type is not supported

Cause possible : DTS ne prend pas en charge certaines instructions DDL dans les scénarios de synchronisation de données, ce qui entraîne leur échec d'exécution.

Solution :

  • Si vous ne souhaitez pas synchroniser l'intégralité de la base de données, resynchronisez uniquement la table à l'origine de l'erreur. Retirez cette table de la liste des objets à synchroniser, supprimez-la de la base de données cible, puis ajoutez-la de nouveau aux objets à synchroniser. DTS resynchronisera alors le schéma et les données historiques de la table, ignorant ainsi les instructions DDL non prises en charge.

  • Pour synchroniser toute la base de données, créez une nouvelle table (Table A) dans le cluster AnalyticDB for MySQL cible. Cette Table A doit porter un nom différent de celui de la table mentionnée dans l'erreur (Table B), tout en conservant un schéma identique. Exécutez l'instruction INSERT INTO SELECT pour copier les données de la Table B vers la Table A, supprimez ensuite la Table B, puis exécutez l'instruction RENAME pour renommer la Table A en Table B. Redémarrez enfin la tâche.

Exemple :

transaction-replicate: DTS-70004: execute statement failed: /* dts_id=dtsit911vn1255**** */alter table `billing`.`store_payroll_detail` modify column `epidemic_subsidy` DECIMAL(20, 5) comment '****'
cause:
    SQLException: [15018, 202210211956001921681171220345323****] modify precision is not supported, col=epidemic_subsidy, type decimal, old=21, new=20

DTS-RETRY-ERR-0013 : execute statement failed (.*)? command denied to user

Cause possible : le compte de la base de données cible ne dispose pas des permissions requises.

Solution : vérifiez les permissions du compte de la base de données cible et accordez-lui les privilèges indiqués dans le message d'erreur.

Exemple :

id=34286****, jobId=g5lw9b3121v****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: 
null\ncause:\n\tMySQLSyntaxErrorException: INSERT, UPDATE command denied to user 'dts_customerczd'@'172.17.XX.XX' 
for table 'dts_trx4unit_mark_18'","jobId":"bh2u9v80213****","maxRetryTime":7200,"module":"writer","retryCount":35,
"retryTarget":"destDB","retryTime":372,"retrying":true}

DTS-RETRY-ERR-0015 : execute statement failed (.*)? Invalid object name

Cause possible : la table mentionnée dans le message d'erreur n'existe pas dans la base de données cible.

Solution : vérifiez l'existence de la table concernée dans la base de données cible. Si elle est absente, corrigez l'erreur en appliquant l'une des solutions suivantes :

  • Solution 1 : pour une tâche de synchronisation de données, retirez la table problématique de la base de données source de la liste des objets à synchroniser. Pour plus d'informations, reportez-vous à Supprimer un objet de synchronisation.

  • Solution 2 : créez manuellement dans la base de données cible une table possédant le même schéma que celle de la base de données source mentionnée dans l'erreur, puis redémarrez la tâche.

Exemple :

id=344846732, jobId=ymp1082920y****, value={"errMsg":"replicate-sqlserver: DTS-70002: get table [[test].[dbo].[task]] 
detail info failed.\ncause:\n\tSQLServerException: Invalid object name 'test.dbo.task'.","jobId":"anv103sx20od235",
"maxRetryTime":86400,"module":"writer","retryCount":345,"retryTarget":"destDB","retryTime":3458,"retrying":true}

DTS-RETRY-ERR-0016 : execute statement failed (.)? elasticsearch (.)? ResponseException (.*)? SERVICE_UNAVAILABLE

Cause possible : le service Elasticsearch cible est indisponible.

Solution : vérifiez la disponibilité du service Elasticsearch cible.

Exemple :

{"errMsg":"transaction-replicate: DTS-70004: execute statement failed: null\ncause:\n\tSQLException: 3: meet error, 
updateSQL **** error detail message:org.elasticsearch.client.ResponseException: **** 503\n}\n\n\tSQLException: org.
elasticsearch.client.ResponseException: ****}

DTS-RETRY-ERR-0018 : read source data error (.)? Error retrieving record (.)? Can not read response from server

Cause possible : DTS ne parvient pas à se connecter à la base de données.

Solution : vérifiez la connectivité de la base de données et redémarrez la tâche. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source et à Résoudre les échecs de connectivité de la base de données cible.

Exemple :

id=34281****, jobId=n9f10m6i28s3601, value={"errMsg":"framework: DTS-31009: read source data error\ncause:\n\
tSQLException: Error retrieving record: Unexpected Exception: java.io.EOFException message given: Can not read 
response from server. Expected to read 987 bytes, ****}

DTS-RETRY-ERR-0019 : read source data error (.)? Error retrieving record (.)? Connection reset

Cause possible : la connexion à la base de données a été réinitialisée.

Solution : vérifiez la connexion réseau et testez la connectivité de la base de données.

Exemple :

id=34289****, jobId=n9f10m6i28s****, value={"errMsg":"framework: DTS-31009: read source data error\ncause:
\n\tSQLException: Error retrieving record: Unexpected Exception: java.net.SocketException message given: 
Connection reset\n\nNested Stack Trace:\n\n\n** BEGIN NESTED EXCEPTION ** \n\njava.net.SocketException\nMESSAGE: 
Connection reset\n\nSTACKTRACE:\n\njava.net.SocketException: Connection reset\n\tat java.net.SocketInputStream.
read(SocketInputStream.java:210)\n\tat java.net.SocketInputStream.read(SocketInputStream.java:141)\n\tat com.mysql.
cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107)\n\tat com.mysql.cj.protocol.ReadAheadInputStream.
readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150)\n\tat com.mysql.cj.protocol.ReadAheadInputStream.
read(ReadAheadInputStream.java:180)\n\tat java.io.FilterInputStream.read(FilterInputStream.java:133)\n\tat com.mysql.
jdbc.MySQLInputNetIoStream.read(MySQLInputNetIoStream.java:29)\n\tat java.io.FilterInputStream.read(FilterInputStream.
java:133)\n\tat com.mysql.cj.protocol.FullReadInputStream.readFully(...","jobId":"ga310k47281****","maxRetryTime":
7200,"module":"full","retryCount":3,"retryTarget":"srcDB","retryTime":15445,"retrying":true}

DTS-RETRY-ERR-0020 : read source data error (.)? Table (.)? is marked as crashed and should be repaired

Cause possible : l'index d'une table de la base de données source est endommagé, empêchant ainsi la lecture des données.

Solution : réparez l'index de la table en suivant les indications du message d'erreur.

Exemple : le message ci-dessous signale que l'index de la table mytable est corrompu :

framework: DTS-31009: read source data error\ncause:\n\tSQLException: 
Table 'mytable' is marked as crashed and should be repaired

Exécutez les commandes suivantes pour résoudre ce problème :

use my_database;
repair table mytable;

DTS-RETRY-ERR-0021 : BatchUpdateException (.)? no this column (.)? in this table

Cause possible : une colonne est manquante dans la table cible.

Solution : ajoutez la colonne manquante à la table cible, puis redémarrez la tâche.

Exemple :

id=34293****, jobId=zjj11te2w1i****, value={"errMsg":"java.sql.BatchUpdateException: [13000, 202211011449191921681280300345301****] 
syntax error :no this column => __dts_data_source, in this table LY.C1","jobId":"gqy11x78c19****","maxRetryTime":7200,"module":"full",
"retryCount":485,"retryTarget":"destDB","retryTime":4848,"retrying":true}

DTS-RETRY-ERR-0024 : disk usage exceeded flood-stage watermark

Causes possibles :

  • Cause 1 : l'espace disque est saturé.

  • Cause 2 : la taille de la table a atteint sa limite maximale.

Solutions :

  • Solution 1 : augmentez la capacité du disque et redémarrez la tâche.

  • Solution 2 : relevez la limite de taille de la table en ajustant les paramètres de la base de données. Une fois l'erreur corrigée, redémarrez la tâche.

    Remarque

    Pour définir la limite de taille d'une table dans une base de données MySQL, reportez-vous à la documentation MySQL.

Exemple :

common: DTS-11005: es: DTS-10035: index [tp_adlist_day_report_11] blocked by: [TOO_MANY_REQUESTS/12/disk usage 
exceeded flood-stage watermark, index has read-only-allow-delete block];\ncause:\n\tIOException: es: DTS-10035: 
index [tp_adlist_day_report_11] blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index 
has read-only-allow-delete block];\n\tCriticalAnyAllException: es: DTS-10035: index [tp_adlist_day_report_11] 
blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block];

DTS-RETRY-ERR-0025 : disk is over flow

Causes possibles :

  • Cause 1 : l'espace disque est saturé.

  • Cause 2 : la taille de la table a atteint sa limite maximale.

Solutions :

  • Solution 1 : augmentez la capacité du disque et redémarrez la tâche.

  • Solution 2 : relevez la limite de taille de la table en ajustant les paramètres de la base de données. Une fois l'erreur corrigée, redémarrez la tâche.

    Remarque

    Pour définir la limite de taille d'une table dans une base de données MySQL, reportez-vous à la documentation MySQL.

Exemple :

common: DTS-11005: es: DTS-10035: index [tp_adlist_day_report_11] blocked by: [TOO_MANY_REQUESTS/12/disk usage 
exceeded flood-stage watermark, index has read-only-allow-delete block];\ncause:\n\tIOException: es: DTS-10035: 
index [tp_adlist_day_report_11] blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index 
has read-only-allow-delete block];\n\tCriticalAnyAllException: es: DTS-10035: index [tp_adlist_day_report_11] 
blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block];

DTS-RETRY-ERR-0026 : connect timed out

Cause possible : DTS ne parvient pas à se connecter à la base de données.

Solution : vérifiez la connectivité de la base de données et redémarrez la tâche. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source et à Résoudre les échecs de connectivité de la base de données cible.

Exemple :

java.net.SocketTimeoutException: connect timed out@error code:1042

DTS-RETRY-ERR-0027 : Communications link failure (.*)? The driver has not received any packets from the server

Cause possible 1 : la base de données est connectée à DTS en tant que base auto-gérée, mais son adresse ou son numéro de port est mal configuré.

Solution 1 : vérifiez et corrigez l'adresse ainsi que le numéro de port de la base de données, puis redémarrez la tâche.

Cause possible 2 : la connexion entre la base de données et DTS s'effectue via Express Connect, mais une anomalie affecte le circuit Express Connect.

Solution 2 : inspectez la table de routage et la configuration du pare-feu associés au circuit Express Connect.

Exemple :

Communications link failure\n\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver 
has not received any packets from the server.@error code:0

DTS-RETRY-ERR-0028 : UnknownHostException (.*)? aliyuncs\\.com

Cause possible : l'instance de base de données cible a été libérée.

Solution : la tâche ne peut pas être reprise. Reconfigurez-la entièrement.

Exemple :

java.net.UnknownHostException: rm-bp167dm72ah1hm1****.mysql.rds.aliyuncs.com@error code:1042

DTS-RETRY-ERR-0029 : Too many connections (.*)? error code

Cause possible : le nombre maximal de connexions à la base de données a été atteint.

Solution : augmentez le nombre maximal de connexions autorisées pour la base de données, puis redémarrez la tâche.

Exemple :

Too many connections@error code:1040

DTS-RETRY-ERR-0030 : ConnectException (.*)? Connection refused

Cause possible : la demande de connexion provenant de DTS a été rejetée.

Solution : examinez les listes de blocage et d'autorisation de la base de données.

Exemple :

id=34269****, jobId=pfi10xxa251****, value={"errMsg":"java.net.ConnectException: Connection refused (Connection refused)@error code:1042","jobId":"ehz1066b257****","maxRetryTime":43200,"module":"reader","retryCount":3,"retryTarget":"srcDB","retryTime":30,"retrying":true}

DTS-RETRY-ERR-0032 : SQLServerException (.*)? The connection is closed

Cause possible : la connexion à la base de données SQL Server source ou cible est fermée.

Solution : assurez-vous que la base de données SQL Server source ou cible est accessible, puis redémarrez la tâche.

Exemple :

java.lang.RuntimeException: com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.

DTS-RETRY-ERR-0033 : SQLServerException (.*)? Connection reset

Cause possible : l'instabilité du réseau a provoqué la réinitialisation de la connexion à la base de données.

Solution : assurez-vous que la base de données SQL Server source ou cible est accessible, puis redémarrez la tâche.

Exemple :

id=34271****, jobId=c2x10019318****, value={"errMsg":"com.microsoft.sqlserver.jdbc.SQLServerException: Connection 
reset ClientConnectionId:8a2bcd3d-3a6f-4b06-b5c4-94944d40****","jobId":"al9105f2314****","maxRetryTime":7200,"module":
"writer","retryCount":2,"retryTarget":"destDB","retryTime":28,"retrying":true}

DTS-RETRY-ERR-0034 : elasticsearch (.)? ResponseException (.)? Too Many Requests

Cause possible : la connexion au service Elasticsearch présente une anomalie.

Solution : vérifiez l'accessibilité du service Elasticsearch et redémarrez la tâche.

Exemple :

common: DTS-11005: org.elasticsearch.client.ResponseException: POST http://172.16.XX.XX:XXXX/_bulk?pretty=true: HTTP/1.1 429 
Too Many Requests ****

DTS-RETRY-ERR-0035 : Your password has expired

Cause possible : le mot de passe utilisé par la tâche DTS a expiré.

Solution : modifiez le mot de passe et réinitialisez sa date d'expiration conformément au message d'erreur MySQL. Nous vous recommandons de configurer le mot de passe pour qu'il n'expire jamais.

  • Pour une tâche de synchronisation de données, changez le mot de passe utilisé dans la tâche DTS.

  • Pour une tâche de migration de données, créez une nouvelle tâche.

Exemple :

Your password has expired. To log in you must change it using a client that supports expired passwords.@error code:1862

DTS-RETRY-ERR-0036 : Can't use (.)? database through mongos (.)? on server

Cause possible 1 : le compte de base de données MongoDB utilisé par la tâche DTS ne possède pas les permissions nécessaires.

Solution : accordez les permissions requises au compte de base de données selon le message d'erreur, puis redémarrez la tâche.

Cause possible 2 : les données à synchroniser ou à migrer résident dans la base de données admin ou local.

Solution : la synchronisation ou la migration de données depuis les bases de données admin ou local n'est pas prise en charge.

Exemple :

Command failed with error 20 (IllegalOperation): 'Can't use 'local' database through mongos' on server s-
bp1698827e718b84-pub.mongodb.rds.aliyuncs.com:3717.

DTS-RETRY-ERR-0037 : The last packet sent successfully to the server was (.*)? milliseconds ago

Cause possible : DTS ne parvient pas à se connecter à la base de données.

Solution : vérifiez la connectivité de la base de données et redémarrez la tâche. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source et à Résoudre les échecs de connectivité de la base de données cible.

Exemple :

id=342986938****, jobId=iv6a9w5za8****, value={"errMsg":"com.mysql.cj.exceptions.CJCommunicationsException: The 
last packet successfully received from the server was 1 milliseconds ago.  The last packet sent successfully to 
the server was 14,513,692,650 milliseconds ago. ****

DTS-RETRY-ERR-0038 : Statement cancelled due to timeout or client request

Cause possible : la requête SQL expire lorsque DTS tente d'interroger le dernier point de consommation dans les journaux binaires de la base de données source.

Solution : assurez-vous que DTS peut se connecter à la base de données source, puis redémarrez la tâche.

Exemple :

id=34289****, jobId=lv710sub15r****, value={"errMsg":"Statement cancelled due to timeout or client request@error code:0","jobId":"wig100eq157****","maxRetryTime":43200,"module":"reader","retryCount":4,"retryTarget":"srcDB","retryTime":520,"retrying":true}

DTS-RETRY-ERR-0039 : Connect db failure (.*)? connect timed out

Cause possible : la tentative de connexion à la base de données a expiré.

Solution : assurez-vous que DTS peut se connecter à la base de données, puis redémarrez la tâche.

Exemple :

id=34284****, jobId=dv9w1fpej7j****, value={"errMsg":"DTS-002003 Connect db failure, unknow db url 100.100.XX.XX:XXX, please vaild url. Original error: java.net.SocketTimeoutException: connect timed out For more information please refer to https://****/document_detail/****.htm","jobId":"rcxy3zwo164****","maxRetryTime":43200,"module":"reader","retryCount":0,"retryTarget":"dstore","retryTime":19851828,"retrying":true}

DTS-RETRY-ERR-0040 : Verify the connection properties and check that an instance of SQL Server is running on the host

Cause possible : échec de la connexion à la base de données.

Solution : assurez-vous que DTS peut se connecter à la base de données, puis redémarrez la tâche.

Exemple :

id=34286****, jobId=hy0s8l20276****, value={"errMsg":"The TCP/IP connection to the host 172.26.XX.XX, port 51808 has failed. Error: \"The driver received an unexpected pre-login response. Verify the connection properties and check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. This driver can be used only with SQL Server 2005 or later.\". ClientConnectionId:f8d40feb-1345-4064-82d8-fe4e2893****@error code:0","jobId":"g5bf870q27b****","maxRetryTime":7200,"module":"reader","retryCount":1,"retryTarget":"srcDB","retryTime":15,"retrying":true}

DTS-RETRY-ERR-0041 : Error on Send (.)? Expiring (.)? has passed since batch creation plus linger time

Cause possible : le module de collecte des données incrémentielles fonctionne anormalement.

Solution : redémarrez le module de collecte des données incrémentielles.

Exemple :

id=34286****, jobId=ehi11j9jw1h****, value={"errMsg":"dts-k-src: DTS-52122: Error on Send.Expiring 4251 record(s) for ap_southeast_1_vpc_rm_t4npvr5594z735ic5_imi_sg_prod_version2-0: 180182 ms has passed since batch creation plus linger time","jobId":"s3c116i9z1t****","maxRetryTime":7200,"module":"reader","retryCount":0,"retryTarget":"dstore","retryTime":1,"retrying":true}

DTS-RETRY-ERR-0042 : No operations allowed after statement closed

Cause possible : la connexion à la base de données cible a échoué.

Solution : assurez-vous que DTS peut se connecter à la base de données cible, puis redémarrez la tâche.

Exemple :

id=34284****, jobId=d3a107cy29z****, value={"errMsg":"framework: DTS-30011: currentRunningSQL: /* DTS-full-g86108c2294**** */insert ignore into `mpm_workflow`.`tb_conn_log_archive`(`conn_type`,`creator_user_id`,`call_class`,`create_time`,`recall_method`,`header_json`,`url`,`times`,`creator_user_name`,`response`,`success`,`id`,`last_mod_time`,`request_data`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?), reason: No operations allowed after statement closed.\ncause:\n\tSQLException: No operations allowed after statement closed.\n\tStatementIsClosedException: No operations allowed after statement closed.","jobId":"g86108c2294****","maxRetryTime":7200,"module":"full","retryCount":8,"retryTarget":"destDB","retryTime":297,"retrying":true}

DTS-RETRY-ERR-0043 : MySQL binlog (.*)? is not exists

Cause possible : la tâche est suspendue depuis plus de sept jours ou la durée de rétention des journaux binaires MySQL est trop courte, entraînant l'absence des journaux requis.

Solution :

  • Avec une base de données MySQL auto-gérée, restaurez les journaux binaires MySQL. Si la restauration s'avère impossible, créez une nouvelle tâche.

  • Avec une instance ApsaraDB RDS for MySQL, créez directement une nouvelle tâche.

Exemple :

dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52212: MySQL binlog 1664283982 is not exists.

DTS-RETRY-ERR-0044 : Get Last Position Error

Cause possible : une erreur survient lorsque DTS interroge l'identifiant de transaction globale (GTID) d'une transaction.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

id=34293****, jobId=vheu6zm1297****, value={"errMsg":"dts-k-src: DTS-52121: Get Last Position Error.","jobId":"p83i1t3912i****","maxRetryTime":7200,"module":"reader","retryCount":30,"retryTarget":"dstore","retryTime":2911,"retrying":true}

DTS-RETRY-ERR-0045 : archiver error (.)? Connect internal only (.)? until freed

Cause possible : l'espace dédié aux fichiers de journalisation archivés de la base de données Oracle ou l'espace du répertoire racine est saturé, bloquant ainsi l'exécution des tâches d'archivage.

Solution : vérifiez si l'espace des journaux archivés Oracle ou celui du répertoire racine est plein.

Exemple :

id=34291****, jobId=zl0110ae27t****, value={"errMsg":"ORA-00257: archiver error. Connect internal only, until freed.\n@error code:257","jobId":"o50118un27m****","maxRetryTime":43200,"module":"reader","retryCount":90,"retryTarget":"srcDB","retryTime":903,"retrying":true}

DTS-RETRY-ERR-0046 : Access denied for user

Cause possible 1 : le compte de base de données utilisé par la tâche DTS manque de permissions.

Solution 1 :

  • Méthode 1 : accordez les permissions nécessaires au compte de base de données et redémarrez la tâche.

  • Méthode 2 : reconfigurez la tâche en utilisant un compte de base de données disposant déjà des droits requis.

Cause possible 2 : la base de données citée dans l'erreur est une base système (comme sys) ou une base qui ne nécessite ni synchronisation ni migration.

Solution 2 :

  • Pour une tâche de synchronisation, retirez la base de données concernée de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, reportez-vous à Supprimer un objet de synchronisation.

  • Pour une tâche de migration, créez une nouvelle tâche en veillant à exclure la base de données mentionnée dans l'erreur de la liste des objets à migrer.

Exemple :

id=34298****, jobId=c7e10qex28q****, value={"errMsg":"dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS--0002: MySQLMessageNotifier notifyConnectionException error Access denied for user 'edy_dba1'@'10.28.XX.XX' (using password: YES)","jobId":"k361016128e****","maxRetryTime":7200,"module":"reader","retryCount":18,"retryTarget":"srcDB","retryTime":730,"retrying":true}

DTS-RETRY-ERR-0047 : The MySQL server is running with the --read-only option

Cause possible : l'instance MySQL fonctionne en mode lecture seule.

Solution : ajustez la configuration de l'instance MySQL. Pour plus d'informations, reportez-vous à Strange MySQL "read-only" error.

Exemple :

id=34297****, jobId=d3a107cy29z****, value={"errMsg":"framework: DTS-30011: currentRunningSQL: /* DTS-full-g86108c2294**** */insert ignore into `mpm_workflow`.`tb_node_tasks`(`tenant_id`,`task_name`,`reviewer_node_rp_info`,`node_status`,`create_time`,`punish_b_mp`,`last_node_info`,`approval_type`,`end_time`,`task_id`,`read_flag`,`is_last_flag`,`reward_b_mp`,`proc_inst_id`,`id`,`assignee`,`last_mod_time`,`reviewer_reward_b_mp`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?), reason: The MySQL server is running with the --read-only option so it cannot execute this statement\ncause:\n\tBatchUpdateException: The MySQL server is running with the --read-only option so it cannot execute this statement\n\tSQLException: The MySQL server is running with the --read-only option so it cannot execute this statement","jobId":"g86108c2294****","maxRetryTime":7200,"module":"full","retryCount":175,"retryTarget":"destDB","retryTime":6149,"retrying":true}

DTS-RETRY-ERR-0048 : object mapping for (.)? tried to parse field (.)? as object (.*)? but found a concrete value

Cause possible : la migration ou la synchronisation du schéma n'a pas été sélectionnée pour la tâche DTS, provoquant un échec du mappage des types de champs.

Solution : modifiez le schéma de la table cible afin de permettre le mappage des champs mentionnés dans l'erreur. Pour plus d'informations, reportez-vous à Tried to parse field as object, but found a concrete value.

Exemple :

id=34298****, jobId=o0g115h4l19****, value={"errMsg":"common: DTS-11005: es: DTS-10035: object mapping for [ext_info.storeSnapshot] tried to parse field [storeSnapshot] as object, but found a concrete value\ncause:\n\tIOException: es: DTS-10035: object mapping for [ext_info.storeSnapshot] tried to parse field [storeSnapshot] as object, but found a concrete value\n\tCriticalAnyAllException: es: DTS-10035: object mapping for [ext_info.storeSnapshot] tried to parse field [storeSnapshot] as object, but found a concrete value","jobId":"k5d111rgn1q****","maxRetryTime":7200,"module":"full","retryCount":8,"retryTarget":"destDB","retryTime":188,"retrying":true}

DTS-RETRY-ERR-0049 : get table (.)? detail info failed (.)? No operations allowed after connection closed

Cause possible : vous avez modifié le nom de la base de données cible pendant l'exécution de la tâche, empêchant DTS de s'y connecter.

Solution : vérifiez l'existence de la base de données et assurez-vous qu'elle est accessible.

Exemple :

id=34443****, jobId=vnie8qsym6j****, value={"errMsg":"replicate-adb30: DTS-70002: get table [center_item.t_ite_half_product_list] detail info failed.\ncause:\n\tMySQLNonTransientConnectionException: No operations allowed after connection closed.","jobId":"xlcu9y7a29s****","maxRetryTime":43200,"module":"writer","retryCount":42,"retryTarget":"destDB","retryTime":415,"retrying":true}

DTS-RETRY-ERR-0050 : get table (.)? detail info failed (.)? Schema (.*)? does not exist

Cause possible : le schéma est introuvable suite à la modification du nom de la base de données cible.

Solution : vérifiez l'existence du schéma.

Exemple :

id=34443****, jobId=vnie8qsym6j****, value={"errMsg":"replicate-adb30: DTS-70002: get table [center_item.t_ite_sale_product_list] detail info failed.\ncause:\n\tSQLException: [20019, 2022110223221517201625218803151866591] : Schema center_item does not exist","jobId":"xlcu9y7a29s****","maxRetryTime":43200,"module":"writer","retryCount":13,"retryTarget":"destDB","retryTime":128,"retrying":true}

DTS-RETRY-ERR-0051 : execute statement failed (.*)? The MySQL server is running with the LOCK_WRITE option

Cause possible : DTS ne peut pas écrire de données en raison d'une exception sur l'instance MySQL. Par exemple, l'instance MySQL se trouve dans l'état LOCK_WRITE.

Solution : Vérifiez l'état de l'instance MySQL.

Exemple :

id=34443****, jobId=v2310b2h13d****, value={"errMsg":"transaction-replicate: DTS-70003: 29 execute transaction has excess max transaction retry time [150] cause:transaction-replicate: DTS-70004: execute statement failed, may try it again\ncause:\n\tRecoverableAnyAllException: transaction-replicate: DTS-70004: execute statement failed, may try it again\n\tSQLException: MysqlEngine(29): meet error, insertSQL:/* DTS-writer-pt0104ov13b****-MysqlEngine(29) */insert into `gts`.`s1` (`address`,`gender`,`name`,`telephone`,`id`,`department`,`age`)  VALUES  (x'E6B19FE88B8FE79C81E58D97E4BAACE5B882E696B0E59F8EE7A791E68A80E59BAD', x'E794B7', x'E5AE8BE6B19F', x'3133383031323334353637', 80371, x'416C6979756E', 28) , error detail message:The MySQL server is running with the LOCK_WRITE option so it cannot execute this statement\n\tSQLException: The MySQL server is running with the LOCK_WRITE option so it cannot execute this statement","jobId":"pt0104ov13b****","maxRetryTime":86400,"module":"writer","retryCount":372,"retryTarget":"destDB","retryTime":10201,"retrying":true}

DTS-RETRY-ERR-0052 : Record Replicator error in table (.)? The table (.)? does not have primary key!

Cause possible : Une table de la base de données de destination ne possède pas de clé primaire.

Solution : Définissez une clé primaire pour la table dans la base de données de destination, en vous basant sur les paramètres de clé primaire de la table correspondante dans la base de données source. Redémarrez ensuite la tâche.

Exemple : Le message d'erreur suivant indique que la table my_table dans la base de données de destination reader ne possède pas de clé primaire. Vous pouvez définir une clé primaire pour la table my_table dans la base de données de destination selon les paramètres de la table source correspondante, puis redémarrer la tâche.

DTS-077100: Record Replicator error in table null.null. cause by [The table `reader`.`my_table` does not 
have primary key!] About more information in [https://**.ali**.com/**].

DTS-RETRY-ERR-0053 : Failed to get offsets by times in 120000 ms

Cause possible : Le module d'écriture incrémentielle ne parvient pas à se connecter au module de collecte des données incrémentielles en raison d'instabilités réseau.

Solution : Redémarrez le module d'écriture incrémentielle et vérifiez si la tâche peut reprendre.

Exemple :

org.apache.kafka.common.errors.TimeoutException: Failed to get offsets by times in 120000 ms

DTS-RETRY-ERR-0054 : Failed to get offsets by times in 60000 ms

Cause possible : Le module de collecte des données incrémentielles ne parvient pas à se connecter au module de cache des données en raison d'instabilités réseau.

Solution : Redémarrez le module de collecte des données incrémentielles et vérifiez si la tâche peut reprendre.

Exemple :

Failed to get offsets by times in 60000 ms

DTS-RETRY-ERR-0055 : In process of processing data (.)? failed (.)? column (.*)? does not exist

Cause possible : Une colonne est introuvable dans la table de destination.

Solution : Ajoutez la colonne manquante à la table de destination et redémarrez la tâche.

Exemple : Le message d'erreur ci-dessous signale que la colonne a n'existe pas dans la table default$default de la base de données de destination.

In process of processing data (recordRange: 767384901729753****) failed
cause:
    CriticalAnyAllException: framework: DTS-30020: execute sql:/* DTS-full-t6o10oly31f**** */SELECT a,b FROM default$default."_AnswerDetailToSectionScore" --> (null, null) record range id = 767384901729753****, fetchSize = 1024
    PSQLException: ERROR: column "a" does not exist

DTS-RETRY-ERR-0056 : In process of processing data (.)? failed (.)? read source data error (.*)? An I/O error occurred while sending to the backend

Cause possible : La base de données de destination subit une charge importante ou le réseau est instable.

Solution :

  • Solution 1 : Sur la page de détails de la tâche DTS, cliquez sur Task Management dans le volet de navigation de gauche. Durant la phase Full Data Migration, cliquez sur Throttling afin de réduire le taux de migration complète des données et alléger la charge d'écriture sur la base de données de destination.

  • Solution 2 : Augmentez les spécifications de la base de données de destination pour améliorer les performances d'écriture.

Exemple :

In process of processing data (recordRange: 361479547447882****) failed
cause:
    CriticalAnyAllException: framework: DTS-31009: read source data error
    PSQLException: An I/O error occurred while sending to the backend.

DTS-RETRY-ERR-0057 : fetch column info from target table (.)? failed (.)? Can not get the column

Cause possible 1 : Une tâche de migration complète des données DTS ne peut pas migrer un global index.

Solution : Supprimez le global index de la base de données de destination.

Cause possible 2 : DTS ne prend pas en charge le moteur de stockage MyISAM utilisé par la base de données.

Solution 2 :

  • Pour une tâche de synchronisation des données, retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, consultez Remove a synchronization object.

  • Pour une tâche de migration des données, créez une nouvelle tâche. Lors de sa création, n'ajoutez pas la table mentionnée dans le message d'erreur aux objets à migrer.

Exemple :

framework: DTS-31008: fetch column info from target table snpcenter.modification failed
cause:
    AnyCoreException: framework: DTS-31008: fetch column info from target table snpcenter.modification failed
    CriticalAnyAllException: full-postgresql: DTS-61008: jdbc: DTS-11014: Can not get the column tableoid from recordSchema for index global_modification_after_idx

DTS-RETRY-ERR-0058 : fetch column info from (.)? table (.)? failed (.)? relation (.)? does not exist

Cause possible 1 : La table spécifiée n'existe pas dans la base de données de destination.

Solution : Créez la table dans la base de données de destination. Si vous devez supprimer cette table de la destination, attendez la fin de la tâche avant de procéder à la suppression.

Cause possible 2 : DTS ne prend pas en charge le moteur de stockage MyISAM utilisé par la base de données.

Solution 2 :

  • Pour une tâche de synchronisation des données, retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, consultez Remove a synchronization object.

  • Pour une tâche de migration des données, créez une nouvelle tâche. Lors de sa création, n'ajoutez pas la table mentionnée dans le message d'erreur aux objets à migrer.

Exemple : Le message d'erreur suivant indique que la table dw.tmp_smb2021 n'existe pas dans la base de données de destination :

framework: DTS-31008: fetch column info from source table dw.tmp_smb2021 failed
cause:
    AnyCoreException: framework: DTS-31008: fetch column info from source table dw.tmp_smb2021 failed
    CriticalAnyAllException: full-postgresql: DTS-61008: ERROR: relation "dw.tmp_smb2021" does not exist

DTS-RETRY-ERR-0059 : fetch column info from (.)? table (.)? failed (.*)? NullPointerException

Cause possible 1 : DTS ne parvient pas à interroger les informations de schéma de la table spécifiée dans la base de données source. La table a peut-être été supprimée de la source, ou le compte configuré pour la base de données source ne dispose pas des permissions de requête sur cette table.

Solution : Vérifiez si la table existe dans la base de données source. Si elle a été supprimée, reconfigurez la tâche DTS. Si la table existe, assurez-vous que le compte configuré pour la base de données source possède bien les permissions de requête nécessaires. Dans le cas contraire, accordez ces permissions au compte.

Cause possible 2 : DTS ne prend pas en charge le moteur de stockage MyISAM utilisé par la base de données.

Solution 2 :

  • Pour une tâche de synchronisation des données, retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, consultez Remove a synchronization object.

  • Pour une tâche de migration des données, créez une nouvelle tâche. Lors de sa création, n'ajoutez pas la table mentionnée dans le message d'erreur aux objets à migrer.

Exemple : Le message d'erreur ci-dessous montre que DTS échoue à récupérer les informations de schéma de la table yyy dans la base de données xxx :

**
cause:
    AnyCoreException: framework: DTS-31008: fetch column info from source table xxx.yyy failed
    NullPointerException: null

DTS-RETRY-ERR-0060 : Table (.*)? doesn't exist

Cause possible : La table spécifiée n'existe pas dans la base de données de destination.

Solution : Créez la table dans la base de données de destination. Si vous devez supprimer cette table de la destination, attendez la fin de la tâche avant de procéder à la suppression.

Exemple : Le message d'erreur suivant signale que la table hd_new_cctv.tbl_program est absente de la base de données de destination.

    cause:
    BatchUpdateException: Table 'hd_new_cctv.tbl_program' doesn't exist
    MySQLSyntaxErrorException: Table 'hd_new_cctv.tbl_program' doesn't exist"

DTS-RETRY-ERR-0061 : Duplicate entry (.*)? for key

Cause possible : Un conflit de clé primaire survient lorsque DTS écrit des données dans la base de données de destination. Un déclencheur (trigger) présent dans la base de données de destination pourrait en être la cause : lors de l'écriture des données par DTS, ce déclencheur s'active et provoque un conflit de clé primaire.

Solution : Examinez les informations de base de données et de table dans l'instruction SQL en échec, vérifiez la présence d'un déclencheur dans la base de données de destination, puis évaluez la possibilité de le supprimer. Une fois le déclencheur supprimé, redémarrez la tâche DTS.

Exemple :

Duplicate entry '97103673' for key 'PRIMARY'
cause:
    BatchUpdateException: Duplicate entry '9710****' for key 'PRIMARY'
    MySQLIntegrityConstraintViolationException: Duplicate entry '9710****' for key 'PRIMARY'"

DTS-RETRY-ERR-0062 : column (.)? of relation (.)? does not exist

Cause possible : Les schémas des tables entre les bases de données source et de destination sont incohérents. Une colonne manque dans la table spécifiée de la base de données de destination.

Solution : Ajoutez la colonne manquante à la table concernée dans la base de données de destination, puis redémarrez la tâche.

Exemple : L'erreur ci-dessous indique que la colonne exception n'existe pas dans la table t_m_class_record_detail de la base de données de destination :

ERROR: column "exception" of relation "t_m_class_record_detail" does not exist

DTS-RETRY-ERR-0063 : Lock wait timeout exceeded

Cause possible : Un délai d'attente de verrouillage a expiré dans la base de données de destination.

Solution : Si la base de données de destination est une base MySQL, exécutez les instructions suivantes pour vérifier l'état des verrous :

SHOW FULL PROCESSLIST;
SELECT * FROM innodb_trx;
Remarque

Après avoir corrigé l'erreur, vous devez redémarrer la tâche.

Exemple :

reason: Lock wait timeout exceeded; try restarting transaction
cause:
    BatchUpdateException: Lock wait timeout exceeded; try restarting transaction
    MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction

DTS-RETRY-ERR-0064 : schema in dblist not found in database

Cause possible : Un schéma spécifique n'existe pas dans la base de données de destination.

Solution : Créez le schéma ainsi que les tables à migrer dans ce schéma au sein de la base de données de destination. Redémarrez ensuite la tâche.

Exemple :

schema in dblist not found in database

DTS-RETRY-ERR-0065 : syntax error at or near (.)? schema (.)? does not exist

Cause possible : Un schéma spécifique est absent de la base de données de destination.

Solution : Créez le schéma ainsi que les tables à migrer dans ce schéma au sein de la base de données de destination. Redémarrez ensuite la tâche.

Exemple :

ERROR:syntax error at or near \"\"ALTER\"\"
Position:157. ERROR: schema \"\"CECDEV\"\" does not exist.

DTS-RETRY-ERR-0066 : MongoCommandException (.)? Command failed with error (.)? requires authentication

Cause possible : Le compte de la base de données de destination ne dispose pas des permissions d'écriture.

Solution : Accordez les permissions d'écriture au compte de la base de données de destination.

Exemple :

MongoCommandException:
Command failed with error 13: 'command insert requires authentication' on
server 113.**.*.*:27017. 

DTS-RETRY-ERR-0067 : MongoCommandException (.)? Command failed with error (.)? disk locked

Cause possible : Le disque de la base de données de destination est verrouillé. L'espace disque est peut-être plein.

Solution : Augmentez l'espace disque de la base de données MongoDB de destination et redémarrez la tâche.

Exemple :

MongoCommandException:
Command failed with error 13: 'cloud instance error, disk locked, plz check and
upgrade your disk quota, extra info: not authorized on gankao_log to execute
command { insert: "jyquestions", ordered: true, bypassDocumentValidation:
true, $db: "gankao_log" }' on server 100.**.*.*:27017.

DTS-RETRY-ERR-0068 : invalid set null value to not nullable field

Cause possible : Les schémas des bases de données source et de destination sont incohérents. Un champ défini comme NULLABLE dans la base source correspond à un champ NOT NULL dans la base de destination.

Solution : Localisez la table dans la base de données de destination à l'aide du message d'erreur, modifiez le type du champ concerné pour le rendre NULLABLE, puis redémarrez la tâche.

Exemple :

CriticalAnyAllException: database-commons: DTS-11001: invalid set null value to not nullable field

DTS-RETRY-ERR-0069 : Datasource rejected establishment of connection (.*)? Too many connections

Cause possible : Le nombre de connexions à la base de données source ou de destination a atteint sa limite maximale.

Solution : Augmentez le nombre maximal de connexions autorisé pour la base de données source ou de destination, puis redémarrez la tâche.

Remarque

Si les causes précédentes ne correspondent pas à votre situation, essayez les solutions suivantes :

  • Vérifiez l'état de la base de données source ou de destination.

  • Assurez-vous que le mot de passe du compte n'a pas été modifié.

  • Validez les paramètres de la liste d'autorisation. Pour plus d'informations, consultez Whitelist DTS server IP addresses.

  • Confirmez que le nombre de connexions à la base de données source ou de destination n'a pas atteint son plafond.

Exemple :

MySQLNonTransientConnectionException: Data source rejected establishment of connection,  message from server: ""Too many connections"""

DTS-RETRY-ERR-0070 : In process of processing data (.)? failed (.)? Syntax error in SQL statement

Cause possible : Les champs utilisés pour filtrer les objets à synchroniser sont invalides. Retirez le mot-clé WHERE.

Solution : Modifiez les filter conditions des objets à synchroniser en supprimant le mot-clé WHERE. Redémarrez ensuite la tâche.

Exemple :

framework: DTS-31009: In process of processing data (recordRange:
631*****493978*****) failed cause:
CriticalAnyAllException: common: DTS-11005: Syntax error in SQL statement
"WHERE[*] UPDATED_TIME > '2022-11-02' " [42000-193] 

DTS-RETRY-ERR-0071 : In process of processing data (.)? failed (.)? Fetch records (.*)? times but return empty

Cause possible : Le module d'écriture incrémentielle ne parvient pas à obtenir des données du module de collecte des données incrémentielles.

Solution : Résolvez l'erreur signalée par le module Incremental Aata Collection.

Exemple :

\"framework: DTS-31009: In process of processing data (recordRange: 651*****493978*****) failed\n" +
                "cause:\n" +
                "\tCriticalAnyAllException: common: DTS-10009: capture-dstore: DTS-51009: Fetch records 156 times but return empty.\n" +
                "\tRecoverableAnyAllException: capture-dstore: DTS-51009: Fetch records 156 times but return empty.\n" +
                "\tException: Fetch records but return empty.\"

DTS-RETRY-ERR-0072 : In process of processing data (.)? failed (.)? Failed to get offsets by times in 120000 ms

Cause possible : Le module d'écriture incrémentielle ne parvient pas à obtenir des données du module de collecte des données incrémentielles.

Solution : Redémarrez le module d'écriture incrémentielle et vérifiez si la tâche peut reprendre.

Exemple :

\"framework: DTS-31009: In process of processing data (recordRange: 3187189853338992640) failed\n" +
                "cause:\n" +
                "\tCriticalAnyAllException: common: DTS-11005: Failed to get offsets by times in 120000 ms\n" +
                "\tTimeoutException: Failed to get offsets by times in 120000 ms\"

DTS-RETRY-ERR-0073 : In process of processing data (.)? failed (.)? unreachable source redis network

Cause possible : DTS ne parvient pas à se connecter à l'instance Redis, ou celle-ci a peut-être été libérée.

Solution : Vérifiez la connectivité de l'instance Redis.

Exemple :

\"framework: DTS-31009: In process of processing data (recordRange: 278730492608512) failed\n" +
                "cause:\n" +
                "\tRedisServerException: redis: DTS-10015: unreachable source redis network.\n" +
                "\tSocketException: Broken pipe (Write failed)\"

DTS-RETRY-ERR-0074 : JedisDataException (.*)? WRONGTYPE Operation against a key holding the wrong kind of value

Cause possible : Une clé spécifique dans la base de données de destination porte le même nom qu'une clé de la base source, mais leurs types diffèrent.

Solution : Supprimez la clé homonyme de la base de données de destination.

Exemple :

redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key holding the wrong kind of value

DTS-RETRY-ERR-0075 : sqlserver-reader (.*)? seek binlog for timestamp

Cause possible : Aucun journal n'a été généré au point temporel correspondant dans la base de données source.

Solution : Reconfigurez la tâche.

Exemple :

"\tCriticalAnyAllException: sqlserver-reader: DTS-52061: Failed to
seek sqlserver position\n" +

DTS-RETRY-ERR-0076 : SQLServerException (.*)? The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer

Cause possible : La connexion à la base de données est impossible.

Solution : Assurez-vous que la base de données est accessible et redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

"cause:\n" +
     "\tSQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: \"\"Unexpected rethrowing\"\".\n" +

DTS-RETRY-ERR-0077 : Increment Context Is Not Running (.*)? please check whether binlog_row_image=FULL

Cause possible : Le mode de journalisation binaire est incorrect. DTS ne peut lire les journaux binaires d'une base MySQL que si le paramètre binlog_row_image est défini sur FULL.

Solution : Modifiez le mode de journalisation binaire et effacez les données de la table de destination, à condition que cela n'impacte pas votre activité. Reconfigurez ensuite la tâche. Pour savoir comment modifier le mode de journalisation binaire, consultez DTS-1051007: an error is reported when DTS connects to the MySQL Reader to verify the log binlog_row_image.

Remarque

Avant de créer une tâche DTS, assurez-vous que le paramètre binlog_row_image est réglé sur FULL dans la base de données source.

Exemple :

\"dts-k-src:
DTS-52111: Increment Context Is Not Running..: \n" +
 "cause:\n" +
"\tCriticalAnyAllException: mysql-reader: DTS-52210: fetch log
failed\n" +
"\tIOException: java.lang.UnsupportedOperationException:
database:palm_all/table:p_player/charSet:utf8/rdsRowid:false/filter:false/engine:InnoDB/snapshot:16659793***** Null bitmap size check error, binlog
table map has 15 columns, but row event has {0}, please check whether
binlog_row_image=FULL and binlog event Header:

DTS-RETRY-ERR-0078 : Fetch records (.*)? times but return empty

Cause possible : Le module d'écriture incrémentielle ne parvient pas à obtenir des données du module de collecte des données incrémentielles.

Solution : Résolvez l'erreur signalée par le module Incremental Data Collection et redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

\"framework: DTS-31009: In process of processing data
(recordRange: 65147****8075******) failed\n" +
"cause:\n" +
    "\tCriticalAnyAllException: common: DTS-10009: capture-dstore:
    DTS-51009: Fetch records 156 times but return empty.\n" +

DTS-RETRY-ERR-0079 : execute statement failed (.*)? MySQLSyntaxErrorException

Cause possible : La base de données de destination ne prend pas en charge l'instruction SQL mentionnée dans le message d'erreur.

Solution : Contactez le support technique d'Alibaba Cloud.

Exemple :

id=34439****, jobId=z48c4r42s8c****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtsrrrm4ar8v83z6vk*/alter table `xp_ass`.`t_se_db_shop_wi_coef` ADD \ncause:\n\tMySQLSyntaxErrorException: [13000, 2022110222143119216819915303151843457] illegal name, pos 47, line 1, column 48, token EOF","jobId":"hbsk4mjdr83****","maxRetryTime":7200,"module":"writer","retryCount":3,"retryTarget":"destDB","retryTime":4399,"retrying":true}

DTS-RETRY-ERR-0080 : Disperse target record field (.*)? unsupported value convert

Cause possible : DTS ne peut pas effectuer la conversion de type car les schémas des tables entre les bases source et de destination sont incohérents.

Solution : Alignez le schéma de la table dans la base de données de destination sur celui de la base source. Redémarrez ensuite la tâche.

Exemple :

id=34436****, jobId=wm811y74h1q****, value={"errMsg":"transaction-framework: DTS-71001: Disperse target record field updatetime STRING nullable as updatetime failed for record LazyParseRecord {offset [726070057], operationType [INSERT], checkpoint [0@726070057@102578064@1807@1667391476000]}\ncause:\n\tJdbcUtilsException: jdbc-utils: DTS-11001: MysqlTimestampValueDisperse: unsupported value convert for [2022-11-02 20:17:56.0] convert to [updatetime STRING nullable as updatetime]","jobId":"o7x11euhn1d****","maxRetryTime":7200,"module":"writer","retryCount":55,"retryTarget":"destDB","retryTime":546,"retrying":true}

DTS-RETRY-ERR-0081 : WSREP has not yet prepared node for application use

Cause possible : Une exception s'est produite sur la base de données.

Solution : Corrigez l'erreur dans la base de données et redémarrez l'instance DTS.

Exemple :

id=34436****, jobId=s7i127j4225****, value={"errMsg":"WSREP has not yet prepared node for application use@error code:
1047","jobId":"frjr8yzg17z****","maxRetryTime":43200,"module":"reader","retryCount":1503,"retryTarget":"srcDB","
retryTime":15155,"retrying":true}

DTS-RETRY-ERR-0082 : Failed to disperse record LazyParseRecord

Cause possible : Une erreur survient lors de la génération d'une instruction SQL par DTS.

Solution : Assurez-vous que les schémas des tables dans les bases source et de destination sont cohérents ou compatibles, puis redémarrez la tâche. Pour une tâche de synchronisation des données, vous pouvez également retirer la table mentionnée dans l'erreur de la liste des objets à synchroniser avant de redémarrer. Pour plus d'informations, consultez Remove a synchronization object.

Exemple :

id=34441****, jobId=tidd773a278****, value={"errMsg":"transaction-framework: DTS-71001: Failed to disperse record LazyParseRecord {offset [1311857846], operationType [UPDATE], checkpoint [0@1311857846@17610008188031@1667388377000]} in buildWhereClause.\ncause:\n\tTransactionReplicateException: transaction-replicate: DTS-71001: MysqlRelatedTextSqlBuilderTools: record [LazyParseRecord ****

DTS-RETRY-ERR-0083 : Error while executing user ETL (.*)? not found in

Cause possible : La syntaxe ETL est invalide, ce qui entraîne l'échec de la tâche ETL.

Solution : Vérifiez la validité de la syntaxe ETL en vous référant au message d'erreur.

Exemple :

id=34441****, jobId=p4d110p0o25****, value={"errMsg":"ETL: DTS--0001: Error while executing user ETL: starttime not found in cco_consult_platform_0002.web_chat_session_0263\ncause:\n\tRuntimeException: starttime not found in cco_consult_platform_0002.web_chat_session_0263","jobId":"ed611zroy2m****","maxRetryTime":7200,"module":"full","retryCount":14,"retryTarget":"srcDB","retryTime":135,"retrying":true}

DTS-RETRY-ERR-0084 : User (.)? does not have (.)? privilege on

Cause possible : Le compte de base de données configuré pour la tâche ne possède pas les permissions requises.

Solution : Accordez les permissions nécessaires au compte de base de données utilisé par la tâche DTS, conformément au message d'erreur.

Exemple :

id=34441****, jobId=r5g11018w2m****, value={"errMsg":"[1528a0144000****][11.202.XX.XX:3053][polardbx]ERR-CODE: [TDDL-5108][ERR_CHECK_PRIVILEGE_FAILED_ON_TABLE] User test@'100.104.XX.XX' does not have 'REPLICATION_CLIENT' privilege on table 'person'. Database is *. @error code:5108","jobId":"fr611dvxq2d****","maxRetryTime":7200,"module":"reader","retryCount":24,"retryTarget":"srcDB","retryTime":220,"retrying":true}

DTS-RETRY-ERR-0085 : execute statement failed (.*)? modify decimal column is disabled

Cause possible : Les opérations DDL de modification de colonnes sont interdites sur la table de destination.

Solution :

  • Solution 1 : Autorisez temporairement les opérations DDL mentionnées dans le message d'erreur sur la table de destination.

  • Solution 2 : Après avoir exécuté les opérations DDL pertinentes sur la table source (sans impacter votre activité), libérez la tâche, effacez les données des tables dans la base de destination, puis recréez la tâche.

    Remarque

    Pour une tâche de synchronisation des données, vous pouvez aussi modifier les objets à synchroniser après avoir appliqué les opérations DDL sur la table source afin de résoudre ce problème. Pour plus d'informations, consultez Resolve table errors in a data synchronization instance

Exemple :

id=34445****, jobId=qa1u5qhp276****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtsqa1u5qhp276p****/alter table `ectouch_data`.`order_v0_data` modify column `ka_commission_rate` DECIMAL(11, 4) default 0.00 comment 'ka**'\ncause:\n\tSQLException: [15018, 202211030027061921681310090345394****] modify decimal column is disabled, col=ka_commission_rate, oldType=decimal(11,2), newType=decimal(11,4)","jobId":"nd7k53au27e****","maxRetryTime":43200,"module":"writer","retryCount":3104,"retryTarget":"destDB","retryTime":31341,"retrying":true}

DTS-RETRY-ERR-0086 : Query execution was interrupted (.*)? max_statement_time exceeded

Cause possible : L'exécution d'une requête SQL a dépassé le délai imparti.

Solution : Exécutez la commande set max_statement_time=0 pour désactiver le délai d'expiration des instructions SQL, puis redémarrez la tâche.

Exemple :

id=34445****, jobId=v4kg7039n3m****, value={"errMsg":"Query execution was interrupted, max_statement_time exceeded@error code:3006","jobId":"wchy7vcw20m****","maxRetryTime":1800,"module":"reader","retryCount":2,"retryTarget":"srcDB","retryTime":3,"retrying":true}

DTS-RETRY-ERR-0087 : execute statement failed (.*)? Cannot find the object

Cause possible 1 : L'objet n'existe pas.

Solution : Vérifiez l'existence de l'objet mentionné dans le message d'erreur.

Cause possible 2 : Le compte de base de données utilisé par la tâche ne dispose pas des permissions nécessaires.

Solution : Vérifiez que le compte de base de données utilisé par la tâche possède bien les permissions requises.

Exemple :

id=34447****, jobId=q7j108h020a****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: null\ncause:\n\tSQLServerException: Cannot find the object \"lhrdme-test-client-C01.dbo.send_document_task\" because it does not exist or you do not have permissions.","jobId":"q8i1043620d****","maxRetryTime":86400,"module":"writer","retryCount":163,"retryTarget":"destDB","retryTime":1636,"retrying":true}

DTS-RETRY-ERR-0088 : can not find disperser for column

Cause possible : les colonnes de la table de destination sont incompatibles avec celles de la table source.

Solution :

  • Solution 1 : vérifiez si le problème peut être résolu à l'aide de la fonctionnalité de mappage des noms de colonnes. Pour plus d'informations, consultez Mappage des noms d'objets.

  • Solution 2 : modifiez le schéma de la table mentionnée dans le message d'erreur au sein de la base de données de destination, en vous basant sur le schéma de la table correspondante dans la base de données source, à condition que cela n'affecte pas votre activité. Reconfigurez ensuite la tâche. Le redémarrage de la tâche ne permet pas de corriger ce problème.

Exemple :

id=34447****, jobId=tpe1121dl2f****, value={"errMsg":"database-framework: DTS-61001: can not find disperser for column:hold_court_time TIME_WITH_TIMEZONE nullable as hold_court_time of table:public.lms_lc_case valueType= value=null","jobId":"rj9113j7m28****","maxRetryTime":7200,"module":"full","retryCount":161,"retryTarget":"destDB","retryTime":1608,"retrying":true}

DTS-RETRY-ERR-0089 : BatchUpdateException (.*)? Cannot insert explicit value for identity column

Cause possible : par défaut, l'insertion de données dans des champs à incrémentation automatique d'une table SQL Server est impossible.

Solution : passez la valeur de l'attribut IDENTITY_INSERT de la table mentionnée dans le message d'erreur à ON, puis redémarrez la tâche.

Exemple :

id=34453****, jobId=jn81159sr3m****, value={"errMsg":"common: DTS-11005: Cannot insert explicit value for identity column in table 'Card_Msyy' when IDENTITY_INSERT is set to OFF.\ncause:\n\tBatchUpdateException: Cannot insert explicit value for identity column in table 'Card_Msyy' when IDENTITY_INSERT is set to OFF.","jobId":"gl111n9sb33****","maxRetryTime":7200,"module":"full","retryCount":99,"retryTarget":"destDB","retryTime":2686,"retrying":true}

DTS-RETRY-ERR-0090 : The query has timed out

Cause possible : des modifications ont été apportées aux données dans la base de données source, ce qui empêche leur interrogation.

Solution : attendez que DTS effectue une nouvelle tentative automatiquement.

Exemple :

id=34450****, jobId=lh9n33tj30o****, value={"errMsg":"The query has timed out.@error code:0","jobId":"b27g31tn30l****","maxRetryTime":43200,"module":"reader","retryCount":27,"retryTarget":"srcDB","retryTime":810,"retrying":true}

DTS-RETRY-ERR-0091 : Transaction (.*)? was deadlocked on lock resources with another process

Cause possible : un interblocage s'est produit lors d'une transaction de base de données.

Solution : Contactez le support technique d'Alibaba Cloud.

Exemple :

id=34453****, jobId=jn81159sr3m****, value={"errMsg":"common: DTS-11005: Transaction (Process ID 187) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.\ncause:\n\tSQLServerException: Transaction (Process ID 187) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.","jobId":"gl111n9sb33****","maxRetryTime":7200,"module":"full","retryCount":1,"retryTarget":"destDB","retryTime":10,"retrying":true}

DTS-RETRY-ERR-0093 : get table (.)? detail info failed (.)? relation (.*)? does not exist

Cause possible : la table mentionnée dans le message d'erreur n'existe pas.

Solution : vérifiez si la table indiquée dans le message d'erreur existe bien dans les bases de données source et de destination. Si elle est absente de la base de données de destination, créez-la manuellement et redémarrez la tâche.

Exemple :

id=34488****, jobId=z65o4ny9c1o****, value={"errMsg":"replicate-greenplum: DTS-70002: get table [schema=hobby_om, database=hobby_om, table=tp_3321167_ogl_sys_user] detail info failed.\ncause:\n\tPSQLException: ERROR: relation \"hobby_om.tp_3321167_ogl_sys_user\" does not exist\n  Position: 15","jobId":"jdag45haa17****","maxRetryTime":7200,"module":"writer","retryCount":62,"retryTarget":"destDB","retryTime":615,"retrying":true}

DTS-RETRY-ERR-0097 : execute statement failed (.*)? unsupported delete without primary keys defined

Cause possible : la table à synchroniser ou à migrer ne possède ni clé primaire ni contrainte UNIQUE.

Solution : ajoutez une clé primaire ou une contrainte UNIQUE à la table concernée par la synchronisation ou la migration, puis redémarrez la tâche.

Exemple :

id=34484****, jobId=l69119srl3n****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtss6x11x32l3858ap*/delete from `zx`.`tb_abc` where `a` = 7 and `b` = 7 and `c` = 7 and `d` = 7\ncause:\n\tSQLException: ADB30Engine(1): meet error, deleteSQL:/*dts_id=dtss6x11x32l3858ap*/delete from `zx`.`tb_abc` where `a` = 7 and `b` = 7 and `c` = 7 and `d` = 7, error detail message:[15018, 2022110315214019216806122303453480359] table => zx.tb_abc unsupported delete without primary keys defined\n\tSQLException: [15018, 2022110315214019216806122303453480359] table => zx.tb_abc unsupported delete without primary keys defined","jobId":"zyu118d2u31****","maxRetryTime":7200,"module":"writer","retryCount":11,"retryTarget":"destDB","retryTime":101,"retrying":true}

DTS-RETRY-ERR-0098 : get table (.)? detail info failed (.)? The specified topic does not exist

Cause possible : le topic DataHub n'existe pas.

Solution : vérifiez si le topic mentionné dans le message d'erreur existe. S'il est absent, créez-le et redémarrez la tâche. Pour plus d'informations sur la création d'un topic, consultez Créer et configurer des topics.

Exemple :

id=34474****, jobId=oh811gu0n14****, value={"errMsg":"replicate-datahub: DTS-70002: get table [bobo_data.bill_record] detail info failed.\ncause:\n\tResourceNotFoundException: [httpStatus:404, requestId:20221103112918ae38dc0b7925****, errorCode:NoSuchTopic, errorMessage:The specified topic does not exist.]","jobId":"z3w1153fq1o****","maxRetryTime":7200,"module":"writer","retryCount":4,"retryTarget":"destDB","retryTime":30,"retrying":true}

DTS-RETRY-ERR-0099 : execute statement failed (.)? column (.)? is not nullable

Cause possible : des valeurs NULL ont été insérées dans des colonnes soumises à la contrainte NOT NULL de la table de destination.

Solution : supprimez la contrainte NOT NULL des colonnes indiquées dans le message d'erreur au niveau de la table de destination, puis redémarrez la tâche.

Exemple :

 id=34470****, jobId=db411ak8d33****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtspfb11r2bq3qj*****/replace into `jlg`.`new_collect_wxprefe` (`upload_time`,`upload_id`,`robot_id`,`jlg_wx_id`,`name`,`link`,`pid`,`origin_id`,`worktype_id`,`id`) values (null, 0, 0, 54842, '****', '', -1, 0, '', 2309713)\ncause:\n\tSQLException: ADB30Engine(22): meet error, insertSQL:/*dts_id=dtspfb11r2bq3qj****/replace into `jlg`.`new_collect_wxprefe` (`upload_time`,`upload_id`,`robot_id`,`jlg_wx_id`,`name`,`link`,`pid`,`origin_id`,`worktype_id`,`id`) values (null, 0, 0, 54842, '****', '', -1, 0, '', 2309713), error detail message:[15018, 2022110310293219216812802603151898161] syntax error :column 'NEW_COLLECT_WXPREFE.UPLOAD_TIME' is not nullable, can not set null\n\tSQLException: [15018, 2022110310293219216812802603151898161] syntax error :column 'NEW_COLLECT_WXPREFE.UPLOAD_TIME' is not nullable, can not set null","jobId":"ozn11934r3e****","maxRetryTime":7200,"module":"writer","retryCount":58,"retryTarget":"destDB","retryTime":573,"retrying":true}

DTS-RETRY-ERR-0100 : execute statement failed (.)? rename table (.)? target table (.*)? already exists

Cause possible : le nom que vous souhaitez attribuer à une table via l'opération RENAME existe déjà, ce qui bloque l'exécution de cette opération.

Solution : vérifiez s'il est possible de supprimer la table portant le même nom mentionnée dans le message d'erreur. Si tel est le cas, supprimez cette table et redémarrez la tâche.

Exemple :

id=34497****, jobId=q3d10wi911k****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtswg2p8k1ve9ko****/rename table `sdinfo`.`sd_manager_group` to `sdinfo`.`sd_manager_grop_1103`\ncause:\n\tSQLException: [15018, 2022110321094219216822816803453937381] target table sdinfo.sd_manager_grop_1103 already exists","jobId":"e9u10c7k11y****","maxRetryTime":1800,"module":"writer","retryCount":179,"retryTarget":"destDB","retryTime":1972,"retrying":true}

DTS-RETRY-ERR-0101 : execute statement failed (.*)? The MySQL server is running with the LOCK_WRITE_GROWTH option

Cause possible : l'espace disque de la base de données de destination est insuffisant.

Solution : étendez le disque de la base de données de destination et redémarrez la tâche.

Exemple :

id=34490****, jobId=woqu1l38176****, value={"errMsg":"transaction-replicate: DTS-70003: 22 execute transaction has excess max transaction retry time [150] cause:transaction-replicate: DTS-70004: execute statement failed, may try it again\ncause:\n\tRecoverableAnyAllException: transaction-replicate: DTS-70004: execute statement failed, may try it again\n\tSQLException: MysqlEngine(22): meet error, insertSQL:/* DTS-writer-vwqv11b6176****-MysqlEngine(22) */insert into `bi`.`b_resource_usage` (`created_time`,`updated_time`,`user_id`,`usage`,`resource_id`,`id`,`collect_day`,`accounting_day`)  VALUES  ('2022-02-12 06:00:00.0', '2022-02-12 06:00:00.0', x'53454C462D386F7855365F7173756452663438434B556A4B3351727A506A5873325135694B31674B79787674622D5041', 0, 4, 40386002, '2022-02-12', '2022-02-11') , error detail message:The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute this statement\n\tSQLException: The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute this statement","jobId":"vwqv11b6176****","maxRetryTime":43200,"module":"writer","retryCount":215,"retryTarget":"destDB","retryTime":4892,"retrying":true}

DTS-RETRY-ERR-0102 : execute statement failed (.*)? IDENTITY_INSERT is already ON for table

Cause possible : l'attribut IDENTITY_INSERT ne peut être défini sur ON que pour une seule table au sein d'une instance DTS. Or, une table avec cet attribut activé existe déjà dans l'instance DTS concernée.

Solution : définissez le paramètre sink.batch.enable sur false pour l'instance DTS, puis redémarrez la tâche. Pour plus d'informations, consultez la section Modifier les paramètres de la rubrique relative à la modification des paramètres d'instance.

Exemple :

id=34493****, jobId=jn81159sr3m****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*euy110qoz3vv6ywSQLServerPrepareStatementSqlEngine(30)*/delete top(1) from [HTOLMain].[dbo].[Cl_Order] where [OrderID] = ?\ncause:\n\tSQLServerException: IDENTITY_INSERT is already ON for table 'HTOLMain.dbo.Cl_Order'. Cannot perform SET operation for table 'HTOLMain.dbo.Cl_OrderItem'.","jobId":"euy110qoz3v****","maxRetryTime":7200,"module":"writer","retryCount":143,"retryTarget":"destDB","retryTime":1429,"retrying":true}

DTS-RETRY-ERR-0103 : execute statement failed (.)? column (.)? of relation (.*)? does not exist

Cause possible : une colonne est absente de la table de destination.

Solution : ajoutez la colonne manquante à la table spécifiée dans la base de données de destination, en vous référant au schéma de la table source et au message d'erreur. Redémarrez ensuite la tâche.

Exemple :

id=34488****, jobId=a3y11921r1e****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*f3l11pceo1h85zi29*/insert into default$default.\"_QuestionTypesToQuestions\" (a,b) values(?, ?)\ncause:\n\tPSQLException: ERROR: column \"a\" of relation \"_QuestionTypesToQuestions\" does not exist\n  Position: 79","jobId":"f3l11pceo1h****","maxRetryTime":7200,"module":"writer","retryCount":143,"retryTarget":"destDB","retryTime":1436,"retrying":true}

DTS-RETRY-ERR-0104 : The transaction log for database (.*)? is full

Cause possible : l'espace de stockage des journaux de transactions ou l'espace disque de la base de données est saturé.

Solution : augmentez l'espace dédié aux journaux de transactions ou l'espace disque, puis redémarrez la tâche.

Exemple :

id=34523****, jobId=f9q11u7qs3w****, value={"errMsg":"common: DTS-11005: The transaction log for database 'HTOLMain' is full due to 'AVAILABILITY_REPLICA'.\ncause:\n\tSQLServerException: The transaction log for database 'HTOLMain' is full due to 'AVAILABILITY_REPLICA'.","jobId":"fg6119hpu3f****","maxRetryTime":7200,"module":"full","retryCount":10,"retryTarget":"destDB","retryTime":251,"retrying":true}

DTS-RETRY-ERR-0105 : Could not allocate space for object

Cause possible : l'espace disque de la base de données de destination est plein.

Solution : étendez le disque de la base de données de destination et redémarrez la tâche.

Exemple :

id=34523****, jobId=f9q11u7qs3w****, value={"errMsg":"common: DTS-11005: Could not allocate space for object 'dbo.Cl_OrderItem'.'ix_orderitem_productId' in database 'HTOLMain' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.\ncause:\n\tSQLServerException: Could not allocate space for object 'dbo.Cl_OrderItem'.'ix_orderitem_productId' in database 'HTOLMain' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.","jobId":"fg6119hpu3f****","maxRetryTime":7200,"module":"full","retryCount":102,"retryTarget":"destDB","retryTime":2663,"retrying":true}

DTS-RETRY-ERR-0106 : Failed to seek sqlserver position (.)? Fetch backup log failed (.)? seek binlog for timestamp

Cause possible : SQL Server ne parvient pas à localiser les journaux en fonction du numéro de séquence du journal (LSN) au démarrage de la tâche.

Solution : remplacez la valeur du paramètre Backup Frequency par Same as Data Backup.修改备份频率

Exemple :

  • Le message d'erreur suivant indique que le point de contrôle de consommation n'existe pas :

    \"dts-k-src: DTS-52102: retry final failed\n" +
                    "cause:\n" +
                    "\tRecoverableAnyAllException: dts-k-src: DTS-52110: SQLServerRecordExtractor Init Error: sqlserver-reader: DTS-52061: Failed to seek sqlserver position\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52061: Failed to seek sqlserver position\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52411: Fetch backup log failed\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52061: seek binlog for timestamp 1666324457\"
  • Le message d'erreur ci-dessous signale que le SCN (System Change Number) est invalide :

    Fetch *** SQL Server backup log faild, fetch ls  ***

DTS-RETRY-ERR-0107 : Fetch (.)? SQL Server backup log faild (.)? fetch ls

Cause possible : SQL Server ne trouve pas les journaux correspondant au LSN pendant l'exécution de la tâche.

Solution : remplacez la valeur du paramètre Backup Frequency par Same as Data Backup.修改备份频率

Exemple :

  • Ce message d'erreur révèle l'absence du point de contrôle de consommation :

    \"dts-k-src: DTS-52102: retry final failed\n" +
                    "cause:\n" +
                    "\tRecoverableAnyAllException: dts-k-src: DTS-52110: SQLServerRecordExtractor Init Error: sqlserver-reader: DTS-52061: Failed to seek sqlserver position\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52061: Failed to seek sqlserver position\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52411: Fetch backup log failed\n" +
                    "\tCriticalAnyAllException: sqlserver-reader: DTS-52061: seek binlog for timestamp 1666324457\"
  • Celui-ci indique quant à lui que le SCN est invalide :

    Fetch *** SQL Server backup log faild, fetch ls  ***

DTS-RETRY-ERR-0108 : Column (.*)? For input string

Cause possible : le format des données du champ cité dans le message d'erreur est incorrect.

Solution : corrigez le format des données du champ concerné dans la base de données de destination, puis redémarrez la tâche.

Exemple :

**** (Column => PMS_GOODS.RETAIL_INV_BUFFER), For input string: "0.4300"
    SQLException: [15018, 2022110322280517202801611203151004951] (Column => PMS_GOODS.RETAIL_INV_BUFFER), For input string: "0.4300"

DTS-RETRY-ERR-0109 : In process of processing data (.)? failed (.)? Column (.*)? not found

Cause possible : une colonne manque dans la table de destination.

Solution : ajoutez la colonne absente à la table spécifiée dans la base de données de destination, conformément au schéma de la table source et au message d'erreur. Redémarrez ensuite la tâche.

Exemple :

\"framework: DTS-31009: In process of processing data (recordRange: 627098562752151552) failed\n" +
                "cause:\n" +
                "\tCriticalAnyAllException: common: DTS-11005: Column \"\"1658159900711\"\" not found [42122-193]\n" +
                "\tDbException: Column \"\"1658159900711\"\" not found [42122-193]\n" +
                "\tJdbcSQLException: Column \"\"1658159900711\"\" not found [42122-193]\"

DTS-RETRY-ERR-0110 : In process of processing data (.)? failed (.)? RedisServerException (.*)? Slave connection closed by source redis

Cause possible : la connexion à la base de données source a été fermée.

Solution : vérifiez l'état de la base de données source et augmentez la valeur du paramètre client-output-buffer-limit slave selon vos besoins métier.

Remarque

Vous pouvez exécuter la commande config set client-output-buffer-limit 'slave 0 0 0' afin de supprimer la limite du tampon de sortie de réplication.

Exemple :

jobId=fo710zuy27x****, code=04, errMsg=framework: DTS-31009: In process of processing data (recordRange: 278730492608512) failed
cause:
    RedisServerException: redis: DTS-10015: Slave connection closed by source redis, please read /var/log/messages and redis server logs to find which caused this error.The most probable reason is insufficient memory, storage or slave output buffer(config set client-output-buffer-limit 'slave X X X').
    RedisCannotRetryException: redis: DTS-10009: Read 1037 bytes , but only 374 already read.
    IOException: Read 1037 bytes , but only 374 already read.

DTS-RETRY-ERR-0111 : execute statement failed (.)? null value in column (.)? violates not-null constraint

Cause possible : des données invalides ont été générées durant l'exécution de la tâche.

Solution : assurez-vous que les schémas des tables sont cohérents entre les bases de données source et de destination.

Exemple :

jobId=a5oe7ffq12v****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /*a5oe7ffq12vy4*****/insert into "resico_ods"."crm_cooperated_zlb" ("id","customer_id","zlb_info","remark","delete_flag","created_by","created_at","updated_by","updated_at","version","entp_name") values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
cause:
    PSQLException: ERROR: null value in column "customer_id" violates not-null constraint  (seg3 172.26.254.254:4001 pid=308567)
  Detail: Failing row contains (158738364208513****, null, {"authAt":"2022-11-01 17:58:38","customerId":"15611694496311****..., null, 0, 0, 2022-11-01 17:58:47, 0, 2022-11-01 17:58:47+08, 0, ****).

DTS-RETRY-ERR-0112 : execute statement failed (.)? null value in column (.)? For input string

Cause possible : des données invalides ont été produites lors de l'exécution de la tâche.

Solution : vérifiez la cohérence des schémas de tables entre la base de données source et celle de destination.

Exemple :

jobId=jg910k6427x****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtsb5r10cq5265*****/replace into `kuaishou_ad_dev`.`rel_ks_creative_master_account` (`master_id`,`account_id`,`updated_at`,`created_at`,`id`,`deleted_at`) values (3, 9999999999999, '2022-10-31 17:53:46.0', '2022-10-31 17:53:46.0', 28, null)
cause:
    SQLException: ADB30Engine(25): meet error, insertSQL:/*dts_id=dtsb5r10cq5265*****/replace into `kuaishou_ad_dev`.`rel_ks_creative_master_account` (`master_id`,`account_id`,`updated_at`,`created_at`,`id`,`deleted_at`) values (3, 9999999999999, '2022-10-31 17:53:46.0', '2022-10-31 17:53:46.0', 28, null), error detail message:[15018, 2022110118193219216818212703151020339] (Column => REL_KS_CREATIVE_MASTER_ACCOUNT.ACCOUNT_ID), For input string: "9999999999999"
    SQLException: [15018, 2022110118193219216818212703151020339] (Column => REL_KS_CREATIVE_MASTER_ACCOUNT.ACCOUNT_ID), For input string: "9999999999999"

DTS-RETRY-ERR-0113 : table not exist

Cause possible : la table citée dans le message d'erreur est introuvable dans la base de données de destination.

Solution : confirmez l'existence de la table mentionnée dans le message d'erreur au sein de la base de données de destination. Si elle n'existe pas, appliquez l'une des solutions suivantes pour résoudre le problème :

  • Solution 1 : pour une tâche de synchronisation de données, retirez la table concernée de la liste des objets à synchroniser dans la base de données source. Pour plus d'informations, consultez Supprimer un objet de synchronisation.

  • Solution 2 : créez manuellement dans la base de données de destination une table identique (même schéma) à celle indiquée dans le message d'erreur côté source, puis redémarrez la tâche.

Exemple :

SQLException: ADB30Engine(2): meet error, insertSQL:/*dts_id=dtsd4f12w00f8t*****/replace into `test_lianxi`.`ltkanduoduo1_full_att_realtime_std_hourly_report_v1` (`date`,`adgroup_id`,`hijack_agent_account_id`,`lowage_tuid_num`,`created_at`,`is_hijack`,`member_order_num`,`active_1day`,`hour`,`updated_at`,`last_week_active`,`id`,`campaign_id`,`create_role_num`,`url_report_num`,`dtu`,`os`,`cp_report_num`,`active`,`consumption`,`start_play_num`,`app_register_num`,`agent_account_id`,`ad_id`,`new_user_pass_num`,`login_num`,`key_action_num`,`yesterday_active`,`consumption_real`) values ('2022-11-01', 'att_4900014', 6, 0, '2022-11-01 17:00:07', 0, 0, 1, 17, '2022-11-01 17:15:16', 0, 146183, 'att_4900014', 0, 0, '4900014', 0, 0, 0, 0.00, 0, 0, 6, 'att_4900014', 0, 0, 0, 0, 0.00)error detail message:[15018, 2022110117151619216817607303151114839] table not exist => test_lianxi.ltkanduoduo1_full_att_realtime_std_hourly_report_v1
    SQLException: [15018, 2022110117151619216817607303151114839] table not exist => test_lianxi.ltkanduoduo1_full_att_realtime_std_hourly_report_v1

DTS-RETRY-ERR-0114 : execute statement failed (.)? Unknown column (.)? in

Cause possible : une colonne est absente de la table spécifiée dans la base de données de destination.

Solution : ajoutez la colonne manquante à la table concernée dans la base de données de destination, puis redémarrez la tâche.

Exemple :

jobId=vme10ye5l8x****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /* DTS-writer-vme10ye5l8xjbx7-MysqlEngine(29) */delete from `alt_coupon`.`report_coupon_order_statistics` WHERE `date` = '2022-10-31' and `ordamount` = 166050 and `usemem` = 45 and `expirecon` = 29573 and `allcon` = 21180 and `ordmem` = 45 and `coupon_name` = x'E887AAE58AA9E782B9E9A490E5858DE9858DE588B8' and `payamount` = 143550 and `usecon` = 45 and `__#alibaba_rds_row_id#__` = 14030 and `coupon_id` = 60 and `allmem` = 8470 and `ordcon` = 45 limit 1
cause:
    SQLException: MysqlEngine(29): meet error, deleteSQL:/* DTS-writer-vme10ye5l8xjbx7-MysqlEngine(29) */delete from `alt_coupon`.`report_coupon_order_statistics` WHERE `date` = '2022-10-31' and `ordamount` = 166050 and `usemem` = 45 and `expirecon` = 29573 and `allcon` = 21180 and `ordmem` = 45 and `coupon_name` = x'E887AAE58AA9E782B9E9A490E5858DE9858DE588B8' and `payamount` = 143550 and `usecon` = 45 and `__#alibaba_rds_row_id#__` = 14030 and `coupon_id` = 60 and `allmem` = 8470 and `ordcon` = 45 limit 1error detail message:Unknown column '__#alibaba_rds_row_id#__' in 'where clause'
    SQLSyntaxErrorException: Unknown column '__#alibaba_rds_row_id#__' in 'where clause'

DTS-RETRY-ERR-0123 : The server principal (.)? is not able to access the database (.)? under the current security context

Cause possible : une erreur survient lorsque DTS interroge les métadonnées.

Solution : vérifiez si les permissions du compte de base de données utilisé par la tâche sont conformes aux exigences requises, et assurez-vous que la table mentionnée dans le message d'erreur existe bien dans la base de données source.

Exemple :

\"common: DTS-11005: framework: DTS-31008: fetch column info from target table [U8CLOUD32CS].[dbo].[po_settlebill_b] failed\n" +
                "cause:\n" +
                "\tAnyCoreException: framework: DTS-31008: fetch column info from target table [U8CLOUD32CS].[dbo].[po_settlebill_b] failed\n" +
                "\tRuntimeException: com.microsoft.sqlserver.jdbc.SQLServerException: The server principal \"\"erp_user\"\" is not able to access the database \"\"U8CLOUD32CS\"\" under the current security context.\n" +
                "\tSQLServerException: The server principal \"\"erp_user\"\" is not able to access the database \"\"U8CLOUD32CS\"\" under the current security context.\"

DTS-RETRY-ERR-0124 : Change data capture is only available in the Enterprise

Cause possible : la fonctionnalité de capture des données modifiées (CDC) n'est pas prise en charge par cette instance SQL Server.

Solution : vérifiez si la version de votre instance SQL Server permet d'activer le CDC.

Exemple :

This instance of SQL Server is the Web Edition (64-bit). Change data capture is only available in the Enterprise, Developer, Enterprise Evaluation, and Standard editions.

DTS-RETRY-ERR-0125 : MongoCommandException (.*)? interrupted at shutdown

Cause possible : une exception s'est produite sur l'instance MongoDB.

Solution : vérifiez que l'instance MongoDB fonctionne correctement.

Exemple :

\"common: DTS-11005: com.mongodb.MongoCommandException: Command failed with error 11600: 'interrupted at shutdown' on server 172.19.XX.XX:XXX. The full response is { \"\"ok\"\" : 0.0, \"\"errmsg\"\" : \"\"interrupted at shutdown\"\", \"\"code\"\" : 11600, \"\"codeName\"\" : \"\"InterruptedAtShutdown\"\" }\n" +
                "cause:\n" +
                "\tSQLException: com.mongodb.MongoCommandException: Command failed with error 11600: 'interrupted at shutdown' on server 172.19.XX.XX:XXX. The full response is { \"\"ok\"\" : 0.0, \"\"errmsg\"\" : \"\"interrupted at shutdown\"\", \"\"code\"\" : 11600, \"\"codeName\"\" : \"\"InterruptedAtShutdown\"\" }\n" +
                "\tMongoCommandException: Command failed with error 11600: 'interrupted at shutdown' on server 172.19.XX.XX:XXX. The full response is { \"\"ok\"\" : 0.0, \"\"errmsg\"\" : \"\"interrupted at shutdown\"\", \"\"code\"\" : 11600, \"\"codeName\"\" : \"\"InterruptedAtShutdown\"\" }\"

DTS-RETRY-ERR-0126 : MongoCommandException (.*)? Index must have unique name

Cause possible : l'index à créer existe déjà, ce qui rend sa recréation impossible.

Solution : recherchez un index portant le même nom. Si un tel index existe et peut être supprimé, supprimez-le et redémarrez la tâche.

Exemple :

com.mongodb.MongoCommandException: Command failed with error 86: 'Index must have unique name. The existing index: { v: 2, key: { fund_wallet_id: 1 }, name: "fund_wallet_id_1", ns: "airmart-watbg-prod.funds_pools", background: true } has the same name as the requested index: { v: 2, key: { fund_wallet_id: -1 }, name: "fund_wallet_id_1", ns: "airmart-watbg-prod.funds_pools", background: true }' on server 172.19.XX.XX:XXX. The full response is { "raw" : { "mgset-62336776/10.42.XX.XX:XXX,10.42.XX.XX:XXX" : { "ok" : 0.0, "errmsg" : "Index must have unique name.****

DTS-RETRY-ERR-0127 : MongoCommandException (.)? cloud instance error (.)? disk locked

Cause possible : le disque de l'instance MongoDB est verrouillé, empêchant toute écriture de données.

Solution : vérifiez si l'espace disque de l'instance MongoDB est saturé. Dans l'affirmative, augmentez la capacité du disque de l'instance et redémarrez la tâche.

Exemple :

\"common: DTS-11005: com.mongodb.MongoCommandException: Command failed with error 13: 'cloud instance error, disk locked, plz check and upgrade your disk quota, extra info: not authorized on xmol to execute command { insert: \"\"thesisRedirectLogs\"\", ordered: true, bypassDocumentValidation: true, $db: \"\"xmol\"\" }' on server 172.16.19.23:42976. The full response is { \"\"operationTime\"\" : { \"\"$timestamp\"\" : { \"\"t\"\" : 1666348500, \"\"i\"\" : 3392 } }, \"\"ok\"\" : 0.0, \"\"errmsg\"\" : \"\"cloud instance error, disk locked, plz check and upgrade your disk quota, extra info: ****

DTS-RETRY-ERR-0128 : Unknown database

Cause possible : la base de données n'existe pas.

Solution : créez la base de données mentionnée dans le message d'erreur et redémarrez la tâche.

Exemple :

jobId=sw01037i31w****, code=04, errMsg=com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'table3'

DTS-RETRY-ERR-0129 : The table (.*)? is full

Cause possible 1 : l'espace disque de la base de données de destination est plein.

Solution : augmentez l'espace disque alloué à la base de données de destination et redémarrez la tâche. Si la base de données de destination est une instance ApsaraDB RDS for MySQL, mettez à niveau ses spécifications. Pour plus d'informations, consultez Modifier les spécifications. S'il s'agit d'une base de données MySQL auto-gérée, procédez comme suit :

  1. Connectez-vous à la base de données MySQL auto-gérée.

  2. Dans le fichier de configuration my.ini, repérez le chemin de stockage des données. Celui-ci correspond à la valeur située après datadir.

  3. Accédez au répertoire de stockage des données et libérez de l'espace disque.

    Avertissement

    Soyez vigilant et veillez à ne pas supprimer de données nécessaires.

  4. Redémarrez la base de données MySQL, puis relancez la tâche DTS.

Exemple :

jobId=zoa119hcy3m****, code=03, errMsg=framework: DTS-30011: currentRunningSQL: /* DTS-full-zoa119hcy3m**** */insert ignore into `statistics`.`t_mem_keyword_log`(`createtime`,`keyword_id`,`mem_id`,`ip`,`channel`,`id`,`source`,`TYPE`) VALUES (?,?,?,?,?,?,?,?), reason: The table 't_mem_keyword_log' is full
cause:
    BatchUpdateException: The table 't_mem_keyword_log' is full
    SQLException: The table 'DTSTEST' is full

Cause possible 2 : la taille de la table temporaire a atteint sa limite maximale.

Solution : relevez la limite de taille des tables temporaires. Pour une instance ApsaraDB RDS for MySQL de destination, augmentez les valeurs des paramètres tmp_table_size et max_heap_table_size dans la plage autorisée. Pour plus d'informations, reportez-vous à la section Modifier les paramètres d'instance de la rubrique dédiée à la modification des paramètres d'instance. Pour une base de données MySQL auto-gérée, suivez ces étapes :

  1. Connectez-vous à la base de données MySQL auto-gérée.

  2. Vérifiez les valeurs des paramètres tmp_table_size et max_heap_table_size dans le fichier de configuration my.ini.

    Remarque

    Par défaut, les paramètres tmp_table_size et max_heap_table_size sont fixés à 16M, soit 16 Mo.

    • Si ces paramètres sont absents du fichier de configuration, les valeurs par défaut s'appliquent. Ajoutez alors les lignes suivantes sous la section [mysqld] du fichier my.ini :

      tmp_table_size = 256M
      max_heap_table_size = 256M
    • Si les paramètres existent mais présentent des valeurs trop faibles, augmentez-les selon vos besoins métier.

  3. Redémarrez la base de données MySQL, puis relancez la tâche DTS.

Exemple :

You are using the MEMORY (HEAP) storage engine; in this case you need to increase the value of the max_heap_table_size system variable. See Section 5.1.3, "Server System Variables".
ERROR 1114 (HY000) at line 1720: The table 'XXXX' is full

DTS-RETRY-ERR-0130: BatchUpdateException (.*)? entry too large

Cause possible : le volume de données écrites dépasse la limite supérieure spécifiée.

Solution : définissez la valeur du paramètre max_allowed_packet afin de répondre aux exigences applicables.

Exemple : le message d'erreur suivant indique que le volume de données écrites, soit 7 956 719 octets, excède la limite supérieure fixée à 6 291 456 octets.

jobId=t7s100u5319****, code=03, errMsg=framework: DTS-30011: currentRunningSQL: /* DTS-full-t7s100u5319**** */insert ignore into `dcr_file_service`.`t_file_task`(`reason`,`company_id`,`create_time`,`entity_name`,`user_name`,`end_time`,`remark`,`sort`,`type`,`finish_time`,`enabled_flag`,`start_time`,`update_time`,`update_user`,`user_code`,`user_id`,`id`,`create_user`,`json_param`,`status`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?), reason: entry too large, the max entry size is 6291456, the size of data is 7956719
cause:
    BatchUpdateException: entry too large, the max entry size is 6291456, the size of data is 7956719
    SQLException: entry too large, the max entry size is 6291456, the size of data is 7956719

DTS-RETRY-ERR-0131: BatchUpdateException (.*)? No space left on device

Cause possible : l'espace disque alloué à DTS est saturé.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

jobId=wb611p3ef1h****, code=03, errMsg=framework: DTS-30011: currentRunningSQL: /* DTS-full-wb611p3ef1h**** */insert ignore into `dcs_ford_sale`.`tm_dcc_alloc_price_bak11`(`id`,`material_id`,`dealer_id`,`price_type`,`buy_type`,`origin`,`eff_date_from`,`eff_date_to`,`price`,`qty`,`qty_remain`,`status`,`psbi_create_date`,`create_date`,`update_date`,`ver`,`ver_date`,`update_by`,`src`,`sap_no`,`invoice_company`,`contract_no`,`xx_price_type`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?), reason: Can't create/write to file '/tmp/MLHer8ya' (OS errno 28 - No space left on device)
cause:
    BatchUpdateException: Can't create/write to file '/tmp/MLHer8ya' (OS errno 28 - No space left on device)
    SQLException: Can't create/write to file '/tmp/MLHer8ya' (OS errno 28 - No space left on device)

DTS-RETRY-ERR-0133: fetch column info from target table (.)? failed (.)? Invalid object name

Cause possible : la table mentionnée dans le message d'erreur n'existe pas dans la base de données de destination.

Solution : créez une table dans la base de données de destination en vous basant sur le message d'erreur et les informations de la table correspondante dans la base de données source. Redémarrez ensuite la tâche.

Exemple :

jobId=sbl11ksji16****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table [datang].[dbo].[SheBao_Source_1] failed
cause:
    AnyCoreException: framework: DTS-31008: fetch column info from target table [datang].[dbo].[SheBao_Source_1] failed
    RuntimeException: com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name 'datang.dbo.SheBao_Source_1'.
    SQLServerException: Invalid object name 'datang.dbo.SheBao_Source_1'.

DTS-RETRY-ERR-0134: fetch column info from target table (.*)? failed

Cause possible 1 : DTS ne parvient pas à récupérer les informations des colonnes car certaines sont absentes de la table de destination.

Solution : vérifiez que les colonnes correspondantes existent bien dans la table de destination indiquée dans le message d'erreur, puis redémarrez la tâche.

Cause possible 2 : la récupération des informations de colonnes échoue car le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions nécessaires.

Solution : assurez-vous que le compte de base de données utilisé par la tâche DTS possède les permissions de lecture et d'écriture sur la table de destination. Redémarrez ensuite la tâche.

Cause possible 3 : le paramètre max_stack_depth de la base de données de destination est défini sur une valeur trop faible.

Solution : augmentez la valeur du paramètre max_stack_depth pour la base de données de destination et redémarrez la tâche. Pour plus d'informations sur la modification des paramètres d'une instance ApsaraDB RDS for PostgreSQL, consultez Définir les paramètres de l'instance.

Cause possible 4 : l'index de destination dans le cluster Elasticsearch a été généré suite à un rollover.

Solution : DTS ne prend pas en charge les index générés après un rollover.

Cause possible 5 : la table de destination contient des colonnes dont la précision est incompatible avec celle de la table source.

Solution : vérifiez la précision des tables source et de destination, modifiez la précision de la table de destination, puis redémarrez la tâche.

Exemple :

jobId=im6t3ajs21m****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table dts_work.exercise_question_links failed
cause:
    AnyCoreException: framework: DTS-31008: fetch column info from target table dts_work.exercise_question_links failed
    NullPointerException: null

DTS-RETRY-ERR-0135: Packet for query is too large max_allowed_packet

Cause possible : la taille du paquet dépasse la valeur du paramètre max_allowed_packet.

Solution : assurez-vous que la valeur du paramètre max_allowed_packet est supérieure à la taille du paquet, puis redémarrez la tâche.

Exemple :

"framework: DTS-30011: currentRunningSQL: /* DTS-full-akl10d9m27u**** */insert ignore into `zeda`.`log`(`response_data`,`respond_message`,`ua_client`,`request_message`,`ip`,`module`,`ua_os`,`type`,`router`,`request_time`,`user_id`,`p_router`,`ua_device`,`response_time`,`id`,`api`,`username`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?), reason: Packet for query is too large (74,694,508 > 67,108,864). You can change this value on the server by setting the 'max_allowed_packet' variable.
cause:
    BatchUpdateException: Packet for query is too large (74,694,508 > 67,108,864). You can change this value on the server by setting the 'max_allowed_packet' variable.
    PacketTooBigException: Packet for query is too large (74,694,508 > 67,108,864). You can change this value on the server by setting the 'max_allowed_packet' variable."

DTS-RETRY-ERR-0136: Get db all schemas error (.*)? Query execution was interrupted

Cause possible : le processus de récupération des schémas de la base de données source a expiré.

Solution : redémarrez la tâche.

Exemple :

DTS-1020009 Get db all schemas error,err msg:Query execution was interrupted, maximum statement execution time exceeded

DTS-RETRY-ERR-0137: Increment Context Is Not Running (.)? DTS-52710 (.)? log fetch failed

Cause possible : une erreur survient lorsque DTS extrait les journaux d'opérations en fonction de l'horodatage.

Solution : vérifiez que la collection oplog.rs de la base de données locale existe et augmentez l'intervalle d'extraction des journaux d'opérations. Reconfigurez ensuite la tâche.

Remarque

DTS ne prend pas en charge les tâches incrémentielles dont la base de données source est une base MongoDB autonome.

Exemple :

jobId=x4l112aas19****, code=15, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..:
cause:
    CriticalAnyAllException: mongo-reader: DTS-52710: log fetch failed
    CriticalAnyAllException: mongo-reader: DTS-52702: First Record Timestamp not correct, startPosition is : Timestamp{value=7160854279467565057, seconds=1667266311, inc=1}, record ts is : null

DTS-RETRY-ERR-0138: Increment Context Is Not Running (.)? DTS-52233 (.)? Invalid row format

Cause possible : la valeur du paramètre binlog_format n'est pas définie sur row.

Solution : définissez la valeur du paramètre binlog_format sur row et exécutez la commande KILL pour fermer toutes les sessions de la base de données source. Reconfigurez ensuite la tâche.

Exemple :

jobId=v2o117kyi13****, code=15, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..:
cause:
    CriticalAnyAllException: mysql-reader: DTS-52210: fetch log failed
    IOException: mysql-reader: DTS-52233: Invalid row format : "INSERT INTO `apowo_manager_log` (`user`, `time`, `cname`, `c`, `m`, `uri`, `get`, `post`) VALUES ('zhangzhicheng', 1667284446, '****', 'activityconfig', 'repush', 'activityconfig/repush/22073', '[]', '[]')"
    CriticalAnyAllException: mysql-reader: DTS-52233: Invalid row format : "INSERT INTO `apowo_manager_log` (`user`, `time`, `cname`, `c`, `m`, `uri`, `get`, `post`) VALUES ('zhangzhicheng', 1667284446, '****', 'activityconfig', 'repush', 'activityconfig/repush/22073', '[]', '[]')"

DTS-RETRY-ERR-0139: Increment Context Is Not Running (.*)? First Record Timestamp not correct

Cause possible : les journaux binaires de la base de données source sont inexistants. Par conséquent, DTS ne peut pas collecter les données incrémentielles.

Solution : reconfigurez la tâche.

Exemple :

\"bisId [e3g10360215****] run fail by [****], errorMsg:cluster [q4110pkw21t****] for channel [e3g10360215****] status [failed] is abnormal. errMsg:dts-k-src: DTS-52111: Increment Context Is Not Running..: \n" +
                "cause:\n" +
                "\tCriticalAnyAllException: mongo-reader: DTS-52710: log fetch failed\n" +
                "\tCriticalAnyAllException: mongo-reader: DTS-52702: First Record Timestamp not correct, startPosition is : Timestamp{value=7156853964107939841, seconds=1666334915, inc=1}, record ts is : null\"

DTS-RETRY-ERR-0140: Mirror Meta error (.*)? table or view does not exist

Cause possible 1 : la table ou la vue n'existe pas.

Solution : vérifiez si la table ou la vue correspondante existe.

Cause possible 2 : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises.

Solution : vérifiez que le compte de base de données utilisé par la tâche DTS possède les permissions de lecture sur la table ou la vue concernée.

Exemple :

jobId=s9v11f9at1f****, code=15, errMsg=dts-k-src: DTS-52102: retry final failed
cause:
    RecoverableAnyAllException: dts-k-src: DTS-52110: OracleRecordExtractor Init Error: oracle-reader: DTS-52050: Mirror Meta error,
    CriticalAnyAllException: oracle-reader: DTS-52050: Mirror Meta error,
    CriticalAnyAllException: oracle-reader: DTS-52050: Mirror meta failed
    CriticalAnyAllException: oracle-reader: DTS--0002: Can not create connection to source database, case by ORA-00942: table or view does not exist

    SQLSyntaxErrorException: ORA-00942: table or view does not exist

DTS-RETRY-ERR-0141: This type of SQL is not supported by group shard

Cause possible : les instructions SQL exécutées dans la base de données source ne sont pas prises en charge par la base de données de destination en mode group shard.

Solution :

  • Tâche de synchronisation des données :

    • Solution 1 : supprimez la table correspondante de la liste des objets à synchroniser. Pour plus d'informations, consultez Supprimer un objet de synchronisation.

    • Solution 2 : vérifiez s'il est possible d'ignorer les instructions SQL. Si ce n'est pas le cas, reconfigurez la tâche.

  • Tâche de migration des données : vérifiez si les instructions SQL peuvent être ignorées. Dans la négative, reconfigurez la tâche.

Exemple :

\"dts-k-src: DTS-52102: retry final failed\n" +
                "cause:\n" +
                "\tRecoverableAnyAllException: dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52060: initial fetch position failed\n" +
                "\tCriticalAnyAllException: mysql-reader: DTS-52060: initial fetch position failed\n" +
                "\tIOException: java.sql.SQLException: Proxy ERROR: This type of SQL is not supported by group shard\n" +
                "\tSQLException: Proxy ERROR: This type of SQL is not supported by group shard\"

DTS-RETRY-ERR-0142: Specified key was too long

Cause possible : la longueur maximale d'un champ d'index dans une table gérée par le moteur InnoDB de MySQL est de 767 octets.

Solution : pour une instance ApsaraDB RDS for MySQL V5.6 ou 5.7, définissez le paramètre innodb_large_prefix sur ON. Reconfigurez ensuite la tâche. Pour plus d'informations sur la modification des paramètres d'une instance, reportez-vous à la section Modifier les paramètres de l'instance de la rubrique Modifier les paramètres de l'instance.

Exemple :

Specified key was too long; max key length is 767 bytes.

DTS-RETRY-ERR-0143: empty binlog list in oss

Cause possible : DTS ne parvient pas à obtenir les journaux binaires spécifiés depuis Object Storage Service (OSS).

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

id=35746****, jobId=dya1106628z****, value={"errMsg":"dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52222: empty binlog list in oss, src rds instance = rm-bp1w2cl72i6in****, start time = 1669619166, end time = 1669905430","jobId":"t1d11sbo28z****","maxRetryTime":43200,"module":"reader","retryCount":30,"retryTarget":"srcDB","retryTime":1235,"retrying":true}

DTS-RETRY-ERR-0144: empty binlog list in

Cause possible : DTS ne parvient pas à récupérer les journaux binaires spécifiés.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

id=357528****, jobId=udy119n2167*****, value={"errMsg":"dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52222: empty binlog list in","jobId":"jer122l6i1j****","maxRetryTime":43200,"module":"reader","retryCount":2,"retryTarget":"srcDB","retryTime":592,"retrying":true}

DTS-RETRY-ERR-0145: Unknown column (.*)? in

Cause possible : les champs définis dans les conditions de filtrage de la tâche n'existent pas dans la base de données source.

Solution :

  • S'il s'agit d'une tâche de synchronisation des données, modifiez les objets à synchroniser. Dans la section Selected Objects, cliquez avec le bouton droit sur l'objet à synchroniser. Dans la boîte de dialogue qui s'affiche, modifiez le paramètre Filter Conditions. Terminez la configuration selon les instructions affichées.

  • Pour une tâche de migration des données, reconfigurez la tâche en utilisant les conditions de filtrage appropriées.

Exemple :

id=35746****, jobId=wzl12d7ie1g****, value={"errMsg":"framework: DTS-30020: execute sql:/* DTS-full-ykb12oe6k1n**** */SELECT `output`,`failed_times`,`input`,`created_time`,`biz_code`,`modified_time`,`next_exec_time`,`tx_id`,`biz_id`,`processor`,`tx_state` FROM `test_x7sy_com`.`sy_order_mgmt_local_tx_log` WHERE  ( create_time<1667232000 ) --> (null, null) record range id = 403027421250872****, fetchSize = -2147483648\ncause:\n\tMySQLSyntaxErrorException: Unknown column 'create_time' in 'where clause'","jobId":"ykb12oe6k1n****","maxRetryTime":43200,"module":"full","retryCount":110,"retryTarget":"srcDB","retryTime":1103,"retrying":true}

DTS-RETRY-ERR-0146: Connection reset

Cause possible : la connexion entre la tâche et la base de données source a été réinitialisée.

Solution : assurez-vous que DTS peut se connecter à la base de données source et redémarrez la tâche.

Exemple :

id=35749****, jobId=j5h12gsco18****, value={"errMsg":"Connection reset ClientConnectionId:b7773844-5bf4-4439-83a7-f153f69f9601@error code:0","jobId":"cjs127rbb1k****","maxRetryTime":43200,"module":"reader","retryCount":61,"retryTarget":"srcDB","retryTime":915,"retrying":true}

DTS-RETRY-ERR-0147: You have an error in your SQL syntax

Cause possible : les champs spécifiés dans les conditions de filtrage de la tâche sont absents de la base de données source.

Solution :

  • S'il s'agit d'une tâche de synchronisation des données, modifiez les objets à synchroniser. Dans la section Selected Objects, cliquez avec le bouton droit sur l'objet à synchroniser. Dans la boîte de dialogue qui s'affiche, modifiez le paramètre Filter Conditions. Terminez la configuration selon les instructions affichées.

  • Pour une tâche de migration des données, reconfigurez la tâche en utilisant les conditions de filtrage appropriées.

Exemple :

id=35749****, jobId=k66125z4n1p****, value={"errMsg":"framework: DTS-30020: execute sql:/* DTS-full-aqb12ji5f1t**** */SELECT **** fetchSize = -2147483648\ncause:\n\tSQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ****}

DTS-RETRY-ERR-0148: You are not using binary logging

Cause possible : la base de données MySQL ne prend pas en charge la commande show binary logs.

Solution : mettez à jour la version de la base de données MySQL et redémarrez la tâche.

Exemple :

id=35757****, jobId=udy119n2167****, value={"errMsg":"You are not using binary logging@error code:1381","jobId":"jer122l6i1j****","maxRetryTime":43200,"module":"reader","retryCount":6,"retryTarget":"srcDB","retryTime":40,"retrying":true}

DTS-RETRY-ERR-0149: no partition for partitioning key

Cause possible : le shard correspondant au champ n'existe pas dans la base de données de destination.

Solution : ajoutez le shard correspondant à la base de données de destination et redémarrez la tâche.

Exemple :

id=35756****, jobId=tlld17b825q****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*izmq1hx325617*****/insert into \"public\".\"order_req_pur_dt_his\" (\"bill_plu_id\",\"bill_no\",\"serial_no\",\"plu_id\",\"plu_code\",\"plu_name\",\"bar_code\",\"pack_id\",\"pack_code\",\"pack_name\",\"pack_rate\",\"unit\",\"pack_num\",\"pur_num\",\"audit_pack_num\",\"audit_num\",\"in_pur_price\",\"pur_in_total\",\"audit_in_total\",\"pur_type\",\"sal_price\",\"sal_total\",\"audit_sal_total\",\"stk_count\",\"udp1\",\"udp2\",\"remark\",\"rec_org_id\",\"pur_date\") values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)\ncause:\n\tPSQLException: ERROR: no partition for partitioning key  (seg0 172.30.XX.XX:XXX pid=2776787)","jobId":"izmq1hx325617r6","maxRetryTime":1800,"module":"writer","retryCount":125,"retryTarget":"destDB","retryTime":1374,"retrying":true}

DTS-RETRY-ERR-0150: initial dictionary failed

Cause possible : DTS ne parvient pas à se connecter à la base de données source, ce qui empêche l'initialisation de la tâche.

Solution : assurez-vous que DTS peut se connecter à la base de données source et redémarrez la tâche.

Exemple :

id=35755****, jobId=qs2p4wxqw83****, value={"errMsg":"dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52051: initial dictionary failed","jobId":"zzo12r9zo1g****","maxRetryTime":7200,"module":"reader","retryCount":30,"retryTarget":"srcDB","retryTime":1136,"retrying":true}

DTS-RETRY-ERR-0151: The Network Adapter could not establish the connection

Cause possible : un problème réseau empêche DTS de se connecter à la base de données.

Solution : vérifiez que DTS peut accéder à la base de données et redémarrez la tâche.

Exemple :

id=35755****, jobId=j16i46pbc63****, value={"errMsg":"IO Error: The Network Adapter could not establish the connection@error code:17002","jobId":"t1g12r9ka1q****","maxRetryTime":43200,"module":"reader","retryCount":47,"retryTarget":"srcDB","retryTime":1881,"retrying":true}

DTS-RETRY-ERR-0152: cannot open archived log (.*)? No such file or directory

Cause possible : le fichier journal de la base de données Oracle est introuvable.

Solution : reconfigurez la tâche.

Exemple :

id=35754****, jobId=tzv11059292****, value={"errMsg":"ORA-01284: file /sapdb/oracle/oraarch/EP2001/1_139037_1063496101.dbf cannot be opened\nORA-00308: cannot open archived log '/sapdb/oracle/oraarch/EP2001/1_139037_1063496101.dbf'\nORA-27037: unable to obtain file status\nLinux-x86_64 Error: 2: No such file or directory\nAdditional information: 7\nORA-06512: at \"SYS.DBMS_LOGMNR\", line 82\nORA-06512: at line 2\n@error code:","jobId":"q83122m2k19****","maxRetryTime":43200,"module":"reader","retryCount":11208,"retryTarget":"srcDB","retryTime":2999,"retrying":true}

DTS-RETRY-ERR-0154: odps (.*)? The specified partition does not exist

Cause possible : la table mentionnée dans le message d'erreur n'existe pas dans la base de données de destination.

Solution : créez une table dans la base de données de destination en vous basant sur le message d'erreur et les informations de la table correspondante dans la base de données source. Redémarrez ensuite la tâche.

Exemple :

jobId=n97107yf21k3bp8, code=07, errMsg=common: DTS-10009: transaction-replicate: DTS-70004: execute upload failed, may try it againcause:    RecoverableAnyAllException: transaction-replicate: DTS-70004: execute upload failed, may try it again    TransactionReplicateException: transaction-replicate: DTS-70003: 13 execute transaction has excess max transaction retry time [100] cause:odps: DTS-11014: Failed to get the upload session for cli_analytics.scene_template_codes_log caused by RequestId=2022120100085115d5d90b00f4ad31, ErrorCode=NoSuchPartition, ErrorMessage=The specified partition does not exist.RequestId=2022120100085115d5d90b00f4ad31, ErrorCode=NoSuchPartition, ErrorMessage=The specified partition does not exist.    CriticalAnyAllException: odps: DTS-11014: Failed to get the upload session for cli_analytics.scene_template_codes_log caused by RequestId=2022120100085115d5d90b00f****, ErrorCode=NoSuchPartition, ErrorMessage=The specified partition does not exist.RequestId=2022120100085115d5d90b00f4****, ErrorCode=NoSuchPartition, ErrorMessage=The specified partition does not exist.

DTS-RETRY-ERR-0155: OOM command not allowed when used memory

Cause possible : la base de données Redis de destination manque de mémoire (OOM).

Solution : augmentez la mémoire de la base de données Redis de destination et redémarrez la tâche. Pour plus d'informations sur l'augmentation de la mémoire d'une base Redis, consultez Vue d'ensemble des modifications de configuration d'instance.

Exemple :

jobId=vov11qjl30c****, code=04, errMsg=redis.clients.jedis.exceptions.JedisDataException: OOM command not allowed when used memory > 'maxmemory'.

DTS-RETRY-ERR-0156: This function has none of

Cause possible : la configuration de la base de données est incorrecte.

Solution : définissez le paramètre log_bin_trust_function_creators sur 1 et redémarrez la tâche.

Exemple :

jobId=x9a11lf4308****, code=02, errMsg=This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)(advice: set the parameter log_bin_trust_function_creators = 1.). This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)(advice: set the parameter log_bin_trust_function_creators = 1.). This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)(advice: set the parameter log_bin_trust_function_creators = 1.). This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)(advice: set the parameter log_bin_trust_function_creators = 1.).

DTS-RETRY-ERR-0157: Incorrect column name

Cause possible : le nom d'une colonne parmi les objets à synchroniser ou migrer contient des caractères spéciaux, tels que des espaces.

Solution : modifiez le nom de la colonne et redémarrez la tâche.

Exemple :

jobId=or81144k303****, code=02, errMsg=[13000, 202211302315061921681441470345301****] Incorrect column name: ` 一级ç.

DTS-RETRY-ERR-0158: Failed to get global table lock for

Cause possible : la base de données actuelle ne permet pas de gérer plusieurs tables au sein d'une même transaction.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

jobId=q8k11raf309****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table snt8888_eb.amazon_ad_keywords_report_detail failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from target table snt8888_eb.amazon_ad_keywords_report_detail failed    CriticalAnyAllException: full-mysql: DTS-61008: Fetch meta info failed    SQLException: Failed to get global table lock for 'snt8888_eb.amazon_ad_keywords_report_detail'jobId=q8k11raf309k04d, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table ajcx_wms.4px_oda failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from target table ajcx_wms.4px_oda failed    CriticalAnyAllException: full-mysql: DTS-61008: Fetch meta info failed    SQLException: Failed to get global table lock for 'ajcx_wms.4px_oda'

DTS-RETRY-ERR-0159: Column (.*)? cannot be null

Cause possible : une colonne de la base de données de destination possède la contrainte NOT NULL. L'écriture d'une valeur NULL dans cette colonne provoque donc une erreur.

Solution : supprimez la contrainte NOT NULL de la colonne concernée.

Exemple :

jobId=ccf11aiz18j****, code=04, errMsg=DTS-077105: Record Replicator error in table CARGONEST_RATE.SCYX_FLIGHT. cause by [java.sql.SQLIntegrityConstraintViolationException: Column 'USE' cannot be null] About more information in ****

DTS-RETRY-ERR-0161: First Record Timestamp not correct

Cause possible : une erreur survient lors de l'interrogation des journaux d'un point de contrôle de consommation par DTS.

Solution : vérifiez l'état des journaux. S'ils présentent une anomalie, corrigez-les et redémarrez la tâche. Si leur état est normal, reconfigurez la tâche.

Exemple :

jobId=eq2126nwc16****, code=15, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..: cause:    CriticalAnyAllException: mongo-reader: DTS-52710: log fetch failed    CriticalAnyAllException: mongo-reader: DTS-52702: First Record Timestamp not correct, startPosition is : Timestamp{value=7171932524837339137, seconds=1669845666, inc=1}, record ts is : null

DTS-RETRY-ERR-0162: cannot find index by table

Cause possible : l'index spécifié n'existe pas dans le cluster Elasticsearch.

Solution : créez manuellement un index dans le cluster Elasticsearch et redémarrez la tâche.

Exemple :

jobId=v3w11of923k****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table operation.inspection_product_index/inspection_product failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from target table operation.inspection_product_index/inspection_product failed    RuntimeException: es: DTS-11014: can not find index by table=inspection_product_index, schema=null, database=operation, mapping=inspection_product    CriticalAnyAllException: es: DTS-11014: can not find index by table=inspection_product_index, schema=null, database=operation, mapping=inspection_product

DTS-RETRY-ERR-0163: The sts token is denied

Cause possible : le jeton Security Token Service (STS) a expiré.

Solution : redémarrez la tâche.

Exemple :

jobId=nspj5ej820r****, code=07, errMsg=nosql-replicate: DTS-70004: execute statement failedcause:    NoPermissionException: [httpStatus:403, requestId:20221201101811180ec50b2153****, errorCode:NoPermission, errorMessage:The sts token is denied: STS.NUvD4Yo4qGKZ1jhhM662g****]

DTS-RETRY-ERR-0164: Too many connections

Cause possible : le nombre de connexions à la base de données a atteint sa limite supérieure.

Solution : vérifiez le nombre maximal de connexions autorisé ainsi que le nombre actuel de connexions actives. Adaptez la configuration de la base de données à vos besoins métier. Vous pouvez par exemple modifier le paramètre max_connections pour ajuster cette limite. Redémarrez ensuite la tâche.

Exemple :

jobId=yof12l14o19****8635, code=03, errMsg=jdbc-burst: DTS-61015: Create connection failed (url: 172.18.XX.XX:XXX, user: yj_gusb_root)cause:    MySQLNonTransientConnectionException: Too many connections

DTS-RETRY-ERR-0165: seek binlog for timestamp (.*)? not exits

Cause possible : les journaux binaires de la base de données MySQL source ont été supprimés.

Solution :

  • Solution 1 : restaurez les journaux binaires de la base de données MySQL source et redémarrez la tâche.

  • Solution 2 : reconfigurez la tâche.

Exemple :

jobId=sptc8p3x129****, code=15, errMsg=dts-k-src: DTS-52102: retry final failedcause:    RecoverableAnyAllException: dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52212: MySQL binlog 1660282274 is not exists.    CriticalAnyAllException: mysql-reader: DTS-52212: MySQL binlog 1660282274 is not exists.    IOException: java.sql.SQLException: seek binlog for timestamp 1660282274, not exits.    SQLException: seek binlog for timestamp 1660282274, not exits.

DTS-RETRY-ERR-0167: the Table (.*)? Information Loaded failed in Target DB

Cause possible : un schéma spécifique est absent de la base de données de destination.

Solution : assurez-vous que le schéma existe bien dans la base de données de destination et que la configuration de la tâche est correcte. Redémarrez ensuite la tâche.

Exemple :

jobId=lg612z5iq1x****, code=07, errMsg=DTS-071001: the Table anta_mw_stock_prod.stk_virtualstocklocklog Information Loaded failed in Target DB. cause by [[17001, 2022120116320501021111713303151290766] schema not exist => anta_mw_stock_prod] About more information in ****

DTS-RETRY-ERR-0168: A UNIQUE INDEX must include all columns in the table's partitioning function

Cause possible : un index unique n'inclut pas toutes les colonnes définies dans la fonction de partitionnement.

Solution : modifiez l'index unique afin qu'il inclue toutes les colonnes de la fonction de partitionnement.

Exemple :

jobId=beu12x8vd1l****, code=02, errMsg=A UNIQUE INDEX must include all columns in the table's partitioning function. 

DTS-RETRY-ERR-0169 : Can not find where column (.*)? in before image of record

Cause possible : l'index cluster n'inclut pas de colonne de clé primaire. Lors de l'exécution d'une instruction UPDATE sur une base de données SQL Server, seules les valeurs de l'image antérieure peuvent être analysées.

Solution : modifiez l'index cluster pour y inclure la colonne de clé primaire, puis redémarrez la tâche.

Exemple :

id=35938****, jobId=slr122e2h5y****, value={"errMsg":"transaction-framework: DTS-70029: Can not find where column  in before image of record LazyParseRecord {offset [465035], operationType [UPDATE], checkpoint [0@483462@0008b7dd:00019ab8:0002@1670195470000]}","jobId":"jqr12oeww55****","maxRetryTime":43200,"module":"writer","retryCount":19,"retryTarget":"destDB","retryTime":182,"retrying":true}

DTS-RETRY-ERR-0170 : Cannot insert duplicate key row in object

Cause possible : l'opération d'écriture échoue en raison d'un conflit de clé primaire provoqué par un trigger activé.

Solution : désactivez ou supprimez le trigger, puis redémarrez la tâche.

Exemple :

id=35945****, jobId=p2611skq18s****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*dc4112pf18696rtSQLServerPrepareStatementSqlEngine(23)*/insert into [zjnb].[dbo].[yw_hddz_fsdz]([dzdm], [cxh], [dzbh], [id], [ywbh], [bgid]) values(?, ?, ?, ?, ?, ?)\ncause:\n\tSQLServerException: Cannot insert duplicate key row in object 'dbo.yw_hddz_fsdz' with unique index 'yw_hddz_fsdz_index'. The duplicate key value is (22DP01833, 0).","jobId":"dc4112pf186****","maxRetryTime":1800,"module":"writer","retryCount":98,"retryTarget":"destDB","retryTime":1511,"retrying":true}

DTS-RETRY-ERR-0171 : The server experienced an unexpected error when processing the request

Cause possible : le module de collecte des données incrémentielles présente un dysfonctionnement.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

id=35956****, jobId=kk411xezf49****, value={"errMsg":"dts-k-src: DTS-52122: Error on Send.The server experienced an unexpected error when processing the request","jobId":"vag1121af47****","maxRetryTime":43200,"module":"reader","retryCount":0,"retryTarget":"dstore","retryTime":1,"retrying":true}

DTS-RETRY-ERR-0172 : The INSERT statement conflicted with the FOREIGN KEY constraint

Cause possible : l'opération d'écriture échoue car la base de données cible contient une clé étrangère activée.

Solution : désactivez ou supprimez la clé étrangère, puis redémarrez la tâche.

Exemple :

id=35955****, jobId=s0s12libr5m****, value={"errMsg":"common: DTS-11005: The INSERT statement conflicted with the FOREIGN KEY constraint \"file_qc_number_testing_id_a9e3abb7_fk_dimension_testing_testing_id\". The conflict occurred in database \"tyDbTest\", table \"dbo.dimension_testing\", column 'testing_id'.\ncause:\n\tBatchUpdateException: The INSERT statement conflicted with the FOREIGN KEY constraint \"file_qc_number_testing_id_a9e3abb7_fk_dimension_testing_testing_id\". The conflict occurred in database \"tyDbTest\", table \"dbo.dimension_testing\", column 'testing_id'.","jobId":"rn9120w5g5k****","maxRetryTime":43200,"module":"full","retryCount":49,"retryTarget":"destDB","retryTime":1751,"retrying":true}

DTS-RETRY-ERR-0173 : unsupported value convert for

Cause possible : DTS ne peut pas effectuer la conversion de type car les schémas des tables dans les bases de données source et cible sont incohérents.

Solution : alignez le schéma de la table dans la base de données cible sur celui de la base de données source, puis redémarrez la tâche.

Exemple :

id=35955****, jobId=a1s126u5s54****, value={"errMsg":"jdbc-utils: DTS-11001: jdbc-utils: DTS-11001: Adb30StringDisperse: unsupported value convert for [2023-01-01 01:00:00] convert to [create_time DATE nullable as create_time] targetDatabase:crm targetTable:orders\ncause:\n\tJdbcUtilsException: jdbc-utils: DTS-11001: Adb30StringDisperse: unsupported value convert for [2023-01-01 01:00:00] convert to [create_time DATE nullable as create_time]","jobId":"c28120pby5n****","maxRetryTime":43200,"module":"writer","retryCount":223,"retryTarget":"destDB","retryTime":2240,"retrying":true}

DTS-RETRY-ERR-0174 : ETL (.*)? not found in

Cause possible : l'instruction de traitement des données pour ETL est incorrecte.

Solution : utilisez le nom de la table et le nom de la colonne de la base de données source dans l'instruction de traitement des données, puis redémarrez la tâche. Pour plus d'informations sur la modification des configurations ETL, reportez-vous à Configurer ETL dans une tâche de migration ou de synchronisation de données.

Exemple :

jobId=x9611z8z28s****, code=07, errMsg=framework: DTS-31009: In process of processing data (recordRange: 572237829218343****) failedcause:    CriticalAnyAllException: ETL: DTS--0001: Error while executing user ETL: dt_now not found in fillmed_import.membership_customer_detail    RuntimeException: dt_now not found in fillmed_import.membership_customer_detail

DTS-RETRY-ERR-0175 : Connect db failure

Cause possible : DTS ne parvient pas à se connecter à la base de données source.

Solution : vérifiez que les informations et les configurations de la base de données source sont correctes. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source.

Exemple :

jobId=hedw7wu7z60****, code=02, errMsg=DTS-002003 Connect db failure, unknow db url jdbc:postgresql://100.100.XX.XX:XXX/testdb, please vaild url. Original error: The connection attempt failed. For more information please refer to ****

DTS-RETRY-ERR-0176 : too many connections for role

Cause possible : le nombre de connexions à la base de données a atteint sa limite supérieure.

Solution : vérifiez le nombre maximal de connexions ainsi que le nombre actuel de connexions à la base de données. Adaptez les configurations de la base de données selon vos besoins métier. Par exemple, modifiez le paramètre max_connections pour ajuster le nombre maximal de connexions, puis redémarrez la tâche.

Exemple :

jobId=yyh128cwc5h****, code=02, errMsg=init job fail FATAL: too many connections for role "inventory_prod_ad_readonly"

DTS-RETRY-ERR-0177 : numeric field overflow

Cause possible : les schémas des tables dans les bases de données source et cible sont incohérents.

Solution : alignez les schémas des tables dans la base de données cible sur ceux de la base de données source, puis redémarrez la tâche.

Exemple :

jobId=er411gx1251****, code=03, errMsg=full-greenplum: DTS-65708: copy error, recordRange= **** cause:    PSQLException: ERROR: numeric field overflow ****

DTS-RETRY-ERR-0178 : JedisDataException (.)? ERR (.)? command keys must in same slot

Cause possible : les clés transmises ne sont pas allouées dans le même hash slot.

Solution : les clés transmises doivent être allouées dans le même hash slot afin de garantir l'atomicité d'une transaction dans un script Lua. Modifiez le script Lua et redémarrez la tâche.

Exemple :

jobId=xd6121n2d5e****, code=04, errMsg=redis.clients.jedis.exceptions.JedisDataException: ERR 'EVAL' command keys must in same slot

DTS-RETRY-ERR-0179 : ADB30Engine (.*)? COMMA is not value type

Cause possible : une erreur de syntaxe SQL survient car COMMA n'est pas un type de données valide.

Solution : corrigez l'instruction SQL non valide et redémarrez la tâche.

Exemple :

jobId=chzi9boc27z****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtsc0pg9ems27y*****/replace into `inhouse`.`grain_category_template` **** error detail message:[15018, 202212051752081921681240150345324****] syntax error :syntax error => COMMA is not value type, pos:558 row: 0 and ceil:1    SQLException: [15018, 202212051752081921681240150345324****] syntax error :syntax error => COMMA is not value type, pos:558 row: 0 and ceil:1

DTS-RETRY-ERR-0180 : Schema matched failed

Cause possible : les schémas des tables dans les bases de données source et cible sont incohérents.

Solution : alignez les schémas des tables dans la base de données cible sur ceux de la base de données source, puis redémarrez la tâche.

Important

Si la fonctionnalité de fusion multi-tables est activée pour la tâche, les opérations DDL ne sont pas prises en charge.

Exemple :

jobId=iicu948h28d****, code=07, errMsg=DTS-071007: Schema matched failed. cause by [Can not find column TSSQQKSM_DM<-->tssqqksm_dm[true] in target table table_group_zrryh_mx.f_rt_zs_tdssq_qccx] About more information in ****

DTS-RETRY-ERR-0181 : invalid hexadecimal digit

Cause possible : l'instruction SQL contient une valeur hexadécimale non valide.

Solution : corrigez l'instruction SQL non valide et redémarrez la tâche.

Exemple :

jobId=i9c12l3kn1m****, code=03, errMsg=full-postgresql: DTS-65708: copy error, recordRange={id:364619936051914****,schema:saasv4.C_REPORT,indexName:,fields:[DJNAME STRING nullable unique],leftValues:[null],rightValues:[null],partition:null}, copySql=/* DTS-full-i9c12l3kn1m**** *//* DTS-full-i9c12l3kn1m**** */COPY "saasv4".c_report ("fanganid","fanganname","fangandes","djname","updated","fangan") FROM STDIN DELIMITER '|' ESCAPE '\' CSV QUOTE '"'cause:    PSQLException: ERROR: invalid hexadecimal digit: "<"  Where: COPY c_report, line 1, column fangan: "<?xml version="1.0" encoding="utf-8"?>\015\012<TfrxReport Version="4.3" DotMatrixReport="False" IniF..."

DTS-RETRY-ERR-0182 : command denied to user

Cause possible 1 : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises.

Solution 1 :

  • Méthode 1 : accordez les permissions requises au compte de base de données et redémarrez la tâche.

  • Méthode 2 : configurez la tâche en utilisant un compte de base de données disposant des permissions nécessaires.

Cause possible 2 : la base de données mentionnée dans le message d'erreur est une base de données système (comme la base sys) ou une base qui n'a pas besoin d'être synchronisée ou migrée.

Solution 2 :

  • Pour une tâche de synchronisation de données, retirez la base de données mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, reportez-vous à Retirer un objet de synchronisation.

  • Pour une tâche de migration de données, créez une nouvelle tâche. Lors de sa création, n'ajoutez pas la base de données mentionnée dans le message d'erreur aux objets à migrer.

Exemple :

jobId=sj112p70c50****, code=02, errMsg=REFERENCES command denied to user 'qianyi_dts'@'100.104.XX.XX' for table 'dbdj_lance.extauth_user'. ****

DTS-RETRY-ERR-0183 : MySQL table (.*)? binlog column count check error

Cause possible : le nombre de colonnes de la table mentionnée dans le message d'erreur diffère entre les journaux binaires et DTS.

Solution : vérifiez si le message d'erreur contient local count is 0.

  • Oui : assurez-vous que le compte de base de données utilisé par la tâche DTS dispose de la permission SELECT sur la table, puis redémarrez la tâche.

  • Non :

    • Pour une tâche de synchronisation de données, retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, reportez-vous à Retirer un objet de synchronisation.

    • Pour une tâche de migration de données, créez une nouvelle tâche. Lors de sa création, n'ajoutez pas la table mentionnée dans le message d'erreur aux objets à migrer.

Exemple :

jobId=oh9111i723x****, code=15, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..: mysql-reader: DTS-52210: fetch log failedcause:    IOException: mysql-reader: DTS-52234: MySQL table dxl_shops.sys_module binlog column count check error, local count is 0, but binlog count is 15, at offset 162@25064****.    CriticalAnyAllException: mysql-reader: DTS-52234: MySQL table dxl_shops.sys_module binlog column count check error, local count is 0, but binlog count is 15, at offset 162@25064****.

DTS-RETRY-ERR-0184 : CLIENT_PLUGIN_AUTH is required

Cause possible : DTS ne parvient pas à se connecter à la base de données.

Solution : vérifiez la version de la base de données MySQL. Pour plus d'informations sur les versions de bases de données MySQL prises en charge, reportez-vous à Scénarios de synchronisation de données, Scénarios de migration et Présentation du suivi des modifications.

Exemple :

id=36512****, jobId=r5e120d1u5u****, value={"errMsg":"CLIENT_PLUGIN_AUTH is required@error code:0","jobId":"xu812lh7i5p****","maxRetryTime":43200,"module":"reader","retryCount":745,"retryTarget":"srcDB","retryTime":9911,"retrying":true}

DTS-RETRY-ERR-0185 : ADB30Engine (.*)? For input string

Cause possible : le schéma de la table dans la base de données cible mentionnée dans le message d'erreur est incompatible avec les valeurs de la base de données source.

Solution : modifiez le type de la colonne dans la base de données cible pour qu'il corresponde à celui de la base de données source, puis redémarrez la tâche.

Exemple :

jobId=ugui7hl1h83****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /*dts_id=dtserev7v26j8i*****/replace into `ylh_order`.`recycle_standing_book` **** cause:    SQLException: ADB30Engine(15): meet error, insertSQL:/*dts_id=dtserev7v26j8i*****/replace into `ylh_order`.`recycle_standing_book` **** error detail message:[15018, 202212160839511921682250660315152****] (Column => RECYCLE_STANDING_BOOK.DB_ID), For input string: "14033071031736****"    SQLException: [15018, 202212160839511921682250660315152****] (Column => RECYCLE_STANDING_BOOK.DB_ID), For input string: "14033071031736****"

DTS-RETRY-ERR-0186 : not authorized on (.*)? to execute command

Cause possible : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises.

  • Méthode 1 : accordez les permissions requises au compte de base de données et redémarrez la tâche.

  • Méthode 2 : configurez la tâche en utilisant un compte de base de données disposant des permissions nécessaires.

Exemple :

jobId=j99123a7161****, code=03, errMsg=common: DTS-11005: com.mongodb.MongoCommandException: Command failed with error 13: 'not authorized on zcscenter_log to execute command { insert: "UserBehaviorLog", ordered: true, bypassDocumentValidation: true, $db: "zcscenter_log" }' on server 172.16.XX.XX:XXX. The full response is { "operationTime" : { "$timestamp" : { "t" : 1671158607, "i" : 1 } }, "ok" : 0.0, "errmsg" : "not authorized on zcscenter_log to execute command { insert: \"UserBehaviorLog\", ordered: true, bypassDocumentValidation: true, $db: \"zcscenter_log\" }", "code" : 13, "codeName" : "Unauthorized", "$clusterTime" : { "clusterTime" : { "$timestamp" : { "t" : 1671158607, "i" : 1 } }, "signature" : { "hash" : { "$binary" : "FMyelyFIm+zD****/XOiGFd****=", "$type" : "00" }, "keyId" : { "$numberLong" : "717355978057161****" } } } } **** 

DTS-RETRY-ERR-0187 : The TCP/IP connection to the host (.*)? has failed

Cause possible : la connexion à une base de données a échoué.

Solution : résolvez l'erreur en vous basant sur le message d'erreur. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=vtsv5pgl22m****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from source table [EMWSHANGHAI].[dbo].[OILM] failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from source table [EMWSHANGHAI].[dbo].[OILM] failed    RuntimeException: jdbc-burst: DTS-61015: Create connection failed (url: 172.16.XX.XX:XXX, user: sa)cause:    SQLServerException: The TCP/IP connection to the host 172.16.XX.XX, port XXX has failed. Error: "The driver received an unexpected pre-login response. Verify the connection properties and check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. This driver can be used only with SQL Server 2005 or later.". ****

DTS-RETRY-ERR-0188 : null value in column (.*)? violates not-null constraint

Cause possible : une colonne soumise à la contrainte NOT NULL dans la base de données cible a été filtrée, ou la valeur de la colonne correspondante dans la base de données source est NULL.

Solution : assurez-vous que l'objet à synchroniser ou à migrer respecte la contrainte dans la base de données cible, puis redémarrez la tâche.

Exemple :

jobId=hn612sbb16q****, code=03, errMsg=full-greenplum: DTS-65708: copy error, recordRange={id:266622423602823****,schema:ods_ecology1.workflow_yozotopdfconfig,indexName:,fields:[],leftValues:[null],rightValues:[null],partition:null}, copySql=/* DTS-full-hn612sbb16q**** *//* DTS-full-hn612sbb16q**** */COPY "ods_ecology1"."workflow_yozotopdfconfig" ("useWps","useyozo") FROM STDIN DELIMITER '|' ESCAPE '\' CSV QUOTE '"' DO on conflict DO update cause:    PSQLException: ERROR: null value in column "useWps" violates not-null constraint  Detail: Failing row contains (0, null).  Where: COPY workflow_yozotopdfconfig, line 1

DTS-RETRY-ERR-0189 : ON CONFLICT DO UPDATE command cannot affect row a second time

Cause possible : les index uniques des bases de données source et cible sont incohérents.

Solution : modifiez les index selon vos besoins métier. Assurez-vous que les index uniques des bases de données source et cible sont cohérents, puis redémarrez la tâche.

Exemple :

jobId=hn612sbb16q****, code=03, errMsg=full-greenplum: DTS-65708: copy error, recordRange={id:664004810422773****,schema:ods_ecology1.workflow_requestlog,indexName:,fields:[LOGID INTEGER not nullable],leftValues:[null],rightValues:[null],partition:null}, copySql=/* DTS-full-hn612sbb16q**** *//* DTS-full-hn612sbb16q**** */COPY "ods_ecology1"."workflow_requestlog" ("OPERATORDEPT","OPERATEDATE","speechattachmente9","isSubmitDirect","uuid","NODEID","SIGNDOCIDS","REMARKLOCATION","clientip","SHOWORDER","ANNEXDOCIDS","SIGNWORKFLOWIDS","AGENTTYPE","REMARK","RECEIVEDPERSONS_1","seclevel","SPEECHATTACHMENT","LOGTYPE","RECEIVEDPERSONS","REMARK1","OPERATETIME","operatorJob","DESTNODEID","OPERATORTYPE","LOGID","operatorSub","remarkquote","fulltextannotation","isRobotNode","REQUESTLOGID","RECEIVEDPERSONIDS","WORKFLOWID","OPERATOR","ISMOBILE","AGENTORBYAGENTID","HandWrittenSign","REQUESTID") FROM STDIN DELIMITER '|' ESCAPE '\' CSV QUOTE '"' DO on conflict DO update cause:    PSQLException: ERROR: ON CONFLICT DO UPDATE command cannot affect row a second time  Hint: Ensure that no rows proposed for insertion within the same command have duplicate constrained values.  Where: COPY workflow_requestlog, line 6

DTS-RETRY-ERR-0190 : There is no column (.*)? in table

Cause possible : une colonne est absente dans la table cible.

Solution : ajoutez la colonne manquante à la table spécifiée de la base de données cible en vous basant sur le schéma de la table source et sur le message d'erreur, puis redémarrez la tâche.

Exemple :

jobId=t0q12vjgl98****, code=07, errMsg=DTS-077100: Record Replicator error in table uat_r3_oms_oc_ip.oc_b_tob_order. cause by [com.alibaba.amp.increment.exception.AmpException: There is no column `echo_status` in table `r3_rc_datasync`.`oc_b_tob_order`] About more information in ****

DTS-RETRY-ERR-0191 : Host (.*)? is blocked because of many connection

Cause possible : le nombre de connexions à la base de données a atteint sa limite supérieure.

Solution : vérifiez le nombre maximal de connexions ainsi que le nombre actuel de connexions à la base de données. Adaptez les configurations de la base de données selon vos besoins métier. Par exemple, modifiez le paramètre max_connections pour ajuster le nombre maximal de connexions, puis redémarrez la tâche.

Exemple :

jobId=kv512kmj15n****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from source table shineserver.tbl_invdata_d_2023_01_07 failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from source table shineserver.tbl_invdata_d_2023_01_07 failed    CriticalAnyAllException: full-mysql: DTS-00000: Fetch meta info failed    DBCommonException: jdbc-burst: DTS-61015: Create connection failed (url: 172.27.XX.XX:XXX, user: root)    SQLException: null,  message from server: "Host '100.104.XX.XX' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"

DTS-RETRY-ERR-0192 : Get all databases in (.*)? DB failed

Cause possible : une erreur s'est produite lors de la requête par DTS des informations relatives à la base de données source.

Solution : assurez-vous que la base de données source fonctionne normalement et qu'elle est accessible, puis redémarrez la tâche.

Exemple :

jobId=mmbg34h530g****, code=04, errMsg=DTS-070611: Get all databases in v5x0617 DB failed. Source

DTS-RETRY-ERR-0193 : schema (.*)? does not exist

Cause possible : le schéma n'existe pas dans la base de données source ou cible.

Solution : assurez-vous que le schéma mentionné dans le message d'erreur existe bien dans les bases de données source et cible, puis redémarrez la tâche.

Exemple :

jobId=tycy1xi5d4w****, code=03, errMsg=full-greenplum: DTS-65708: copy error, recordRange={id:65629572036558****,schema:dtstest.master_ld_pg_test,indexName:,fields:[id BIGINT not nullable primary unique],leftValues:[null],rightValues:[null],partition:null}, copySql=/* DTS-full-tycy1xi5d41**** *//* DTS-full-tycy1xi5d4w**** */COPY "dtstest"."master_ld_pg_test" ("name","id","name2") FROM STDIN DELIMITER '|' ESCAPE '\' CSV QUOTE '"' DO on conflict DO update cause:    PSQLException: ERROR: schema "" does not exist  (seg0 172.25.XX.XX:XXX pid=556)

DTS-RETRY-ERR-0194 : WRONGPASS invalid username-password pair or user is disabled

Cause possible : le compte ou le mot de passe de la base de données Redis est incorrect.

Solution : configurez la tâche en utilisant le compte et le mot de passe corrects.

Exemple :

jobId=yji127k830v****, code=04, errMsg=redis: DTS-10015: redis: DTS-10010: WRONGPASS invalid username-password pair or user is disabled.cause:    RedisClientInitiationException: redis: DTS-10010: WRONGPASS invalid username-password pair or user is disabled.

DTS-RETRY-ERR-0195 : Create Table Exceed limit

Cause possible : le nombre de topics dans le projet DataHub cible a atteint sa limite supérieure.

Solution : supprimez les topics inutilisés et redémarrez la tâche. Pour plus d'informations sur la suppression d'un topic, reportez-vous à Créer et configurer des topics.

Exemple :

jobId=gta119cz22v****, code=02, errMsg=DTS-1029999 The ddlmove task gta119cz22vg6d4 was finished,but 598 objects failed,error message:[DTS]Create Table Exceed limit, max topics for one project is 500, current is 500 in dts (Status Code: 400; Error Code: ResourceLimit; Request ID: 20230111104946510ec50bfb87****),[DTS]Create Table Exceed limit, max topics for one project is 500, current is 500 in dts (Status Code: 400; Error Code: ResourceLimit; Request ID: 202301111049445d0ec50bfb83****),[DTS]Create Table Exceed limit, max topics for one project is 500, current is 500 in dts (Status Code: 400; Error Code: ResourceLimit; Request 

DTS-RETRY-ERR-0196 : user (.*)? does not exist

Cause possible 1 : la table ou la vue n'existe pas.

Solution : ajoutez la table ou la vue correspondante en vous basant sur le message d'erreur, puis redémarrez la tâche.

Cause possible 2 : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises.

Solution : accordez les permissions requises au compte de base de données et redémarrez la tâche.

Exemple :

jobId=ssbc18z7113****, code=02, errMsg=ORA-01918: user 'BOND_EXT_ETL' does not exist. ORA-00942: table or view does not exist

DTS-RETRY-ERR-0197 : table or view does not exist

Cause possible 1 : la table ou la vue n'existe pas.

Solution : ajoutez la table ou la vue correspondante en vous basant sur le message d'erreur, puis redémarrez la tâche.

Cause possible 2 : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises.

Solution : accordez les permissions requises au compte de base de données et redémarrez la tâche.

Exemple :

jobId=ssbc18z7113****, code=02, errMsg=ORA-01918: user 'BOND_EXT_ETL' does not exist. ORA-00942: table or view does not exist

DTS-RETRY-ERR-0198 : FUNCTION (.*)? does not exist

Cause possible : la vue ou la fonction à migrer dépend d'autres objets. Par conséquent, DTS ne parvient pas à créer cette vue ou cette fonction.

Solution : modifiez la vue ou la fonction en supprimant les dépendances, puis redémarrez le module de migration de schéma. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=n37x1mlh115****, code=02, errMsg=FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetMemLoginName does not exist. FUNCTION riskcenter.fn_GetDistName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetMemLoginName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetDistName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist. FUNCTION riskcenter.fn_GetCustName does not exist.

DTS-RETRY-ERR-0199 : fetch column info from source table (.*)? failed

Cause possible : la connexion à la base de données source est anormale. Par conséquent, DTS ne parvient pas à récupérer les informations de colonne correspondantes depuis la base source.

Solution : redémarrez la tâche. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=vtsv5pgl22m7****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from source table [EMWSHANGHAI].[dbo].[OILM] failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from source table [EMWSHANGHAI].[dbo].[OILM] failed    RuntimeException: jdbc-burst: DTS-61015: Create connection failed (url: 172.16.XX.XX:XXX, user: sa)cause:    SQLServerException: Connection reset ClientConnectionId:b2bb965c-e92a-4311-b499-cff270ff****    SocketException: Connection reset    DBCommonException: jdbc-burst: DTS-61015: Create connection failed (url: 172.16.XX.XX:XXX, user: sa)    SQLServerException: Connection reset ClientConnectionId:b2bb965c-e92a-4311-b499-cff270ff****    SocketException: Connection reset

DTS-RETRY-ERR-0200 : value too large for column

Cause possible : la longueur des données à écrire dépasse la limite maximale définie pour le champ dans le schéma.

Solution : augmentez la longueur maximale du champ selon vos besoins métier, puis redémarrez la tâche.

Exemple :

jobId=ckwu1nn2100****, code=07, errMsg=common: DTS-100047: retry 4151 times, 43201510 seconds, which exceed the supposed 43200 secondscause:    TransactionReplicateException: transaction-replicate: DTS-70004: execute statement failed: /*ckwu1nn210048jjOraclePrepareStatementSqlEngine(14)*/insert into ****     SQLException: ORA-12899: value too large for column "XFS_OPEN_PLATFORM_EX"."T_PRODUCT_CHANNEL"."CHANNEL_NAME" (actual: 38, maximum: 32)

DTS-RETRY-ERR-0201 : Can not find column (.*)? in target table

Cause possible : une colonne est absente dans la table cible.

Solution : ajoutez la colonne manquante à la table spécifiée de la base de données cible en vous basant sur le schéma de la table source et sur le message d'erreur, puis redémarrez la tâche.

Exemple :

jobId=zhml16az11q****, code=07, errMsg=DTS-071007: Schema matched failed. cause by [Can not find column bpmSn<-->bpmSn[true] in target table anta_mw_order_prod.bas_warehouse] About more information in ****

DTS-RETRY-ERR-0203 : Table (.*)? does not exist

Cause possible : certaines tables n'existent pas dans la base de données source ou cible.

Solution : choisissez une solution adaptée selon le type de tâche et le module mentionnés dans le message d'erreur.

  • Tâche de synchronisation de données :

    • Si l'erreur concerne le module d'écriture incrémentielle, vérifiez si les tables mentionnées dans le message d'erreur existent dans la base de données cible et si les schémas des tables source et cible sont cohérents. Si ces tables n'existent pas dans la base de données cible, procédez comme suit :

      1. Retirez les tables mentionnées dans le message d'erreur de la liste des objets à synchroniser à l'aide de la fonctionnalité de modification des objets à synchroniser.

      2. Effacez les données des tables mentionnées dans le message d'erreur dans la base de données cible.

      3. Ajoutez les tables mentionnées dans le message d'erreur à la liste des objets à synchroniser à l'aide de la fonctionnalité de modification des objets à synchroniser.

      4. Reprenez la tâche.

    • Si l'erreur concerne le module de migration complète des données, vérifiez si les tables mentionnées dans le message d'erreur existent dans les bases de données source et cible, et si leurs schémas sont cohérents. Si ces tables n'existent pas dans la base de données cible, reconfigurez la tâche.

  • Tâche de migration de données : assurez-vous que les schémas des tables source et cible sont cohérents, puis reconfigurez la tâche.

Exemple :

jobId=x3dl1cbm11r****, code=03, errMsg=common: DTS-11005: framework: DTS-31008: fetch column info from target table tms_service2.tp_3286333_ogl_logistics_trajectory_2 failedcause:    AnyCoreException: framework: DTS-31008: fetch column info from target table tms_service2.tp_3286333_ogl_logistics_trajectory_2 failed    RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: [17003, 202301110800570100020000460315122****] Table adb.tms_service2.tp_3286333_ogl_logistics_trajectory_2 does not exist

DTS-RETRY-ERR-0204 : Disk full (.*)? waiting for someone to free some space

Cause possible : l'espace disque de la base de données de destination est saturé.

Solution : étendez le disque de la base de données de destination, puis redémarrez la tâche.

Exemple :

jobId=h03q1pas10o****, code=03, errMsg=framework: DTS-30011: currentRunningSQL: /* DTS-full-h03q1pas10o**** */insert ignore into **** cause:    BatchUpdateException: Disk full (tb_ms_video_collect_day_20221221); waiting for someone to free some space... (errno: 189 "Disk full")    SQLException: Disk full (tb_ms_video_collect_day_20221221); waiting for someone to free some space... (errno: 189 "Disk full")    Disk full **** waiting for someone to free some space

DTS-RETRY-ERR-0209 : relation (.*)? does not exist

Cause possible : la relation n'existe pas dans la base de données de destination.

Solution : créez la relation dans la base de données de destination en vous basant sur le message d'erreur, puis redémarrez la tâche.

Exemple :

id=37908****, jobId=eo3m1z6t11y****, value={"errMsg":"java.lang.RuntimeException: Table '`wk_crm`.`wk_examine_advanced_config`' with columns [`create_user_id`, `node_handle_type`, `modify_permission_type`, `create_time`, `company_id`, `limit_time_status`, `batch_id`, `advanced_config_id`, `examine_id`, `update_time`, `node_handle_user`, `update_user_id`, `reject_handle_type`, `repeat_handle_type`] and batch exception is {[13000, 202301110018191921681780610345332****] (Column => WK_EXAMINE_ADVANCED_CONFIG.NODE_HANDLE_USER), For input string: ****

DTS-RETRY-ERR-0212 : batch exception (.*)? For input string

Cause possible : le type des données à écrire dans la base de destination diffère du type défini dans le schéma.

Solution : modifiez le schéma de la table dans la base de données de destination pour qu'il corresponde à celui de la base source, puis redémarrez la tâche.

Exemple :

id=37908****, jobId=eo3m1z6t11y****, value={"errMsg":"java.lang.RuntimeException: Table '`wk_crm`.`wk_examine_advanced_config`' with columns [`create_user_id`, `node_handle_type`, `modify_permission_type`, `create_time`, `company_id`, `limit_time_status`, `batch_id`, `advanced_config_id`, `examine_id`, `update_time`, `node_handle_user`, `update_user_id`, `reject_handle_type`, `repeat_handle_type`] and batch exception is {[13000, 202301110018191921681780610345332****] (Column => WK_EXAMINE_ADVANCED_CONFIG.NODE_HANDLE_USER), For input string: \"161281865257152****,161281865208498****\"}","jobId":"t2pa1xp1112****","maxRetryTime":43200,"module":"full","retryCount":9,"retryTarget":"destDB","retryTime":80,"retrying":true}

DTS-RETRY-ERR-0213 : mapper (.*)? of different type

Cause possible : le type des données à écrire dans la base de destination diffère du type défini dans le schéma.

Solution : modifiez le schéma de la table dans la base de données de destination pour qu'il corresponde à celui de la base source, puis redémarrez la tâche.

Exemple :

PUT **** {  "error" : {    "root_cause" : [      {        "type" : "illegal_argument_exception",        "reason" : "mapper [user_disease_point_id] of different type, current_type [text], merged_type [long]"      }    ],    "type" : "illegal_argument_exception",    "reason" : "mapper [user_disease_point_id] of different type, current_type [text], merged_type [long]"  },  "status" : 400}

DTS-RETRY-ERR-0214 : Stream closed

Cause possible : la connexion réseau a expiré.

Solution : vérifiez que la base de données source fonctionne normalement et qu'elle est accessible, puis redémarrez la tâche.

Exemple :

**** framework: DTS-31009: In process of processing data (recordRange: 827160178650303****) failedcause:RedisServerException: redis: DTS-10015: redis: DTS-10009: Stream closedRedisCannotRetryException: redis: DTS-10009: Stream closedIOException: Stream closed ****

DTS-RETRY-ERR-0215 : wait millis (.)? active (.)? maxActive

Cause possible : DTS ne parvient pas à se connecter à la base de données.

Solution : redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

**** wait millis 300000, active 2, maxActive 100, creating 1, createElapseMillis 26952, createErrorCount 66 ****

DTS-RETRY-ERR-0216 : OutOfMemoryError

Cause possible : la longueur d'un champ de la tâche a atteint sa limite supérieure, ce qui provoque une erreur OOM.

Solution : contactez le support technique d'Alibaba Cloud.

Exemple :

java.lang.OutOfMemoryError: Requested array size exceeds VM limit ****

DTS-RETRY-ERR-0222 : execute statement failed

Cause possible : une erreur survient lors de l'écriture des données dans la base de destination. Ce problème apparaît généralement lorsque des données invalides de type TIME ou DATE sont écrites dans le cluster AnalyticDB for MySQL de destination.

Solution : retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis ajoutez-la de nouveau. Pour plus d'informations, consultez la rubrique Résoudre les erreurs de table dans une instance de synchronisation de données. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

transaction-replicate: DTS-70004: execute statement failed: /* DTS-wri-MysqlEngine(3) */replace into `db_mch_recreation`.`tbl_order` (`time_pay`,`rec_product_detail`,`err_code`,`type`,`device_name`,`total_fee`,`out_sid`,`extra`,`ship_desc`,`sn`,`seller_id`,`time_create`,`device_id`,`err_desc

DTS-RETRY-ERR-0225 : DTS-11005: null

Cause possible : une erreur occasionnelle s'est produite.

Solution : redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

framework: DTS-31009: In process of processing data (recordRange: ) failed cause: CriticalAnyAllException: common: DTS-11005: null NullPointerException: null [URL]: ****

DTS-RETRY-ERR-0226 : User (.*)? does not have permission to run DBCC TRACEON

Cause possible : le compte de base de données utilisé pour accéder à la base source ne dispose pas des permissions requises.

Solution : accordez les permissions sysadmin au compte de base de données, puis redémarrez la tâche. Pour plus d'informations, consultez CREATE USER (Transact-SQL).

Exemple :

jobId=juin1gx7166****, code=15, errMsg=dts-k-src: DTS-52102: retry final failedcause:    RecoverableAnyAllException: dts-k-src: DTS-52110: SQLServerRecordExtractor Init Error: sqlserver-reader: DTS-00032: Execute sql DBCC TRACEON(2537,-1) failed, case by User 'dtstest' does not have permission to run DBCC TRACEON.    CriticalAnyAllException: sqlserver-reader: DTS-00032: Execute sql DBCC TRACEON(2537,-1) failed, case by User 'dtstest' does not have permission to run DBCC TRACEON.    SQLServerException: User 'dtstest' does not have permission to run DBCC TRACEON.

DTS-RETRY-ERR-0227 : Socket closed

Cause possible : DTS ne parvient pas à se connecter à l'instance Redis.

Solution : assurez-vous que les réseaux des bases de données source et de destination fonctionnent normalement, puis redémarrez la tâche.

Exemple :

jobId=z6xb1321161****, code=04, errMsg=framework: DTS-31009: In process of processing data (recordRange: 444887303382577****) failedcause:    FatalAnyAllException: common: DTS-100047: retry 0 times, 15352498 seconds, which exceed the supposed 600 seconds    RedisServerException: redis: DTS-10015: redis: DTS-10009: Socket closed    RedisCannotRetryException: redis: DTS-10009: Socket closed    SocketException: Socket closed

DTS-RETRY-ERR-0228 : Illegal mix of collations

Cause possible : les jeux de caractères ou les interclassements des bases de données source et de destination sont incompatibles.

Solution : harmonisez les jeux de caractères ou les interclassements entre les bases source et de destination, puis redémarrez la tâche. Par exemple, l'interclassement par défaut est utf8mb4_0900_ai_ci pour MySQL 8.0 et versions ultérieures. Exécutez l'instruction ALTER TABLE XXX default character SET utf8mb4 collate=utf8mb4_general_ci; pour changer l'interclassement en utf8mb4_general_ci.

Remarque

Remplacez XXX par le nom de la table concernée.

Exemple :

jobId=yr6a1h2d161****, code=02, errMsg=Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) for operation 'find_in_set'. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Unknown column 'hjmall_jushuitan_brand_express_template.express_company' in 'on clause'. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. Unknown column 'b.excel_name' in 'field list'(advice: the base table may have been modified, you can choose to skip the migration of this View.).

DTS-RETRY-ERR-0232 : cannot execute INSERT in a read-only transaction

Cause possible : la base de données de destination est en lecture seule.

Solution : vérifiez si la base de données de destination peut être rendue accessible en écriture.

  • Si oui, modifiez la base de données et redémarrez la tâche.

  • Si non, reconfigurez la tâche en utilisant une base de données accessible en lecture et en écriture.

Exemple :

jobId=f6au9q6b13c****, code=07, errMsg=transaction-replicate: DTS-70004: execute statement failed: /*f6au9q6b13cg9*****/insert into oms_ord.om_order_line (order_line_id,order_line_nbr,sale_channel,channel_order_nbr,order_time,order_id,cust_id,cust_name,order_type,pre_sale_date,delivery_method,pickup_point_code,contact_man,contact_num,contact_email,delivery_addr_id,delivery_detail_addr,expect_date,expect_time,cust_notes,if_remaining_paid,state,state_reason,state_date,state_desc,created_date,update_date,audit_notes,order_fulfill_id,order_fulfill_nbr,ship_date,order_fulfill_state,prod_desc,logistics_code,warehouse_id,warehouse_name,v_warehouse_id,v_warehouse_name,is_transfer,order_id_nbr,deliver_order_nbr,devy_longitude,devy_latitude,vmi_vendor_id,redo_count,currency_id,delivery_addr_l1,delivery_addr_l2,delivery_addr_l3,delivery_addr_l4,delivery_addr_zipcode,pay_state,delivery_state,delivery_chl_addr,if_oms_fulfill,payment_method,payment_time,region_code,ext_info,channel_type_id,ext_erp_order_nbr,ext_erp_delv_nbr,schedule_result_id,order_schedule_id,inv_chl_group_id,package_id) values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)cause:    PSQLException: ERROR: cannot execute INSERT in a read-only transaction

DTS-RETRY-ERR-0234 : DTS-70007: resolve failed

Cause possible : le topic n'existe pas dans le cluster Kafka de destination.

Solution : créez un topic dans le cluster Kafka, puis redémarrez la tâche. Pour plus d'informations sur la création d'un topic dans une instance ApsaraMQ for Kafka, consultez la section Étape 1 : Créer un topic de la rubrique Étape 3 : Créer des ressources.

Exemple :

jobId=a4ls1hua154****, code=07, errMsg=framework: DTS-31009: In process of processing data (recordRange: 609533659628489****) failedcause:    FatalAnyAllException: common: DTS-100047: retry 0 times, 300800 seconds, which exceed the supposed 43200 seconds    CriticalAnyAllException: nosql-replicate: DTS-70007: resolve failed

DTS-RETRY-ERR-0235 : permission denied to create event trigger

Cause possible : le compte de base de données utilisé pour accéder à la base de destination ne dispose pas des permissions nécessaires.

Solution : reconfigurez la tâche en utilisant un superutilisateur pour accéder à la base de données de destination.

Exemple :

jobId=ipix1o7u13u****, code=30, errMsg=ERROR: permission denied to create event trigger "dts_intercept_ddl"  Hint: Must be superuser to create an event trigger.permission denied to create event trigger

DTS-RETRY-ERR-0236 : Failed connecting to

Cause possible : DTS ne parvient pas à se connecter à l'instance Redis.

Solution : vérifiez que l'instance Redis est accessible, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=v41u74p8z4q****, code=07, errMsg=framework: DTS-31007: fetch and merge schemas failedcause:    RedisServerException: redis: DTS-10015: redis: DTS-10010: Failed connecting to 100.115.XX.XX:XXX    RedisClientInitiationException: redis: DTS-10010: Failed connecting to 100.115.XX.XX:XXX

DTS-RETRY-ERR-0238 : fetch log failed

Cause possible : une erreur survient lorsque DTS interroge les journaux.

Solution : contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=q5lk1uak16g****, code=15, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..: mysql-reader: DTS-52210: fetch log failedcause:    IOException: java.lang.ArrayIndexOutOfBoundsException: 6    ArrayIndexOutOfBoundsException: 6cause:    CriticalAnyAllException: mysql-reader: DTS-52210: fetch log failed    IOException: java.lang.ArrayIndexOutOfBoundsException: 6    ArrayIndexOutOfBoundsException: 6    fetch log failed

DTS-RETRY-ERR-0239 : Prematurely reached end of stream

Cause possible : une erreur d'expiration de délai survient lorsque DTS lit les données de la base source.

Solution : supprimez la limite d'expiration de délai sur la base de données, à condition que cela n'affecte pas votre activité. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=mc9g16xe16d****, code=03, errMsg=framework: DTS-31009: In process of processing data (recordRange: 859496203590356****) failedcause:    FatalAnyAllException: common: DTS-100047: retry 0 times, 66950 seconds, which exceed the supposed 43200 seconds    RuntimeException: com.mongodb.MongoSocketReadException: Prematurely reached end of stream    MongoSocketReadException: Prematurely reached end of stream    Prematurely reached end of stream

DTS-RETRY-ERR-0240 : Can not read response from server

Cause possible : DTS ne parvient pas à récupérer les données renvoyées par le serveur.

Solution : vérifiez que la connexion réseau fonctionne normalement, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=v72o16zi165****, code=03, errMsg=framework: DTS-31009: In process of processing data (recordRange: 71735997624221****) failedcause:    FatalAnyAllException: common: DTS-100047: retry 0 times, 2181031 seconds, which exceed the supposed 600 seconds    CriticalAnyAllException: framework: DTS-31009: read source data error    SQLException: Error retrieving record: Unexpected Exception: java.io.EOFException message given: Can not read response from server. Expected to read 11,302 bytes, read 6,941 bytes before connection was unexpectedly lost. ****

DTS-RETRY-ERR-0241 : Unknown character set

Cause possible : la base de données de destination ne prend pas en charge le jeu de caractères mentionné dans le message d'erreur.

Solution : pour garantir la compatibilité, nous recommandons que les versions des bases de données source et de destination soient identiques, ou que la version de la base source soit antérieure à celle de la base de destination.

Exemple :

jobId=n01d11o816q****, code=02, errMsg=Unknown character set: 'latin1'. Unknown character set

DTS-RETRY-ERR-0242 : Could not find first log file name in binary log index file

Cause possible : les informations d'index des journaux binaires n'ont pas été mises à jour et ces journaux ont été supprimés.

Solution : restaurez les journaux binaires ou reconfigurez la tâche DTS.

Exemple :

jobId=ud3m8u32154****, code=15, errMsg=dts-k-src: DTS-52102: retry final failedcause:    RecoverableAnyAllException: dts-k-src: DTS-52110: MySQLRecordExtractor Init Error: mysql-reader: DTS-52212: MySQL binlog 167384**** is not exists.    CriticalAnyAllException: mysql-reader: DTS-52212: MySQL binlog 167384**** is not exists.    IOException: java.sql.SQLException: Could not find first log file name in binary log index file    SQLException: Could not find first log file name in binary log index file

DTS-RETRY-ERR-0243 : Record Convert error in table

Cause possible : le type des données à écrire dans la base de destination diffère du type défini dans le schéma.

Solution : modifiez le schéma de la table dans la base de données de destination pour qu'il corresponde à celui de la base source, puis redémarrez la tâche.

Exemple :

jobId=el2m7hna195****, code=07, errMsg=DTS-077400: Record Convert error in table midea_database.midea_mmds_share_link_visit_log msg=[{column:object_id, value:6ba977b23944f68bf7124946aa3f****} To BIGINT]. cause by [{column:object_id, value:6ba977b23944f68bf7124946aa3f****} To BIGINT]    Record Convert error in table

DTS-RETRY-ERR-0245 : Authentication failed

Cause possible : DTS ne parvient pas à accéder à la base de données d'authentification de l'instance MongoDB.

Solution : vérifiez que le compte et le mot de passe de la base de données utilisés par la tâche permettent bien de s'y connecter.

Exemple :

jobId=qbrn8mcj21p****, code=15, errMsg=dts-k-src: DTS-52102: retry final failedcause:    MongoSecurityException: Exception authenticating MongoCredential{mechanism=SCRAM-SHA-256, userName='dba_rw', source='admin', password=<hidden>, mechanismProperties={}}    MongoCommandException: Command failed with error 18 (AuthenticationFailed): 'Authentication failed.' on server 172.19.XX.XX:XXX. The full response is {"ok": 0.0, "errmsg": "Authentication failed.", "code": 18, "codeName": "AuthenticationFailed", "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1673836841, "i": 41}}, "signature": {"hash": {"$binary": "gwps88TJItDHfP+xz0VQlY+****=", "$type": "00"}, "keyId": {"$numberLong": "715470944398737****"}}}, "operationTime": {"$timestamp": {"t": 1673836841, "i": 40}}}    Authentication failed

DTS-RETRY-ERR-0246 : run check job timeout

Cause possible : le démarrage d'une tâche de vérification des données a expiré.

Solution : contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=q6rh1hi510o****, code=05, errMsg=run check job timeout

DTS-RETRY-ERR-0247 : cannot execute DELETE in a read-only transaction

Cause possible : une opération DELETE a été exécutée sur un nœud en lecture seule.

Solution : redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=amjm8zwvc4h****, code=07, errMsg=DTS-077100: Record Replicator error in table dataintegration.dws_kmzk_stock_info. cause by [org.postgresql.util.PSQLException: ERROR: cannot execute DELETE in a read-only transaction] About more information in ****  cannot execute DELETE in a read-only transaction 

DTS-RETRY-ERR-0248 : Socket read timed out

Cause possible : une erreur d'expiration de délai survient lorsque DTS lit les données de la base source.

Solution : assurez-vous que DTS peut se connecter à la base de données source, puis redémarrez la tâche.

Exemple :

id=38240****, jobId=vd6e8ylpa42****, value={"errMsg":"IO Error: Socket read timed out@error code:17002","jobId":"qs8x8nf815l****","maxRetryTime":7200,"module":"reader","retryCount":3,"retryTarget":"srcDB","retryTime":66,"retrying":true}

DTS-RETRY-ERR-0249 : Version has changed

Cause possible : l'objet dont dépend l'instruction SQL exécutée dans la base de destination n'existe pas. Il peut s'agir d'une fonction ou de la fonction dont dépend un déclencheur.

Solution : assurez-vous que la base de données de destination contient bien les objets requis par l'instruction SQL.

Exemple : le message d'erreur suivant indique que la fonction update_version n'existe pas dans la base de données de destination.

jobId=kp0e16ge168****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*we2s1q2p16xc*****/update public.reconciliation set id = ?,create_time = ?,last_update = ?,data = ?,version = ?  where id = ?  \ncause:\n\tPSQLException: ERROR: Version has changed\n  Where: PL/pgSQL function update_version() line 8 at RAISE","jobId":"we2s1q2p16x****","maxRetryTime":43200,"module":"writer","retryCount":311,"retryTarget":"destDB","retryTime":3316,"retrying":true}  Version has changed

DTS-RETRY-ERR-0250 : invalid identifier

Cause possible : l'exécution de l'instruction SQL a échoué dans la base de données de destination.

Solution :

  • Pour une tâche de synchronisation de données, retirez la table mentionnée dans le message d'erreur de la liste des objets à synchroniser, puis redémarrez la tâche. Pour plus d'informations, consultez Retirer un objet de synchronisation.

  • Pour une tâche de migration de données, créez une nouvelle tâche. Lors de sa création, n'incluez pas la table mentionnée dans le message d'erreur parmi les objets à migrer.

Exemple :

id=38235****, jobId=thvd19f2136****, value={"errMsg":"transaction-replicate: DTS-70004: execute statement failed: /*ewjw1e6a13mc9stOraclePrepareStatementSqlEngine(10)*/insert into \"SNPCENTER\".\"BIND\"(\"id\", \"sn\", \"snapshot_id\", \"parent_sn\", \"created_at\", \"updated_at\", \"parent_sn_from\", \"sn_from\") values(?, ?, ?, ?, ?, ?, ?, ?)\ncause:\n\tSQLSyntaxErrorException: ORA-00904: \"ID\": invalid identifier\n","jobId":"ewjw1e6a13m****","maxRetryTime":43200,"module":"writer","retryCount":421,"retryTarget":"destDB","retryTime":4315,"retrying":true}

DTS-RETRY-ERR-0251 : unsupported value convert for

Cause possible : le type des données à écrire dans la base de destination diffère du type défini dans le schéma.

Solution : modifiez le schéma de la table dans la base de données de destination pour qu'il corresponde à celui de la base source, puis redémarrez la tâche.

Exemple :

id=38235****, jobId=a4410xe0123****, value={"errMsg":"jdbc-utils: DTS-11001: jdbc-utils: DTS-11001: Adb30StringDisperse: unsupported value convert for [****] convert to [chief_account JSON nullable as chief_account] targetDatabase:hdd_prod_1 targetTable:basic_dock_account\ncause:\n\tJdbcUtilsException: jdbc-utils: DTS-11001: Adb30StringDisperse: unsupported value convert for [****] convert to [chief_account JSON nullable as chief_account]","jobId":"vgn10ctk19o****","maxRetryTime":7200,"module":"writer","retryCount":114,"retryTarget":"destDB","retryTime":1142,"retrying":true}

DTS-RETRY-ERR-0253 : The network connection is not available, Please check the network connection of the source database and the target database

Cause possible : la connexion réseau a échoué.

Solution : vérifiez que la base de données source fonctionne normalement et qu'elle est accessible, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

The network connection is not available, Please check the network connection of the source database and the target database

DTS-RETRY-ERR-0254 : Failed to connect to the database (.*)?

Cause possible : DTS ne parvient pas à se connecter à la base de données source.

Solution : assurez-vous que la base de données source est accessible, puis redémarrez la tâche.

Exemple :

jobId=ce7v1agz31w****, errMsg=Failed to connect to the database [S124.221.XX.XX:XXX].

DTS-RETRY-ERR-0255 : NOSCRIPT No matching script

Cause possible : après le mappage d'un script Lua de la base source vers la base de destination, les clés du script Lua ne sont pas allouées dans le même slot de hachage sur la base de destination.

Solution : modifiez le script Lua afin que les clés soient allouées dans le même slot de hachage dans la base de données de destination, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

jobId=envr2tt1x3b****, errMsg=redis.clients.jedis.exceptions.JedisNoScriptException: NOSCRIPT No matching script. Please use EVAL.

DTS-RETRY-ERR-0256 : dayOfMonth must be in the range

Cause possible : les données à écrire contiennent des valeurs invalides, telles que des dates ou heures incorrectes, ce qui empêche leur écriture dans la base de destination.

Solution : modifiez le schéma de la table dans la base de données de destination pour qu'il corresponde à celui de la base source, puis redémarrez la tâche.

Exemple :

**** 
2023-02-03 18:23:37 [sink-22] ERROR Adb30ReplicateSink: 269 - 22 execute batch dml failed cause [15018, 20230203182337192168132064031516924991] Cannot parse "2023-02-00 06:08:11.0": Value 0 for dayOfMonth must be in the range [1,28]java.sql.SQLException: [15018, 2023020318233719216813206403151692491] Cannot parse "2023-02-00 06:08:11.0": Value 0 for dayOfMonth must be in the range [1,28]

DTS-RETRY-ERR-0257 : Invalid JSON text in argument 1 to function cast_as_json

Cause possible : le champ JSON mentionné dans le message d'erreur est vide et ne peut pas être écrit dans la base de destination.

Solution :

  • Pour une tâche de synchronisation de données, procédez comme suit : retirez la table concernée (ou la table fréquemment mise à jour) de la liste des objets à synchroniser. Effacez les données de cette table dans la base de destination. Ajoutez ensuite de nouveau la table aux objets à synchroniser. Pour plus d'informations, consultez Résoudre les erreurs de table dans une instance de synchronisation de données.

  • Pour une tâche de migration de données, réessayez ultérieurement. Si l'erreur persiste, contactez le support technique d'Alibaba Cloud.

Exemple :

****  `project_description` = x'E6B58BE8AF95E9A1B9E79BAE303731****',`school_id` = 2632,`project_id` = 1,`group_id` = 36,`is_use` = 1 WHERE `project_id` = 1 limit 1, error detail message:Data truncation: Invalid JSON text in argument 1 to function cast_as_json: "The document is empty." at position 0.     MysqlDataTruncation: Data truncation: Invalid JSON text in argument 1 to function cast_as_json: "The document is empty." at position 0.

DTS-RETRY-ERR-0258 : failed to parse date field

Cause possible : le format du champ de date est invalide dans le cluster Elasticsearch de destination, ce qui empêche l'écriture des données.

Solution : modifiez le format du champ de date dans le cluster Elasticsearch de destination en vous basant sur les données sources et le message d'erreur, puis redémarrez la tâche.

Exemple :

****
error detail message:es: DTS-10035: failed to parse field [mark_high_quality_label_time] of type [date] in document with id '30020'. Preview of field's value: '2023-02-03 17:40:27.0', failed to parse date field [2023-02-03 17:40:27.0] with format [strict_date_optional_time||epoch_millis]SQLException errorCode:0, record is: 
****

DTS-RETRY-ERR-0259 : User (.*)? has exceeded the 'max_user_connections' resource

Cause possible : le nombre de connexions à la base de données a atteint la limite supérieure définie par le paramètre max_user_connections.

Solution : augmentez le nombre maximal de connexions à la base de données et redémarrez la tâche. Pour plus d'informations sur la modification des paramètres d'une instance ApsaraDB RDS for MySQL, reportez-vous à Que faire si le message d'erreur « has more than 'max_user_connections' » ou « has exceeded the 'max_user_connections' » s'affiche lors de la connexion à une instance ApsaraDB RDS for MySQL ?.

Exemple :

jobId=v7yw20eea18****, errMsg=com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: User 'rrc_datax' has exceeded the 'max_user_connections' resource (current value: 50)

DTS-RETRY-ERR-0260 : Failed For Wait Mysql Server Handshake

Cause possible : la connexion à la base de données est impossible.

Solution : assurez-vous que la base de données est accessible, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=r54w1gex11x****, errMsg=Increment Context Is Not Running..: com.alibaba.dts.exception.message.LocalException: DTS-002010 Unknow connect db 100.100.66.1:12703 failure. Original error: Failed For Wait Mysql Server Handshake, please check the health of db For more information please refer to https://****

DTS-RETRY-ERR-0261 : UNSupport sqlserver without database backup

Cause possible : la fonctionnalité de sauvegarde de base de données n'est pas activée pour la base de données SQL Server auto-gérée.

Solution : activez la fonctionnalité de sauvegarde pour la base de données SQL Server auto-gérée et redémarrez la tâche. Pour plus d'informations, consultez la section Prérequis de la rubrique Synchroniser des données d'une base de données SQL Server auto-gérée vers une instance AnalyticDB for PostgreSQL.

Exemple :

jobId=ibeh15uc28l****, errMsg=DTS-52102: retry final failed cause:     RecoverableAnyAllException: dts-k-src: DTS-52110: SQLServerRecordExtractor Init Error: sqlserver-reader: DTS-52402: UNSupport sqlserver without database backup     CriticalAnyAllException: sqlserver-reader: DTS-52402: UNSupport sqlserver without database backup

DTS-RETRY-ERR-0262 : command 'SCRIPT' is not allowed

Cause possible : DTS ne permet pas de synchroniser ou de migrer des scripts depuis une instance Redis.

Solution : vérifiez que l'instance Redis source ne contient aucun script, puis redémarrez la tâche. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=mn9e254ps3r****,errMsg=redis.clients.jedis.exceptions.JedisDataException: ERR handle request, command 'SCRIPT' is not allowed

DTS-RETRY-ERR-0263 : UnsupportedException (.*)? Cannot support Version

Cause possible : DTS ne prend pas en charge Redis 7.0 ou versions ultérieures.

Solution : aucune.

Exemple :

jobId=hp9m2axpv47****,errMsg=DTS-31009: In process of processing data (recordRange: 27873049260****) failed cause:     FatalAnyAllException: common: DTS-100047: retry 0 times, 1601 seconds, which exceed the supposed 43200 seconds     RedisServerException: redis: DTS-10015: redis: DTS-11005: Cannot support Version: 10     UnsupportedException: redis: DTS-11005: Cannot support Version: 10

DTS-RETRY-ERR-0264 : TDDL-4500 (.*)? Do not support partition by

Cause possible : la base de données PolarDB-X en mode DRDS ne prend pas en charge le partitionnement automatique.

Solution :

  • Option 1 : modifiez les instructions DDL, supprimez les informations de partitionnement, puis redémarrez la tâche.

  • Option 2 : utilisez une base de données PolarDB-X en mode AUTO.

Exemple :

jobId=c78q2olvv3c****, errMsg=[15a0362958404000][11.117.XXX.XXX:3088][jm_live_data_pool]ERR-CODE: [TDDL-4500][ERR_PARSER] Do not support partition by. . 

DTS-RETRY-ERR-0265 : Rejecting mapping update to

Cause possible : l'index que vous tentez de créer existe déjà dans la base de données de destination de la tâche DTS.

Solution : supprimez l'index de la base de données de destination, à condition que cela n'affecte pas votre activité, puis redémarrez la tâche.

Exemple :

jobId=hvfm2r55y36****, errMsg=PUT http://172.17.XX.XX:XXX/equity_request_log/_mapping/equity_request_log_1?include_type_name=true&pretty=true: HTTP/1.1 400 Bad Request {   "error" : {     "root_cause" : [       {         "type" : "illegal_argument_exception",         "reason" : "Rejecting mapping update to [equity_request_log] as the final mapping would have more than 1 type: [_doc, equity_request_log_1]"       }     ],     "type" : "illegal_argument_exception",     "reason" : "Rejecting mapping update to [equity_request_log] as the final mapping would have more than 1 type: [_doc, equity_request_log_1]"   },   "status" : 400 } . PUT http://172.17.XX.XX:XXX/equity_request_log/_mapping/equity_request_log_10?include_type_name=true&pretty=true: HTTP/1.1 400 Bad Request {   "error" : {     "root_cause" : [       {         "type" : "illegal_argument_exception",         "reason" : "Rejecting mapping update to [equity_request_log] as the final mapping would have more than 1 type: [_doc, equity_request_log_10]"       }     ],     "type" : "illegal_argument_exception",     "reason" : "Rejecting mapping update to [equity_request_log] as the final mapping would have more than 1 type: [_doc, equity_request_log_10]"   },   "status" : 400 }

DTS-RETRY-ERR-0266 : Unknown collation

Cause possible : la base de données de destination ne prend pas en charge les formats d'encodage des tables de la base de données source.

Solution :

  • Option 1 : modifiez les formats d'encodage des tables dans la base de données source, sous réserve que cela n'impacte pas votre activité, puis redémarrez la tâche.

  • Option 2 : modifiez les instructions DDL dans la base de données de destination et redémarrez la tâche.

Exemple :

jobId=eb6o2xm5e3o****, errMsg=Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'. Unknown collation: 'utf8mb4_0900_ai_ci'.

DTS-RETRY-ERR-0267 : Invalid column name (.*)?

Cause possible : la colonne mentionnée dans le message d'erreur n'existe pas dans la base de données de destination. Par conséquent, un objet dépendant de cette colonne ne peut pas être créé.

Solution : vérifiez la validité de la colonne. Si celle-ci est invalide, ignorez-la et redémarrez la tâche. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=ofyn25r1t4b****, errMsg=Invalid column name 'TotalAmount'. Invalid column name 'wx_flag'. . 

DTS-RETRY-ERR-0268 : Invalid object name (.*)?

Cause possible : l'objet dont dépend la tâche actuelle est invalide.

Solution : vérifiez si l'objet requis par la tâche actuelle existe bien dans la base de données source.

  • Si l'objet existe, ajoutez-le à la liste des objets à synchroniser ou à migrer.

  • Si l'objet n'existe pas, contactez le support technique Alibaba Cloud.

Exemple :

jobId=dcpd2mm3p3f****, errMsg=Invalid object name 'dbo.V_BS_INFO'. Invalid object name 'dbo.V_BS_INFO'. Invalid object name 'V_BS_INFO'. Invalid object name 'V_BS_INFO'. Invalid object name 'V_CGO_CN_PRE'. . 

DTS-RETRY-ERR-0269 : Error column name

Cause possible : la base de données de destination ne prend pas en charge le format d'encodage de l'objet synchronisé ou migré mentionné dans le message d'erreur.

Solution : assurez-vous que les formats d'encodage des objets synchronisés ou migrés sont pris en charge par la base de données de destination, conformément au message d'erreur, puis redémarrez la tâche.

Exemple :

jobId=t6ds676q308****, errMsg=DTS-1029999 The ddlmove task t6ds676q308**** was finished,but 1 objects failed,error message:DTS-1020042 Execute sql error sql: DTS-1020042 Execute sql error sql: [13000, 202006301129351720160291070345367****] Error column name: 'id',only support '0-9,a-z,A-Z,_-()' and first letter must be a-z or 

DTS-RETRY-ERR-0270 : MongoCommandException (.*)? operation was interrupted

Cause possible : une erreur de délai d'attente survient lors de la création d'index pour une base de données MongoDB.

Solution : redémarrez la tâche. Si l'erreur persiste, augmentez le délai d'attente pour l'exécution des instructions DDL dans la base de données MongoDB, puis redémarrez la tâche.

Exemple :

jobId=b0tm16z731k****, errMsg=com.mongodb.MongoCommandException: Command failed with error 11602: 'operation was interrupted' on server 172.17.XX.XX:XXX. The full response is { "writeConcernError" : { "code" : 11602, "codeName" : "InterruptedDueToReplStateChange", "errmsg" : "operation was interrupted" }, "operationTime" : { "$timestamp" : { "t" : 1675441117, "i" : 2682 } }, "ok" : 0.0, "errmsg" : "operation was interrupted", "code" : 11602, "codeName" : "InterruptedDueToReplStateChange", "$clusterTime" : { "clusterTime" : { "$timestamp" : { "t" : 1675441145, "i" : 65 } }, "signature" : { "hash" : { "$binary" : "HKKlWcyFaBhMJYL5Fk9kGlpIyCU=", "$type" : "00" }, "keyId" : { "$numberLong" : "716938648110917****" } } } }. com.mongodb.MongoCommandException: Command failed with error 11602: 'operation was interrupted' on server 172.17.XX.XX:XXX. The full response is { "writeConcernError" : { "code" : 11602, "codeName" : "InterruptedDueToReplStateChange", "errmsg" : "operation was interrupted" }, "operationTime" : { "$timestamp" : { "t" : 1675441117, "i" : 2667 } }, "ok" : 0.0, "errmsg" : "operation was interrupted", "code" : 11602, "codeName" : "InterruptedDueToReplStateChange", "$clusterTime" : { "clusterTime" : { "$timestamp" : { "t" : 1675441145, "i" : 65 } }, "signature" : { "hash" : { "$binary" : "HKKlWcyFaBhMJYL5Fk9kGlpIyCU=", "$type" : "00" }, "keyId" : { "$numberLong" : "716938648110917****" } } } }.

DTS-RETRY-ERR-0271 : fullcheck find different records

Cause possible : la tâche de vérification des données a détecté des incohérences.

Solution : cette erreur correspond au résultat normal de la tâche de vérification des données. Elle indique que la vérification complète a relevé des différences entre les bases de données source et de destination.

  • Si vous avez défini le paramètre Full Data Verification sur Verify hash values based on the sampling ratio, accédez à l'onglet Check Details de la tâche de vérification des données. Vous pouvez alors consulter ou télécharger le rapport de vérification par table dans la colonne Actions.

  • Si vous avez défini le paramètre Full Data Verification sur Verify based on the number of table rows, le nombre indiqué dans le message d'erreur correspond au total des lignes incohérentes entre les bases source et de destination. Accédez à l'onglet Check Details de la tâche de vérification pour consulter les résultats par table.

Exemple :

**** fullcheck find different records : 9

DTS-RETRY-ERR-0272 : UnSupport this db type

Cause possible : la tâche actuelle ne prend pas en charge la fonctionnalité ETL.

Solution : supprimez les configurations liées à la fonctionnalité ETL de la tâche.

Exemple :

jobId=uqct2lfuv57****, errMsg=java.lang.Exception: UnSupport this db type : 131072
  at ****

DTS-RETRY-ERR-0273 : Deadlock found when trying to get lock

Cause possible : un autre utilisateur écrit des données dans la base de données de destination. Cela provoque un interblocage lorsque DTS tente d'y écrire des données pour la tâche en cours.

Solution : interrompez les autres opérations d'écriture sur la base de données de destination, sous réserve que cela n'affecte pas votre activité, puis réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=x1sz2los149****, errMsg=framework: DTS-30011: currentRunningSQL: /* DTS-full-x1sz2los149**** */insert ignore into **** , reason: Deadlock found when trying to get lock; try restarting transactioncause:    BatchUpdateException: Deadlock found when trying to get lock; try restarting transaction    MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction

DTS-RETRY-ERR-0274 : Tablespace has been discarded for table

Cause possible : DTS ne parvient pas à lire les données de la base de données source.

Solution : assurez-vous que la table signalée en erreur dans la base de données source est lisible, puis redémarrez la tâche.

Exemple :

jobId=yd0b2c2a148****, errMsg=framework: DTS-31009: In process of processing data (recordRange: 381808368541709****) failedcause:    FatalAnyAllException: common: DTS-100047: retry 712 times, 7205110 seconds, which exceed the supposed 7200 seconds    CriticalAnyAllException: framework: DTS-31009: read source data error    SQLException: Tablespace has been discarded for table 'dtstest'

DTS-RETRY-ERR-0275 : is not nullable (.*)? but it's default value is null

Cause possible : une valeur nulle est écrite dans une colonne soumise à la contrainte NOT NULL dans la base de données de destination.

Solution : supprimez la contrainte NOT NULL des colonnes mentionnées dans le message d'erreur au sein de la table de destination, à condition que cela n'affecte pas votre activité, puis redémarrez la tâche.

Exemple :

jobId=lg7d2ofq14v****, errMsg=common: DTS-100047: retry 4310 times, 43202322 seconds, which exceed the supposed 43200 secondscause:    RuntimeException: Table '`dw`.`f_fa_fnd_repay_recon`' with columns [****] and batch exception is {[13000, 202302150420401921681740920315141****] F_FA_FND_REPAY_RECON.BANK is not nullable, but it's default value is null, Error : Field 'F_FA_FND_REPAY_RECON.BANK' doesn't have a default value}    BatchUpdateException: [13000, 202302150420401921681740920315141****] F_FA_FND_REPAY_RECON.BANK is not nullable, but it's default value is null, Error : Field 'F_FA_FND_REPAY_RECON.BANK' doesn't have a default value    MySQLSyntaxErrorException: [13000, 202302150420401921681740920315141****] F_FA_FND_REPAY_RECON.BANK is not nullable, but it's default value is null, Error : Field 'F_FA_FND_REPAY_RECON.BANK' doesn't have a default value

DTS-RETRY-ERR-0276 : if (.*)? is specified it must not be empty

Cause possible : la valeur mappée à la colonne _id dans le cluster Elasticsearch de destination est vide.

Solution : reconfigurez la tâche et définissez des conditions de filtrage lors de la sélection des objets à synchroniser ou à migrer afin d'exclure les données dont la valeur est une chaîne vide. Pour plus d'informations, reportez-vous à Définir des conditions de filtrage.

Exemple :

jobId=usbt2jev15uw11k, errMsg=common: DTS-100047: retry 15 times, 265289 seconds, which exceed the supposed 9223372036854775807 secondscause:    IOException: es: DTS-10035: if _id is specified it must not be empty    CriticalAnyAllException: es: DTS-10035: if _id is specified it must not be empty

DTS-RETRY-ERR-0277 : The primary key schema is not match which defined in table meta

Cause possible : la clé primaire d'une table ne correspond pas aux informations de schéma obtenues par DTS.

Solution : créez une nouvelle tâche. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=j4qs239715r****, errMsg=common: DTS-100047: retry 0 times, 2056 seconds, which exceed the supposed 43200 secondscause:    ClientException: The primary key schema is not match which defined in table meta.

DTS-RETRY-ERR-0278 : Unexpected end of stream

Cause possible : une erreur se produit lors de la connexion de DTS à une instance de base de données.

Solution : vérifiez les informations réseau, telles que la liste d'autorisation, afin de garantir l'accès à la base de données, puis redémarrez la tâche. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source et à Résoudre les échecs de connectivité de la base de données de destination.

Exemple :

jobId=ofmz2m6015t****, errMsg=framework: DTS-31007: fetch and merge schemas failedcause:    RedisServerException: redis: DTS-10015: redis: DTS-10010: Unexpected end of stream.    RedisClientInitiationException: redis: DTS-10010: Unexpected end of stream.

DTS-RETRY-ERR-0279 : Unsupport batch replicate in kafka

Cause possible : la tâche actuelle ne prend pas en charge la fonctionnalité d'écriture par lots. Vous devez désactiver cette fonctionnalité.

Solution : Contactez le support technique Alibaba Cloud.

Exemple :

jobId=f3uc324ha1c****, errMsg=kafka: DTS-31005: Unsupport batch replicate in kafka

DTS-RETRY-ERR-0280 : Could not get a resource since the pool is exhausted

Cause possible : DTS ne parvient pas à se connecter à l'instance Redis.

Solution : assurez-vous que DTS peut se connecter à l'instance Redis source ou de destination, puis redémarrez la tâche.

Exemple :

jobId=sjcg2si2141****, errMsg=redis: DTS-10015: Could not get a resource since the pool is exhaustedcause:    JedisExhaustedPoolException: Could not get a resource since the pool is exhausted    NoSuchElementException: Unable to validate object

DTS-RETRY-ERR-0281 : RDB Magic String Error

Cause possible : DTS ne prend pas en charge la version actuelle de l'instance Redis. Par conséquent, il ne parvient pas à analyser les données de cette instance.

Solution : utilisez une instance Redis d'une version prise en charge par DTS et réessayez. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=rs1r2ub614****, errMsg=framework: DTS-31009: In process of processing data (recordRange: 2093173747887374336) failedcause:    FatalAnyAllException: common: DTS-100047: retry 0 times, 1501 seconds, which exceed the supposed 43200 seconds    RedisServerException: redis: DTS-10015: redis: DTS-10019: RDB Magic String Error: [84, 68, 69, 95, 69, 78, 65, 66, 76]    UnexpectedRDBFromatException: redis: DTS-10019: RDB Magic String Error: [84, 68, 69, 95, 69, 78, 65, 66, 76]

DTS-RETRY-ERR-0282 : Can not create connection to source database

Cause possible : une erreur se produit lors de la connexion de DTS à une instance de base de données.

Solution : vérifiez les informations réseau, telles que la liste d'autorisation, afin de garantir l'accès à la base de données, puis redémarrez la tâche. Pour plus d'informations, reportez-vous à Résoudre les problèmes de connectivité de la base de données source et à Résoudre les échecs de connectivité de la base de données de destination.

Exemple :

jobId=sd4q2knu13t****, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..: cause:    CriticalAnyAllException: sqlserver-reader: DTS-52410: Sqlserver log fetch failed    CriticalAnyAllException: sqlserver-reader: DTS--0001: Can not create connection to source database    SQLServerException:  ****

DTS-RETRY-ERR-0283 : the password has expired

Cause possible : le compte de la base de données Oracle a expiré. DTS ne peut donc pas se connecter à la base de données.

Solution : modifiez le compte de la base de données pour permettre à DTS de se connecter à la base Oracle via ce compte. Vous pouvez par exemple changer le mot de passe du compte.

Exemple :

jobId=h0vu2cqvb73****, errMsg=dts-k-src: DTS-52111: Increment Context Is Not Running..: cause:    CriticalAnyAllException: oracle-reader: DTS-52320: Fetch oracle log failed    CriticalAnyAllException: oracle-reader: DTS-52320: Fetch redo log failed    CriticalAnyAllException: oracle-reader: DTS--0001: Can not create connection to source database, case by ORA-28001: the password has expired    SQLException: ORA-28001: the password has expired

DTS-RETRY-ERR-0284 : postgres create local slot failed

Cause possible : DTS ne parvient pas à créer un slot de réplication dans la base de données source.

Solution : exécutez l'instruction SELECT * FROM pg_stat_activity WHERE pid != pg_backend_pid() AND (now() - xact_start > INTERVAL '600s'); sur la base de données source pour vérifier si une transaction longue empêche DTS de créer un slot de réplication. Si une telle transaction existe, attendez qu'elle se termine avant de réessayer. Si l'erreur persiste, contactez le support technique Alibaba Cloud.

Exemple :

jobId=hkdy2ysl13j****, errMsg=bisId [hl3o2c0n13r****] run fail by ****,errorMsg:reader m36f2x3115g**** start fail,current state failed , msg : dts-k-src: DTS-52111: Increment Context Is Not Running..: cause:    CriticalAnyAllException: postgresql--reader: DTS-52510: Fetch postgresql logical log failed CriticalAnyAllException: postgresql-reader: DTS-52513: postgres create local slot failed

DTS-RETRY-ERR-0285 : Error In Parsing RDB

Cause possible : le compte de base de données utilisé par la tâche DTS ne dispose pas des permissions requises sur la base de données Redis.

Solution : vérifiez dans la documentation appropriée si le compte de la base de données Redis possède les permissions nécessaires. Si ce n'est pas le cas, accordez-lui les permissions requises et réessayez. Si le compte dispose déjà des permissions adéquates, contactez le support technique Alibaba Cloud.

Exemple :

jobId=v5i12pl522s****, errMsg=framework: DTS-31009: In process of processing data (recordRange: 27873049260****) failedcause:    RedisServerException: redis: DTS-10015: redis: DTS-10019: Error In Parsing RDB, Format Error, First Line is :-ERR request failed to route, command 'sync' raw ****

DTS-RETRY-ERR-0286 : You can't write or read against a disable instance

Cause possible : DTS ne peut ni lire ni écrire de données dans la base de données source.

Solution : assurez-vous que la lecture et l'écriture sont possibles sur la base de données source, puis redémarrez la tâche.

Exemple :

jobId=rp4r2jdc14y****, errMsg=framework: DTS-31007: fetch and merge schemas failedcause:    RuntimeException: sourceDB execute info Keyspace return unexpected error, response: null    JedisDataException: ERR DISABLE You can't write or read against a disable instance

DTS-RETRY-ERR-0287 : Value (.*)? for monthOfYear must be in the range

Cause possible : les données de type DATE dans la base de données source sont invalides.

Solution :

Exemple :

DTS-077100: Record Replicator error in table hdd_ams.ams_****. cause by [java.sql.SQLException: [15018, 202407231646521720170412240345328****] Cannot parse "0000-00-23 15:30:00": Value 0 for monthOfYear must be in the range [1,12]] About more information in [https://****].

DTS-RETRY-ERR-0288 : Invalidate value(.*)? , year must be between 1 and 9999

Cause possible : les données de type DATE dans la base de données source sont invalides.

Solution :

Exemple :

DTS-100047: retry 178 times, 1805948 seconds, which exceed the supposed 1800 seconds cause: RuntimeException: Table '`welife****`.`welifehy_welife****`' with columns [`couponId`, `bid`, `cType`, `cSids`, `cAids`, `cName`, `cAmount`, `cValidityType`, `cStartTime`, `cEndTime`, `cValidityDate`, `cValidityDateUnit`, `cSummary`, `cCreator`, `cModifier`, `cCreated`, `cUpdated`, `cDeleted`, `cStatus`, `cLimited`, `wcid`, `cEnabled`, `cProductIds`, `cGiftCouponAmountCustom`, `cLimitTotalAmount`, `cLimitCuponNumber`, `cMixUse`, `cUsingTime`, `cFlag`, `cChannel`, `cCardImg`, `mid`, `cUsingScope`, `cSubCoupons`, `cBelongToPack`, `UpdateTime`, `cGiveFriend`, `cFileder`, `cFiledTime`, `cLimitType`, `cProductExtIds`, `cLimitCoupon`, `cValidTimes`, `cShowName`, `cGiveChannel`, `cSaleMoney`, `cSaleMoneyPriorityRule`, `cAddCardBag`, `cOtherName`, `cDateType`, `cLimitMaxAmount`, `cLimitProductType`, `cExtend`, `cImages`, `cSyncBusifavor`, `cAttribute`, `cPlatform`, `cThirdId`] and batch exception is {[13000, 202407201755101921681291090315124****] (Column => WELIFEHY_WELIFE_COUPONS.CFILEDTIME), Invalidate value=>0000-01-01 00:00:00.0, `year` must be between 1 and 9999} BatchUpdateException: [13000, 2024072017551019216812910903151249727] (Column => WELIFEHY_WELIFE_COUPONS.CFILEDTIME), Invalidate value=>0000-01-01 00:00:00.0, `year` must be between 1 and 9999 MySQLSyntaxErrorException: [13000, 2024072017551019216812910903151249727] (Column => WELIFEHY_WELIFE_COUPONS.CFILEDTIME), Invalidate value=>0000-01-01 00:00:00.0, `year` must be between 1 and 9999

DTS-RETRY-ERR-0289 : Source data value(.)? doesn't match target field(.)? with type(.*)?

Cause possible : DTS ne parvient pas à écrire les données dans la base de données de destination en raison d'une incohérence des types de données des colonnes entre les bases source et cible.

Remarque

Ce problème peut résulter de l'échec de la synchronisation des opérations DDL associées. Consultez les journaux de tâches pour identifier les opérations DDL dont la synchronisation a échoué. Pour plus d'informations sur la consultation des journaux, reportez-vous à Consulter les journaux de tâches.

Solution :

  • Tâche de synchronisation des données :

    • Solution 1 : Modifiez les schémas des tables de la base de données de destination pour qu'ils correspondent à ceux de la base source. Vérifiez que les colonnes cibles possèdent le même type de données que les colonnes sources, puis redémarrez la tâche.

    • Solution 2 : Si la tâche inclut la synchronisation de schéma, retirez les tables mentionnées dans le message d'erreur de la liste des objets à synchroniser, puis ajoutez-les à nouveau. Pour plus d'informations, consultez Modifier les objets de synchronisation.

  • Tâche de migration des données : Adaptez les schémas des tables dans la base de destination selon ceux de la base source. Assurez-vous que les types de données des colonnes cibles sont identiques à ceux des colonnes sources avant de redémarrer la tâche.

Exemple :

DTS-100047: retry 4282 times, 43200702 seconds, which exceed the supposed 43200 seconds cause: JdbcUtilsException: jdbc-utils: DTS-11001: jdbc-utils: DTS-11001: Source data value:[course] doesn't match target field:`module` with type:INTEGER, Please check the data types of the source table fields. This issue may be caused by the failure of executing DDL to convert field types on the target side. The failed DDL execution records can be found in dts job's action.log. targetDatabase:new_soke_preview targetTable:approval_templatetargetField: module INTEGER not nullable as module utf8 JdbcUtilsException: jdbc-utils: DTS-11001: Source data value:[course] doesn't match target field:`module` with type:INTEGER, Please check the data types of the source table fields. This issue may be caused by the failure of executing DDL to convert field types on the target side. The failed DDL execution records can be found in dts job's action.log. NumberFormatException: For input string: "course"

DTS-RETRY-ERR-0290 : Record Replicator error in table (.)?. cause by (.)? Access denied for (.*)?

Cause possible : Les instructions SQL associées ne peuvent pas s'exécuter car les comptes de base de données utilisés par la tâche disposent de permissions insuffisantes.

Solution : Accordez les permissions requises aux comptes de base de données conformément au message d'erreur, puis redémarrez la tâche.

Exemple :

DTS-077100: Record Replicator error in table mengniu****.osp_sales_plan****. cause by [java.sql.SQLException: [10000, 2024071715225419216806623903151151449] Access denied for INSERT, check db/table/column is MENGNIU_YIPANHUO/OSP_SALES_PLAN_DETAIL/SALES_AREA_CODE, user:mengniu_**** host:% has privilege: UserPrivilege{globalPrivileges=[EXECUTE, INDEX, PROCESS, SELECT, SHOW VIEW, RELOAD, REFERENCES], dbPrivileges={}, tablePrivileges={}, columnsPrivileges={}}] About more information in [https://****].

DTS-RETRY-ERR-0291 : column (.*)? is not nullable, can not set null

Cause possible : Une valeur nulle est insérée dans un champ soumis à la contrainte NOT NULL dans la table de destination.

Solution : Supprimez la contrainte NOT NULL du champ concerné, à condition que cela n'affecte pas votre activité métier. Redémarrez ensuite la tâche.

Exemple :

DTS-100047: retry 179 times, 1800006 seconds, which exceed the supposed 1800 seconds cause: RuntimeException: Table '`basic_supp****`.`dict_diagn****`' with columns [`id`, `org_id`, `icd_code`, `diagnosis_name`, `morphological_code`, `pinyin`, `wbm`, `search_code`, `search_instructions`, `diagnostic_instructions`, `diagnostic_type`, `scope_outpatient`, `scope_inpatient`, `scope_emergency`, `infection`, `special_disease`, `enable_state`, `disease_report`, `remark`, `create_by`, `gmt_create`, `modify_by`, `gmt_modify`, `active`, `scope_emergency_keep`, `code`, `global_code`, `scope_physical_examination`, `gmc_id`, `out_validate_classify`] and batch exception is {[13000, 202407171426491720160012290315104****] syntax error :column 'DICT_DIAGN****.GMT_CR****' is not nullable, can not set null} BatchUpdateException: [13000, 202407171426491720160012290315104****] syntax error :column 'DICT_DIAGN****.GMT_CR****' is not nullable, can not set null MySQLSyntaxErrorException: [13000, 202407171426491720160012290315104****] syntax error :column 'DICT_DIAGN****.GMT_CR****' is not nullable, can not set null

DTS-RETRY-ERR-0292 : can not find disperser for field (.)? with value type (.)?

Cause possible : Le type de données des colonnes de la base de destination diffère de celui des colonnes sources et aucune conversion n'est possible.

Solution :

  • Tâche de synchronisation des données :

    • Solution 1 : Ajustez les schémas des tables de la base de destination afin qu'ils correspondent à ceux de la base source. Confirmez que les types de données des colonnes cibles et sources sont identiques, puis relancez la tâche.

    • Solution 2 : Lorsque la synchronisation de schéma est activée, excluez temporairement les tables signalées dans l'erreur des objets à synchroniser, puis réintégrez-les. Pour en savoir plus, voir Modifier les objets de synchronisation.

  • Tâche de migration des données : Alignez les schémas des tables de la base de destination sur ceux de la base source. Garantissez l'équivalence des types de données entre colonnes cibles et sources avant de redémarrer la tâche.

Exemple :

DTS-100047: retry 4320 times, 43204014 seconds, which exceed the supposed 43200 seconds cause: RuntimeException: Table '`adb_jarvi****`.`jarvis_s****`' with columns [`id`, `org_id`, `factory_id`, `putout_category_id`, `bundle_id`, `handle_amount`, `is_putout_all`, `handle_time`, `remark`, `create_time`, `update_time`, `timestamp`] and batch exception is {can not find disperser for field handle_amount DOUBLE nullable as handle_amount utf8 with value type IntegerNumeric} SQLException: can not find disperser for field handle_amount DOUBLE nullable as handle_amount utf8 with value type IntegerNumeric

DTS-RETRY-ERR-0293 : db not found. use 'show databases' to see all dbs.

Cause possible : La base de données ou le schéma correspondant est absent de l'instance de destination.

Solution : Créez manuellement la base de données ou le schéma dans l'instance cible, attribuez les permissions nécessaires aux comptes utilisés par la tâche, puis redémarrez cette dernière.

Exemple :

db not found. use `show databases` to see all dbs. current schemas ****

DTS-RETRY-ERR-0294 : Invalid default value for (.*)?

Cause possible : Lors de la synchronisation ou de la migration de schéma, les mappages de types de données par défaut sont invalides.

Solution : Créez manuellement la table dans la base de données de destination et excluez-la de l'étape Schema Migration.

Exemple :

Invalid default value for 'active_****'. ****

DTS-RETRY-ERR-0295 : do not have enough privileges to use this database.

Cause possible : Le compte de base de données employé par la tâche DTS ne possède pas les permissions requises.

Solution :

  • Méthode 1 : Octroyez les permissions adéquates au compte de base de données et relancez la tâche.

  • Méthode 2 : Reconfigurez la tâche en utilisant un compte de base de données disposant déjà des permissions nécessaires.

Exemple :

amacadbu**** do not have enough privileges to use this database.. ****

DTS-RETRY-ERR-0296 : This connection has been closed

Cause possible : Une erreur survenue dans la base de données source ou cible a interrompu la connexion entre DTS et cette base.

Solution : Vérifiez que la base de données source ou cible fonctionne normalement et accepte les connexions. Redémarrez ensuite la tâche.

Exemple :

DTS-61015: Create connection failed (url: 10.25.XX.XX:XX/testdbuser01, user: testdbuser01) cause: PSQLException: This connection has been closed.

DTS-RETRY-ERR-0297 : cannot execute (.*)? in a read-only transaction

Cause possible : La base de données source est en lecture seule ou fonctionne en mode lecture seule.

Solution :

  • Si la base source est intrinsèquement en lecture seule, remplacez-la par une base en lecture/écriture et reconfigurez la tâche.

  • Si la base source est simplement en mode lecture seule, basculez-la en mode lecture/écriture puis redémarrez la tâche.

Exemple :

ERROR: cannot execute CREATE FUNCTION in a read-only transaction

DTS-RETRY-ERR-0298 : only (.*)? table allowed

Cause possible : La base de données de destination impose une limite au nombre de tables.

Solution : Demandez à l'administrateur de la base de destination de lever la restriction sur le nombre de tables, puis relancez la tâche.

Exemple :

[17020, 202408021111130210411290680315193****] only 2500 table allowed. 

Autres erreurs courantes

DTS-10015

Description du problème : Impossible de se connecter à une base de données Redis.

Cause possible : Le serveur Redis refuse la connexion en raison d'une exception.

Solution : Vérifiez l'état du serveur Redis et assurez-vous qu'il est accessible.

Exemple :

DTS-10015: unreachable redis network.JedisConnectionException: Could not get a resource from the poolJedisConnectionException: Failed connecting to ip_address:portConnectException: Connection timed out (Connection timed out)

DTS-10046

Description du problème : Une exception survient lors de l'exécution d'instructions SQL.

Cause possible : Le compte de base de données ne dispose pas de la permission CREATE TABLE.

Solution : Accordez la permission CREATE TABLE au compte de base de données.

Remarque

Généralement, le système affiche un message d'erreur spécifique à la base de données accompagné de ce code d'erreur. Examinez les instructions SQL mentionnées dans le message et corrigez l'erreur.

Exemple :

DTS-10046: execute sql: CREATE TABLE if not exists`dts`.`table_name` ( `id` int(11) NOTNULL,`column1` bigint(20) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULTCHARSET=utf8 failed. Create TransactionTable failed. cause:MySQLSyntaxErrorException: CREATE command denied to user 'username'@'ip_address' for table 'table_name'

DTS-30005

Description du problème : Échec de l'enregistrement des métadonnées lors du traitement interne.

Cause possible : Deux tables de la base source portent le même nom à la casse près (par exemple TABLE et table). DTS considère ces deux noms comme conflictuels.

Solution : Vérifiez les noms des tables dans la base source et renommez l'une d'elles. Redémarrez ensuite la tâche.

Exemple :

DTS-30005: save changed job progress info failed cause: SQLException:result content unexpected. expect 3 time 1, actually [2, 1, 1]

DTS-30011

Description du problème : Une exception se produit lors de l'écriture des données.

Cause possible 1 :

  • L'espace disque est saturé.

  • La taille de la table cible a atteint sa limite maximale.

Solution 1 :

  • Augmentez l'espace disque disponible et redémarrez la tâche.

  • Relevez la limite de taille de table en modifiant les paramètres de la base de données. Une fois l'erreur corrigée, relancez la tâche.

    Remarque

    Pour connaître la taille maximale des tables MySQL, consultez B.3.2.10 The table is full.

Exemple :

DTS-30011:put 2048 records error, currentRunningSQL:insert ignore into `xxx`.`yyy`(...), currentRunningRecordRange:{id:5362875948821643265,xxx.yyy,field:DefaultRecordField:{fieldName=aaa, dataType={typeName:BIGINT, typeId:-5, isLobType:false,encoding:null}, sourceDataType=null, aliases=[], defaultValue=null,nullable=false, unique=true, primary=true,generated=false},leftValue:1293615822270500864,rightValue:1311217506282770432,partition:null}cause: BatchUpdateException: The table 'yyy' is full SQLException: The table'yyy' is full

Cause possible 2 : Un délai d'attente de verrou (lock wait timeout) survient dans la base de destination.

Solution : Si la base de destination est MySQL, exécutez les instructions suivantes pour vérifier l'état des verrous :

SHOW FULL PROCESSLIST;
SELECT
* FROM innodb_trx;
Remarque

Après avoir corrigé l'erreur, vous devez redémarrer la tâche.

Exemple :

DTS-30011: put 2048 records error, currentRunningSQL:insert ignore into`xxx`.`yyy`(...:{id:4958981218625388545,schema:xxx.yyy,field:DefaultRecordField:{fieldName=aaa, dataType={typeName:INTEGER, typeId:4, isLobType:false,encoding:null}, sourceDataType=null, aliases=[], defaultValue=null,nullable=false, unique=true, primary=true,generated=false},leftValue:512021,rightValue:1024022,partition:null} cause:BatchUpdateException: Lock wait timeout exceeded; try restarting transactionMySQLTransactionRollbackException: Lock wait timeout exceeded; try restartingtransaction

Cause possible 3 : La base de données de destination est en mode lecture seule.

Solution :

  • Exécutez l'instruction SELECT @@read_only; pour vérifier si la base de destination est en mode lecture seule.

  • Exécutez l'instruction SET GLOBAL read_only=0; pour désactiver le mode lecture seule.

Remarque

Une fois le mode lecture seule désactivé, redémarrez impérativement la tâche.

Exemple :

DTS-30011: put 2048 records error, currentRunningSQL:insert ignore into`xxx`.`yyy`(`...,currentRunningRecordRange:{id:4050997257913237860,schema:xxx.yyy,field:DefaultRecordField:{fieldName=id, dataType={typeName:BIGINT, typeId:-5, isLobType:false, encoding:null},sourceDataType=null, aliases=[], defaultValue=null, nullable=false,unique=true, primary=true,generated=false},leftValue:5424204045,rightValue:5424982251,partition:null}cause: SQLException: The MySQL server is running with the --read-only option soit cannot execute this statement

DTS-30018

Description du problème : La colonne spécifiée est introuvable.

Cause possible :

  • Lors de la configuration de la tâche de migration, le type de migration Schema Migration n'a pas été sélectionné. Par conséquent, les schémas des tables diffèrent entre les bases source et cible.

  • Après la configuration de la tâche, des instructions DDL ont modifié les schémas de tables dans la base source ou cible, créant ainsi une incohérence structurelle.

Solution : Ajustez les schémas des tables dans les bases source et cible afin de garantir leur cohérence.

Remarque

Si les causes ci-dessus ne correspondent pas à votre situation, essayez les solutions suivantes :

  • Redémarrez la tâche pour vérifier si elle reprend correctement.

  • Retirez les tables de la liste des objets à synchroniser, puis ajoutez-les à nouveau pour tenter de rétablir la tâche.

Exemple :

DTS-30018: Can not find column [column_in_source<-->column_in_target] in target table db_name.table_name

DTS-30019

Description du problème : La colonne spécifiée est introuvable.

Cause possible :

  • Lors de la configuration de la tâche de migration, le type de migration Schema Migration n'a pas été sélectionné. Il en résulte une divergence de schémas entre les bases source et cible.

  • Des instructions DDL exécutées après la configuration de la tâche ont altéré les schémas de tables dans la base source ou cible, provoquant une désynchronisation structurelle.

Solution : Harmonisez les schémas des tables entre les bases source et cible pour assurer leur cohérence.

Remarque

Si les causes évoquées ne s'appliquent pas, tentez les approches suivantes :

  • Relancez la tâche afin de vérifier sa reprise.

  • Excluez les tables des objets à synchroniser puis réintégrez-les pour tester la reprise de la tâche.

Exemple :

DTS-30019: Can not find column [column_in_source<-->column_in_target] in target table db_name.table_name

DTS-30020

Description du problème : Une exception survient durant l'exécution d'instructions SQL.

Cause possible : Le compte de base de données manque de la permission CREATE TABLE.

Solution : Attribuez la permission CREATE TABLE au compte de base de données concerné.

Remarque

Dans la plupart des cas, ce code d'erreur s'accompagne d'un message spécifique à la base de données. Analysez les instructions SQL indiquées dans le message pour corriger le problème.

Exemple :

DTS-30020: execute sql: CREATE TABLE if not exists`dts`.`table_name` ( `id` int(11) NOTNULL,`column1` bigint(20) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULTCHARSET=utf8 failed. Create TransactionTable failed. cause:MySQLSyntaxErrorException: CREATE command denied to user 'username'@'ip_address' for table 'table_name'

DTS-31009/DTS-51009/DTS-50019

Description du problème : Le module d'écriture ne parvient pas à lire les données au point temporel spécifié depuis le module de cache de données.

Cause possible 1 : La tâche est restée suspendue trop longtemps. Au redémarrage, le module de cache ne contient plus de données au point de consommation indiqué, par exemple 2021-05-20 21:17:51.

Remarque

L'horodatage affiché dans le message d'erreur est au format UNIX. Utilisez un convertisseur de timestamp UNIX en ligne pour obtenir l'heure UTC correspondante.

Solution 1 :

  • Solution 1 : Vérifiez si le point de consommation figure dans la plage temporelle des journaux utilisés pour l'analyse incrémentielle dans la base source (journaux binaires ou redo logs). Si le point de consommation est bien inclus dans cette plage, contactez le support technique Alibaba Cloud.

  • Solution 2 : Créez une nouvelle tâche. Une fois lancée, évitez toute suspension prolongée. Au-delà de six heures d'interruption, la tâche ne pourra plus être reprise.

Cause possible 2 : La tâche a échoué pendant une durée prolongée. Après résolution du problème, le module de cache ne dispose plus de données au point de consommation requis.

Solution : Créez une nouvelle tâche. En cas d'erreur pendant l'exécution, corrigez-la et reprenez la tâche dans les plus brefs délais. Une tâche ayant échoué longtemps risque de ne pas pouvoir redémarrer correctement.

Cause possible 3 : Durant la migration ou la synchronisation complète, DTS conserve cycliquement les journaux de données des dernières 24 heures ou jusqu'à 50 Go de journaux de la base source pour l'analyse incrémentielle. Si cette phase dure trop longtemps, DTS peut purger les journaux mis en cache depuis le début de la tâche, rendant les données incrémentielles incomplètes.

Solution : Créez une nouvelle tâche. Avant cela, évaluez le volume de données à migrer ou synchroniser. Pour les volumes importants, il est recommandé de répartir la charge sur plusieurs tâches.

Exemple :

DTS-31009: In process of processing data (recordRange: 911705268553777****) failed cause: CriticalAnyAllException: 
capture-dstore: DTS-51009: Failed to fetch records from dstore CriticalAnyAllException: capture-dstore: DTS-50019: 
seek timestamp for topic [-0] with position [{"timestamp":1621516671, "offset":-1}] failed

DTS-31009/DTS-51009

Description du problème : Un délai d'expiration de connexion survient lorsque le module d'écriture lit les données depuis le module de cache.

Cause possible : Des instabilités réseau provoquent l'expiration du délai de connexion entre le module d'écriture et le module de cache.

Solution : Redémarrez la tâche et vérifiez si elle reprend normalement.

Exemple :

DTS-31009: In process of processing data (recordRange: 579980698763814****) failed cause: CriticalAnyAllException: 
capture-dstore: DTS-51009: Failed to fetch records from dstore TimeoutException: Failed to get offsets by times in 
120000 ms

DTS-60001

Description du problème : Connexion impossible à la base de données source.

Cause possible : Le nom d'utilisateur ou le mot de passe saisi est incorrect.

Solution : Saisissez les identifiants corrects puis redémarrez la tâche.

Remarque

Si les causes précédentes ne s'appliquent pas, explorez les pistes suivantes :

  • Vérifiez l'état de la base de données source.

  • Confirmez que le mot de passe du compte n'a pas été modifié.

  • Validez les paramètres de liste d'autorisation. Pour plus d'informations, consultez Ajouter les adresses IP des serveurs DTS à la liste d'autorisation.

  • Assurez-vous que le nombre de connexions à la base source n'a pas atteint son plafond.

Exemple :

DTS-60001: Create connection failed (url:ip_address:port, user: username) cause: SQLException: Access denied for user'username'@'ip_address' (using password: YES)

DTS-61015

Description du problème : Connexion impossible à la base de données source.

Cause possible : Le nombre maximal de connexions autorisées sur la base source est atteint.

Solution : Modifiez les schémas des tables dans les bases source et cible pour garantir leur cohérence.

Remarque

Si les causes mentionnées ne correspondent pas à votre cas, essayez les solutions suivantes :

  • Redémarrez la tâche pour vérifier sa reprise éventuelle.

  • Supprimez les tables des objets à synchroniser puis rajoutez-les afin de tester la reprise de la tâche.

Exemple :

DTS-61015: Create connection failed(url:ip_address:port, user: username) cause:MySQLNonTransientConnectionException: Data source rejected establishment ofconnection, message from server: "Too many connections"

DTS-70002

Description du problème : Connexion impossible à la base de données, ou la base/table spécifiée est inexistante.

Cause possible : Une erreur lors de la migration de schéma a empêché la création de la table cible. De plus, aucune table équivalente n'a été créée manuellement dans la base de destination.

Solution : Vérifiez l'existence de la base ou de la table indiquée dans le message d'erreur. Si elle est absente, procédez comme suit :

  • Pour une tâche de synchronisation, retirez la table des objets à synchroniser puis réintégrez-la pour vérifier la reprise de la tâche.

  • Pour une tâche de migration, créez une nouvelle tâche.

Exemple :

DTS-70002: get table detail info failed after 151times (user: db_name, database:table_name) MySQLSyntaxErrorException: Table 'db_name.table_name'doesn't exist

DTS-70004

Description du problème : Une exception se produit lors de l'exécution d'instructions SQL.

Remarque

Ce message d'erreur apparaît généralement lorsque la base de destination est un cluster AnalyticDB for MySQL.

Cause possible 1 : DTS ne prend pas en charge certaines instructions DDL dans le cadre de la synchronisation, ce qui entraîne leur échec.

Solution 1 :

  • Si la synchronisation intégrale de la base n'est pas requise, resynchronisez uniquement la table en erreur. Retirez-la des objets à synchroniser, supprimez-la de la base cible, puis ajoutez-la à nouveau. DTS resynchronisera le schéma et les données historiques, ignorant ainsi les instructions DDL non prises en charge.

  • Pour synchroniser l'intégralité de la base, créez une nouvelle table (Table A) dans le cluster AnalyticDB for MySQL de destination. Cette table doit porter un nom différent de la table en erreur (Table B) tout en conservant le même schéma. Exécutez l'instruction INSERT INTO SELECT pour copier les données de la Table B vers la Table A, supprimez la Table B, puis utilisez l'instruction RENAME pour renommer la Table A en Table B. Redémarrez enfin la tâche.

Exemple :

DTS-70004: execute statement failed: /*dts_id=dtsaaaaaaaaaa*/alter table`xxx`.`yyy` modify column `aaa` INT default 0 comment 'bbb' cause:SQLException: [15018, 2021030506452201000000420803151947572] modify column type is not supported, col=x, oldType=bigint, newType=int

Cause possible 2 : L'opération SHUTDOWN a été exécutée sur la base de destination.

Solution : Assurez-vous que la base de destination est opérationnelle et redémarrez la tâche de synchronisation.

Exemple :

DTS-70004:execute statement failed: /*aaaaaaaaaaMysqlEngine(28)*/update `xxx`.`yyy` set... error detail message:Server shutdown in progress MySQLNonTransientConnectionException: Server shutdown in progress

Cause possible 3 : En raison d'une indisponibilité réseau ou de permissions insuffisantes, le cluster AnalyticDB for MySQL refuse la connexion distante du compte.

Solution :

Remarque

Après correction de l'erreur, redémarrez la tâche.

Exemple :

DTS-70004:execute statement failed: /*aaaaaaaaaaMysqlEngine(27)*/update `xxx`.`yyy` set... cause: SQLException: null, message from server: "Host '192.10.XX.XX' isnot allowed to connect to this MySQL server"

Cause possible 4 : La table spécifiée n'existe pas.

Solutions :

  • Vérifiez si la table a été supprimée de la base de destination.

  • Assurez-vous que le schéma de la table a bien été synchronisé ou migré vers la base cible.

Remarque

Une fois l'erreur résolue, redémarrez la tâche.

Exemple :

DTS-70004: execute statement failed: /*bg6l15vf29l1b0vMysqlEngine(16)*/insertinto `xxx`.`yyy` ... error detail message:Table 'xxx.yyy' doesn't existMySQLSyntaxErrorException: Table 'xxx.yyy' doesn't exist

Cause possible 5 : Violation des contraintes d'intégrité de la base (par exemple, insertion de valeurs NULL dans une colonne NOT NULL).

Solution : Examinez les schémas de tables ainsi que les enregistrements concernés par les instructions DML. Alignez les schémas source et cible ou corrigez les données, puis redémarrez la tâche.

Exemple :

DTS-70004: execute statement failed:/*o3z5bntMysqlEngine(0)*/insert into`xxx`.`yyy` ...error detail message:Column 'aaa' cannot be nullMySQLIntegrityConstraintViolationException: Column 'aaa' cannot be null

Cause possible 6 : Le compte de la base de destination manque des permissions requises.

Solution : Vérifiez si le compte de destination possède les permissions indiquées dans le message d'erreur. Le cas échéant, accordez-les et redémarrez la tâche.

Exemple :

DTS-70004: execute statement failed:/*s2gb356ds228bt8MysqlEngine(0)*/insert into `xxx`.`yyy` (`...`)values(...)error detail message:INSERT command denied to user'user'@'100.104.175.31' for table 'yyy' MySQLSyntaxErrorException: INSERTcommand denied to user 'user'@'100.104.175.31' for table 'yyy'

DTS-70019

Description du problème : la colonne spécifiée n'existe pas.

Causes possibles :

  • Lors de la configuration de la tâche de migration des données, le type de migration Schema Migration n'a pas été sélectionné. Par conséquent, les schémas des tables dans les bases de données source et cible sont incohérents.

  • Après la configuration de la tâche, des instructions DDL ont été exécutées dans la base de données source ou cible pour modifier les schémas des tables. Cela entraîne une incohérence entre les schémas des tables source et cible.

Solution : modifiez les schémas des tables dans les bases de données source et cible afin de garantir leur cohérence.

Remarque

Si les causes précédentes ne correspondent pas à votre situation, essayez les solutions suivantes :

  • Redémarrez la tâche pour vérifier si elle peut reprendre.

  • Retirez les tables de la liste des objets à synchroniser, puis ajoutez-les à nouveau afin de vérifier si la tâche peut reprendre.

Exemple :

DTS-70019: Can not find column [column_in_source<-->column_in_target] in target table db_name.table_name

DTS-71016

Description du problème : impossible de se connecter à la base de données cible.

Cause possible 1 : le nombre de connexions à la base de données cible a atteint sa limite supérieure.

Solution : augmentez le nombre maximal de connexions autorisées pour la base de données cible, puis redémarrez la tâche.

Exemple :

DTS-71016: connect target failed (url: jdbc:mysql://ip_address:port?parameters)cause: MySQLNonTransientConnectionException: Data source rejected establishmentof connection, message from server: "Too many connections"

Cause possible 2 : un nombre excessif d'échecs de connexion provenant de la même adresse IP sur une courte période a provoqué le blocage des nouvelles connexions.

Solution : corrigez l'erreur au niveau de la base de données cible. Vous pouvez par exemple augmenter la valeur du paramètre MAX_CONNECTION_ERRORS, puis redémarrer la tâche.

Exemple :

DTS-71016: connect target failed (url: jdbc:mysql://ip_address:port?parameters)cause: SQLException: null, message from server: "Host 'ip_address' isblocked because of many connection errors; unblock with 'mysqladminflush-hosts'"

DTS-1051009

Description du problème : une exception survient lorsque DTS analyse les journaux binaires d'une base de données MySQL.

Cause possible : les schémas stockés dans les journaux binaires de la base de données MySQL diffèrent de ceux enregistrés dans DTS. Cette incohérence se produit lorsqu'une instruction DDL modifiant le schéma d'une table n'est pas consignée dans les journaux binaires. DTS ne peut alors pas analyser cette instruction DDL ni mettre à jour le schéma. Par exemple, vous exécutez l'instruction SET SESSION sql_log_bin=0 pour changer le type d'un champ de INT(11) à BIGINT(20).

Solution : mettez à jour les schémas stockés dans DTS. Contactez le support technique d'Alibaba Cloud.

Exemple :

java.IOEException: java.lang.IllegalArgumentException: Valid type fail, Column:column_name,Type:type_number

DTS-100047

Description du problème : la connexion entre DTS et une instance de base de données expire.

Cause possible : les paramètres liés au délai d'expiration sont définis sur des valeurs trop faibles pour l'instance de base de données.

Solution : augmentez les valeurs des paramètres net_read_timeout et net_write_timeout, puis redémarrez la tâche.

Exemple :

****
FatalAnyAllException:common:DTS-100047:retry0times,4791628seconds,whichexceedthesupposed600seconds
CriticalAnyAllException:framework:DTS-31009:readsourcedataerror
****