

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Résolution des problèmes de AWS Glue
<a name="troubleshooting-glue"></a>

 Si vous rencontrez des problèmes lors de l' AWS Glue utilisation, consultez les rubriques de cette section. 


|  | 
| --- |
|  Pour le dépannage d'Apache Spark dans AWS Glue, voir Résolution des [problèmes liés à l'IA générative pour Apache Spark AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/troubleshoot-spark.html), qui fournit une assistance basée sur l'IA pour diagnostiquer et résoudre les problèmes liés aux tâches Spark. Transformez votre résolution des problèmes liés à Apache Spark grâce à notre agent de dépannage basé sur l'IA, qui prend désormais en charge tous les principaux modes de déploiement, notamment AWS Glue Amazon EMR-EC2, Amazon EMR-Serverless et Amazon AI Notebooks. SageMaker Ce puissant agent élimine les processus de débogage complexes en combinant des interactions en langage naturel, une analyse de la charge de travail en temps réel et des recommandations de code intelligent dans une expérience fluide. Pour plus de détails sur l'implémentation, reportez-vous à la section [Qu'est-ce que l'agent de résolution des problèmes Apache Spark pour Amazon EMR ?](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/spark-troubleshoot.html)  | 

**Topics**
+ [Collecte d'informations AWS Glue de dépannage](troubleshooting-contact-support.md)
+ [Résolution des erreurs de configuration courantes de Glue](glue-troubleshooting-errors.md)
+ [Erreurs du robot lorsqu’il utilise les autorisations de Lake Formation](error-crawler-config-lf.md)
+ [Résolution AWS Glue des erreurs Ray liées aux journaux](troubleshooting-ray.md)
+ [Exceptions AWS Glue liées au machine learning](exceptions-machine-learning.md)
+ [AWS Glue quotas](troubleshooting-service-limits.md)

# Collecte d'informations AWS Glue de dépannage
<a name="troubleshooting-contact-support"></a>

Si vous rencontrez des erreurs ou un comportement inattendu AWS Glue et que vous devez les contacter AWS Support, vous devez d'abord recueillir des informations sur IDs les noms et les journaux associés à l'action ayant échoué. La disponibilité de ces informations peut vous aider Support à résoudre les problèmes que vous rencontrez. 

En plus de votre *ID de compte*, collectez les informations suivantes pour chacun de ces types de défaillances :

**Lorsqu'un crawler échoue, collectez les informations suivantes :**  
+ Nom du crawler

  Les journaux des exécutions des robots d'exploration se trouvent dans CloudWatch Logs sous`/aws-glue/crawlers`.

**Lorsqu'une connexion de test échoue, collectez les informations suivantes :**  
+ Connection name (Nom de la connexion)
+ ID de connexion
+ La chaîne de connexion JDBC au format `jdbc:protocol://host:port/database-name`.

  Les journaux des connexions de test se trouvent dans CloudWatch Logs sous` /aws-glue/testconnection`. 

**Lorsqu'une tâche échoue, collectez les informations suivantes :**  
+ Nom du job 
+ ID d'exécution de la tâche au format `jr_xxxxx`.

  Les journaux des exécutions de tâches se trouvent dans CloudWatch Logs sous` /aws-glue/jobs`. 

# Résolution des erreurs de configuration courantes de Glue
<a name="glue-troubleshooting-errors"></a>

Si vous rencontrez des erreurs AWS Glue, utilisez les informations suivantes pour vous aider à trouver la source des problèmes et à les résoudre.

**Note**  
 Le AWS Glue GitHub référentiel contient des conseils de dépannage supplémentaires dans [AWS Glue les questions fréquemment posées](https://github.com/aws-samples/aws-glue-samples/blob/master/FAQ_and_How_to.md). 

**Topics**
+ [Erreur : Ressource non disponible](#error-resource-unavailable)
+ [Erreur : Impossible de trouver le point de terminaison S3 ou la passerelle NAT du subnetId dans VPC](#error-s3-subnet-vpc-NAT-configuration)
+ [Erreur : Règle de trafic entrant obligatoire dans le groupe de sécurité](#error-inbound-self-reference-rule)
+ [Erreur : Règle de trafic sortant obligatoire dans le groupe de sécurité](#error-outbound-self-reference-rule)
+ [Erreur : L'exécution du Job a échoué car le rôle transmis doit être autorisé à assumer le rôle pour le AWS Glue service](#error-assume-role-user-policy)
+ [Erreur : l' DescribeVpcEndpoints action n'est pas autorisée. impossible de valider l'ID VPC vpc-id](#error-DescribeVpcEndpoints-permission)
+ [Erreur : l' DescribeRouteTables action n'est pas autorisée. impossible de valider l'identifiant du sous-réseau : ID du sous-réseau dans l'identifiant du VPC : vpc-id](#error-DescribeRouteTables-permission)
+ [Erreur : Impossible d'appeler ec2 : DescribeSubnets](#error-DescribeSubnets-permission)
+ [Erreur : Impossible d'appeler ec2 : DescribeSecurityGroups](#error-DescribeSecurityGroups-permission)
+ [Erreur : Impossible de trouver le sous-réseau pour la zone de disponibilité](#error-az-not-available)
+ [Erreur : Exception d'exécution de tâche lors d'écriture sur une cible JDBC](#error-job-run-jdbc-target)
+ [Erreur : Amazon S3 : l’opération n’est pas valide pour la classe de stockage de l’objet](#error-s3-operation-not-valid)
+ [Erreur : Délai Amazon S3](#error-s3-timeout)
+ [Erreur : Accès à Amazon S3 refusé](#error-s3-access-denied)
+ [Erreur : L'identifiant de la clé d'accès Amazon S3 n'existe pas](#error-s3-accesskeyid-not-found)
+ [Erreur : l'exécution d'une tâche échoue lors de l'accès à Amazon S3 avec un URI `s3a://`](#error-s3a-uri-directory-listing)
+ [Erreur : Le jeton de service Amazon S3 a expiré](#error-s3-service-token-expired)
+ [Erreur : Aucun DNS privé trouvé pour l'interface réseau](#error-no-private-DNS)
+ [Erreur : Échec de l'allocation du point de terminaison de développement](#error-development-endpoint-failed)
+ [Erreur : Serveur de bloc-notes CREATE\$1FAILED](#error-notebook-server-ec2-instance-profile)
+ [Erreur : Échec du démarrage du bloc-notes local](#error-local-notebook-fails-to-start)
+ [Erreur : Échec de l'exécution du crawler](#error-running-crawler-failed)
+ [Erreur : les partitions n'ont pas été mises à jour](#error-update-from-job-partitions)
+ [Erreur : la mise à jour du signet de tâche a échoué en raison d'une incompatibilité de version](#error-job-bookmarks-limitation)
+ [Erreur : Une tâche retraite des données lorsque les signets de tâche sont activés](#error-job-bookmarks-reprocess-data)
+ [Erreur : comportement de basculement entre VPCs AWS Glue](#vpc-failover-behavior-error-10)

## Erreur : Ressource non disponible
<a name="error-resource-unavailable"></a>

En cas de AWS Glue renvoi d'un message indiquant que la ressource n'est pas disponible, vous pouvez consulter les messages d'erreur ou les journaux pour en savoir plus sur le problème. Les tâches suivantes décrivent des méthodes générales permettant de résoudre des problèmes.
+ Pour tous les points de terminaison de connexion et de développement que vous utilisez, vérifiez que votre cluster n'est pas à court d'interfaces réseau Elastic.

## Erreur : Impossible de trouver le point de terminaison S3 ou la passerelle NAT du subnetId dans VPC
<a name="error-s3-subnet-vpc-NAT-configuration"></a>

Vérifiez l'ID du sous-réseau et l'ID du VPC dans le message afin de diagnostiquer le problème rencontré.
+ Vérifiez que vous disposez d'un point de terminaison d'un VPC Amazon S3 configuré, ce qui est obligatoire avec AWS Glue. En outre, vérifiez votre passerelle NAT, si celle-ci fait partie de votre configuration. Pour de plus amples informations, veuillez consulter [Types de points de terminaison d'un VPC pour Amazon S3](vpc-endpoints-s3.md).

## Erreur : Règle de trafic entrant obligatoire dans le groupe de sécurité
<a name="error-inbound-self-reference-rule"></a>

Au moins un groupe de sécurité doit ouvrir tous les ports d'entrée. Pour limiter le trafic, le groupe de sécurité source de votre règle de trafic entrant peut être limité au même groupe de sécurité.
+ Pour toutes les connexions que vous utilisez, vérifiez que votre groupe de sécurité possède une règle de trafic entrant avec référence circulaire. Pour de plus amples informations, veuillez consulter [Configuration de l'accès réseau aux magasins de données](start-connecting.md).
+ Lorsque vous utilisez un point de terminaison de développement, vérifiez que votre groupe de sécurité possède une règle de trafic entrant avec référence circulaire. Pour de plus amples informations, veuillez consulter [Configuration de l'accès réseau aux magasins de données](start-connecting.md).

## Erreur : Règle de trafic sortant obligatoire dans le groupe de sécurité
<a name="error-outbound-self-reference-rule"></a>

Au moins un groupe de sécurité doit ouvrir tous les ports de sortie. Pour limiter le trafic, le groupe de sécurité source de votre règle de trafic sortant peut être limité au même groupe de sécurité.
+ Pour toutes les connexions que vous utilisez, vérifiez que votre groupe de sécurité possède une règle de trafic sortant avec référence circulaire. Pour de plus amples informations, veuillez consulter [Configuration de l'accès réseau aux magasins de données](start-connecting.md).
+ Lorsque vous utilisez un point de terminaison de développement, vérifier que votre groupe de sécurité possède une règle de trafic sortant avec référence circulaire. Pour de plus amples informations, veuillez consulter [Configuration de l'accès réseau aux magasins de données](start-connecting.md).

## Erreur : L'exécution du Job a échoué car le rôle transmis doit être autorisé à assumer le rôle pour le AWS Glue service
<a name="error-assume-role-user-policy"></a>

L'utilisateur qui définit une tâche doit avoir l'autorisation pour `iam:PassRole` pour AWS Glue.
+ Lorsqu'un utilisateur crée une AWS Glue tâche, vérifiez que le rôle de l'utilisateur contient une politique contenant `iam:PassRole` pour AWS Glue. Pour de plus amples informations, veuillez consulter [Étape 3 : attacher une politique aux utilisateurs ou aux groupes accédant à AWS Glue](attach-policy-iam-user.md).

## Erreur : l' DescribeVpcEndpoints action n'est pas autorisée. impossible de valider l'ID VPC vpc-id
<a name="error-DescribeVpcEndpoints-permission"></a>
+ Vérifiez la politique transmise AWS Glue pour `ec2:DescribeVpcEndpoints` obtenir l'autorisation.

## Erreur : l' DescribeRouteTables action n'est pas autorisée. impossible de valider l'identifiant du sous-réseau : ID du sous-réseau dans l'identifiant du VPC : vpc-id
<a name="error-DescribeRouteTables-permission"></a>
+ Vérifiez la politique transmise AWS Glue pour `ec2:DescribeRouteTables` obtenir l'autorisation.

## Erreur : Impossible d'appeler ec2 : DescribeSubnets
<a name="error-DescribeSubnets-permission"></a>
+ Vérifiez la politique transmise AWS Glue pour `ec2:DescribeSubnets` obtenir l'autorisation.

## Erreur : Impossible d'appeler ec2 : DescribeSecurityGroups
<a name="error-DescribeSecurityGroups-permission"></a>
+ Vérifiez la politique transmise AWS Glue pour ` ec2:DescribeSecurityGroups` obtenir l'autorisation.

## Erreur : Impossible de trouver le sous-réseau pour la zone de disponibilité
<a name="error-az-not-available"></a>
+ La zone de disponibilité n'est peut-être pas disponible pour AWS Glue. Créez et utilisez un sous-réseau dans une autre zone de disponibilité que celle indiquée dans le message.

## Erreur : Exception d'exécution de tâche lors d'écriture sur une cible JDBC
<a name="error-job-run-jdbc-target"></a>

Lorsque vous exécutez une tâche qui écrit sur une cible JDBC, la tâche peut rencontrer des erreurs dans les scénarios suivants :
+ Si votre tâche écrit sur une table Microsoft SQL Server, que la table comporte des colonnes définies de type `Boolean`, alors que la table doit être prédéfinie dans la base de données SQL Server. Lorsque vous définissez la tâche sur la AWS Glue console à l'aide d'une cible SQL Server avec l'option **Créer des tables dans votre cible de données**, ne mappez aucune colonne source à une colonne cible contenant un type de données`Boolean`. Vous pourriez rencontrer une erreur lors de l'exécution de la tâche.

  Vous pouvez éviter cette erreur en procédant comme suit :
  + Choisissez une table existante avec la colonne **Boolean** (Booléen).
  + Modifiez la transformation `ApplyMapping` et mappez la colonne **Boolean** (Booléen) dans la source à un nombre ou à une chaîne de la cible.
  + Modifiez la transformation `ApplyMapping` pour supprimer la colonne **Boolean** (Booléen) de la source.
+ Si votre tâche écrit sur une table Oracle, vous devrez peut-être ajuster la longueur des noms des objets Oracle. Dans certaines versions d'Oracle, la longueur maximale d'un identifiant est limitée à 30 octets ou 128 octets. Cette limite affecte les noms de tables et les noms de colonnes des magasins de données cibles Oracle.

  Vous pouvez éviter cette erreur en procédant comme suit :
  + Nommez les tables cibles Oracle en respectant la dans la limite de votre version.
  + Les noms de colonnes par défaut sont générés à partir des noms de champs dans les données. Dans les situations où les noms des colonnes excèdent la limite, utilisez les transformations `ApplyMapping` ou `RenameField` pour modifier le nom de la colonne afin de respecter de la limite.

## Erreur : Amazon S3 : l’opération n’est pas valide pour la classe de stockage de l’objet
<a name="error-s3-operation-not-valid"></a>

Si cette erreur est AWS Glue renvoyée, votre AWS Glue tâche a peut-être consisté à lire des données à partir de tables comportant des partitions entre les différents niveaux de classe de stockage Amazon S3.
+ En utilisant des exclusions de classes de stockage, vous pouvez vous assurer que vos AWS Glue tâches fonctionneront sur des tables comportant des partitions entre ces niveaux de classe de stockage. Sans exclusion, les tâches qui lisent les données de ces niveaux échouent avec l’erreur suivante : `AmazonS3Exception: The operation is not valid for the object's storage class`.

  Pour de plus amples informations, veuillez consulter [Exclusion des classes de stockage Amazon S3](aws-glue-programming-etl-storage-classes.md).

## Erreur : Délai Amazon S3
<a name="error-s3-timeout"></a>

S'il AWS Glue renvoie une erreur d'expiration du délai de connexion, cela peut être dû au fait qu'il tente d'accéder à un compartiment Amazon S3 dans une autre AWS région. 
+ Un point de terminaison Amazon S3 VPC peut uniquement acheminer le trafic vers des compartiments au sein d'une région. AWS Si vous avez besoin de vous connecter à des compartiments dans d'autres régions, vous pouvez utiliser une passerelle NAT pour contourner ce problème. Pour plus d’informations, consultez [Passerelles NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html).

## Erreur : Accès à Amazon S3 refusé
<a name="error-s3-access-denied"></a>

Si AWS Glue un message d'erreur de refus d'accès est renvoyé à un compartiment ou à un objet Amazon S3, cela peut être dû au fait que le rôle IAM fourni ne dispose pas d'une politique autorisant l'accès à votre magasin de données.
+ Une tâche ETL doit avoir accès à un magasin de données Amazon S3 utilisé comme source ou cible. Un crawler doit avoir accès à un magasin de données Amazon S3 qu'il analyse. Pour de plus amples informations, veuillez consulter [Étape 2 : créer un rôle IAM pour AWS Glue](create-an-iam-role.md).

## Erreur : L'identifiant de la clé d'accès Amazon S3 n'existe pas
<a name="error-s3-accesskeyid-not-found"></a>

Si une erreur AWS Glue renvoie une clé d'accès ID n'existe pas lors de l'exécution d'une tâche, cela peut être dû à l'une des raisons suivantes :
+ Une tâche ETL utilise un rôle IAM pour accéder aux banques de données, confirmez que le rôle IAM de votre tâche n'a pas été supprimé avant que la tâche commence.
+ Un rôle IAM contient des autorisations permettant d'accéder à vos magasins de données, confirmez que la stratégie Amazon S3 attachée contenant `s3:ListBucket` est correcte.

## Erreur : l'exécution d'une tâche échoue lors de l'accès à Amazon S3 avec un URI `s3a://`
<a name="error-s3a-uri-directory-listing"></a>

Si une tâche renvoie une erreur similaire à *Échec de l'analyse d'un document XML avec une classe de gestionnaire *, la raison peut en être une défaillance lors de l'affichage de centaines de fichiers à l'aide d'un URI ` s3a://`. Accédez plutôt à votre magasin de données à l'aide d'un URI `s3://`. Le suivi de l'exception suivant met en évidence les erreurs à rechercher :

```
1.	com.amazonaws.SdkClientException: Failed to parse XML document with handler class com.amazonaws.services.s3.model.transform.XmlResponsesSaxParser$ListBucketHandler
2.	at com.amazonaws.services.s3.model.transform.XmlResponsesSaxParser.parseXmlInputStream(XmlResponsesSaxParser.java:161)
3.	at com.amazonaws.services.s3.model.transform.XmlResponsesSaxParser.parseListBucketObjectsResponse(XmlResponsesSaxParser.java:317)
4.	at com.amazonaws.services.s3.model.transform.Unmarshallers$ListObjectsUnmarshaller.unmarshall(Unmarshallers.java:70)
5.	at com.amazonaws.services.s3.model.transform.Unmarshallers$ListObjectsUnmarshaller.unmarshall(Unmarshallers.java:59)
6.	at com.amazonaws.services.s3.internal.S3XmlResponseHandler.handle(S3XmlResponseHandler.java:62)
7.	at com.amazonaws.services.s3.internal.S3XmlResponseHandler.handle(S3XmlResponseHandler.java:31)
8.	at com.amazonaws.http.response.AwsResponseHandlerAdapter.handle(AwsResponseHandlerAdapter.java:70)
9.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleResponse(AmazonHttpClient.java:1554)
10.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1272)
11.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1056)
12.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:743)
13.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:717)
14.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:699)
15.	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:667)
16.	at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:649)
17.	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:513)
18.	at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:4325)
19.	at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:4272)
20.	at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:4266)
21.	at com.amazonaws.services.s3.AmazonS3Client.listObjects(AmazonS3Client.java:834)
22.	at org.apache.hadoop.fs.s3a.S3AFileSystem.getFileStatus(S3AFileSystem.java:971)
23.	at org.apache.hadoop.fs.s3a.S3AFileSystem.deleteUnnecessaryFakeDirectories(S3AFileSystem.java:1155)
24.	at org.apache.hadoop.fs.s3a.S3AFileSystem.finishedWrite(S3AFileSystem.java:1144)
25.	at org.apache.hadoop.fs.s3a.S3AOutputStream.close(S3AOutputStream.java:142)
26.	at org.apache.hadoop.fs.FSDataOutputStream$PositionCache.close(FSDataOutputStream.java:74)
27.	at org.apache.hadoop.fs.FSDataOutputStream.close(FSDataOutputStream.java:108)
28.	at org.apache.parquet.hadoop.ParquetFileWriter.end(ParquetFileWriter.java:467)
29.	at org.apache.parquet.hadoop.InternalParquetRecordWriter.close(InternalParquetRecordWriter.java:117)
30.	at org.apache.parquet.hadoop.ParquetRecordWriter.close(ParquetRecordWriter.java:112)
31.	at org.apache.spark.sql.execution.datasources.parquet.ParquetOutputWriter.close(ParquetOutputWriter.scala:44)
32.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$SingleDirectoryWriteTask.releaseResources(FileFormatWriter.scala:252)
33.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$$anonfun$org$apache$spark$sql$execution$datasources$FileFormatWriter$$executeTask$3.apply(FileFormatWriter.scala:191)
34.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$$anonfun$org$apache$spark$sql$execution$datasources$FileFormatWriter$$executeTask$3.apply(FileFormatWriter.scala:188)
35.	at org.apache.spark.util.Utils$.tryWithSafeFinallyAndFailureCallbacks(Utils.scala:1341)
36.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$.org$apache$spark$sql$execution$datasources$FileFormatWriter$$executeTask(FileFormatWriter.scala:193)
37.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$$anonfun$write$1$$anonfun$3.apply(FileFormatWriter.scala:129)
38.	at org.apache.spark.sql.execution.datasources.FileFormatWriter$$anonfun$write$1$$anonfun$3.apply(FileFormatWriter.scala:128)
39.	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87)
40.	at org.apache.spark.scheduler.Task.run(Task.scala:99)
41.	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:282)
42.	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
43.	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
44.	at java.lang.Thread.run(Thread.java:748)
```

## Erreur : Le jeton de service Amazon S3 a expiré
<a name="error-s3-service-token-expired"></a>

Lors du transfert de données vers et depuis Amazon Redshift, des informations d'identification Amazon S3 temporaires qui expirent au bout d'une heure sont utilisées. Si vous avez une tâche de longue durée, elle peut échouer. Pour plus d'informations sur la façon de configurer vos tâches de longue durée pour déplacer des données vers et à partir d'Amazon Redshift, veuillez consulter [aws-glue-programming-etl-connect-redshift-home](aws-glue-programming-etl-connect-redshift-home).

## Erreur : Aucun DNS privé trouvé pour l'interface réseau
<a name="error-no-private-DNS"></a>

Si une tâche échoue ou si l'allocation d'un point de terminaison échoue, cela peut être dû à un problème de configuration réseau.
+ Si vous utilisez le DNS fourni par Amazon, la valeur de `enableDnsHostnames` doit être défini sur true. Pour plus d'informations, consultez [DNS](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html). 

## Erreur : Échec de l'allocation du point de terminaison de développement
<a name="error-development-endpoint-failed"></a>

Si le provisionnement d'un point de terminaison de développement AWS Glue échoue, cela peut être dû à un problème de configuration réseau.
+ Lorsque vous définissez un point de terminaison de développement, le VPC, le sous-réseau et les groupes de sécurité sont validés pour confirmer qu'ils répondent à certaines exigences.
+ Si vous avez fourni la clé publique SSH facultative, vérifiez qu'il s'agit d'une clé publique SSH valide.
+ Vérifiez dans la console VPC que votre VPC utilise **DHCP option set** (Jeu d'options DHCP) valide. Pour plus d'informations, consultez [Jeux d'options DHCP](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html). 
+ Si le cluster reste dans l'état PROVISIONING (APPROVISIONNEMENT EN COURS), contactez AWS Support.

## Erreur : Serveur de bloc-notes CREATE\$1FAILED
<a name="error-notebook-server-ec2-instance-profile"></a>

Si vous AWS Glue ne parvenez pas à créer le serveur bloc-notes pour un point de terminaison de développement, cela peut être dû à l'un des problèmes suivants : 
+ AWS Glue transmet un rôle IAM à Amazon EC2 lors de la configuration du serveur de blocs-notes. Le rôle IAM doit avoir une relation d'approbation avec Amazon EC2.
+ Le rôle IAM doit avoir un profil d'instance du même nom. Lorsque vous créez le rôle pour Amazon EC2 avec la console IAM, le profil d'instance avec le même nom est automatiquement créé. Recherchez un message d'erreur dans le journal concernant un nom de profil d'instance ` iamInstanceProfile.name` non valide. Pour plus d’informations, consultez [Using Instance Profiles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html). 
+ Vérifiez que votre rôle est autorisé à accéder aux compartiments `aws-glue*` dans la stratégie que vous transmettez pour créer le serveur de bloc-notes. 

## Erreur : Échec du démarrage du bloc-notes local
<a name="error-local-notebook-fails-to-start"></a>

Si votre bloc-notes local ne démarre pas et renvoie des messages d'erreur indiquant qu'un répertoire ou dossier est introuvable, cela peut être dû à l'un des problèmes suivants : 
+ Si vous travaillez sous Microsoft Windows, assurez-vous que la variable d'environnement `JAVA_HOME` pointe vers le répertoire Java correct. Il est possible de mettre à jour Java sans mettre à jour cette variable, et si celle-ci pointe vers un dossier qui n'existe plus, les blocs-notes Jupyter échouent à démarrer.

## Erreur : Échec de l'exécution du crawler
<a name="error-running-crawler-failed"></a>

Si vous AWS Glue ne parvenez pas à exécuter un robot d'exploration pour cataloguer vos données, cela peut être dû à l'une des raisons suivantes. Commencez par vérifier si une erreur figure dans la liste des crawlers de la console AWS Glue . Vérifiez s'il y a une icône de point d'exclamation en regard du nom du crawler et passez la souris sur l'icône pour affichez les messages associés. 
+ Consultez les journaux du robot d'exploration exécuté dans CloudWatch Logs under`/aws-glue/crawlers`.

## Erreur : les partitions n'ont pas été mises à jour
<a name="error-update-from-job-partitions"></a>

Si vos partitions n'ont pas été mises à jour dans le catalogue de données lorsque vous avez exécuté une tâche ETL, ces instructions de journal provenant de la `DataSink` classe figurant dans les CloudWatch journaux peuvent être utiles :
+ « `Attempting to fast-forward updates to the Catalog - nameSpace:` » – Indique la base de données, la table et le catalogID que la tâche a tenté de modifier. Si cette instruction n'est pas ici, vérifiez si `enableUpdateCatalog` a la valeur true et qu'elle est correctement passée en tant que paramètre `getSink()` ou dans ` additional_options`.
+ « `Schema change policy behavior:` » – Affiche la valeur du schéma ` updateBehavior` que vous avez transmise.
+ « `Schemas qualify (schema compare):` » – Sera vrai ou faux.
+ « `Schemas qualify (case-insensitive compare):` » – Sera vrai ou faux.
+ Si les deux valeurs sont fausses et `updateBehavior` que votre valeur n'est pas définie sur` UPDATE_IN_DATABASE`, votre DynamicFrame schéma doit être identique ou contenir un sous-ensemble des colonnes figurant dans le schéma de table du catalogue de données. 

Pour en savoir plus sur la mise à jour des partitions, consultez [Mise à jour du schéma et ajout de nouvelles partitions dans le catalogue de données à l’aide des tâches AWS Glue ETL](update-from-job.md).

## Erreur : la mise à jour du signet de tâche a échoué en raison d'une incompatibilité de version
<a name="error-job-bookmarks-limitation"></a>

Vous essayez peut-être de paramétrer des AWS Glue tâches pour les appliquer à différents ensembles transformation/logic de données dans Amazon S3. Vous voulez suivre les fichiers traités sur les emplacements fournis. Lorsque vous exécutez la même tâche sur le même compartiment source et que vous écrivez simultanément sur la same/different destination (simultanéité >1), la tâche échoue avec cette erreur :

```
py4j.protocol.Py4JJavaError: An error occurred while callingz:com.amazonaws.services.glue.util.Job.commit.:com.amazonaws.services.gluejobexecutor.model.VersionMismatchException: Continuation update failed due to version mismatch. Expected version 2 but found version 3
```

Solution : définissez la concurrence sur 1 ou n'exécutez pas la tâche simultanément.

Actuellement, AWS Glue les favoris ne prennent pas en charge les exécutions de tâches simultanées et les validations échoueront.

## Erreur : Une tâche retraite des données lorsque les signets de tâche sont activés
<a name="error-job-bookmarks-reprocess-data"></a>

Dans certains cas, vous avez activé les signets de AWS Glue tâches, mais votre tâche ETL retraite des données qui ont déjà été traitées lors d'une exécution précédente. Vérifiez si l'origine de l'erreur est l'une des causes suivantes : 

**Simultanéité max.**  
Le fait de définir un nombre maximal d’exécutions simultanées pour la tâche supérieur à la valeur par défaut de 1 peut interférer avec les signets des tâches. Cela peut se produire lorsque les signets de tâche vérifient l’heure de la dernière modification des objets afin de contrôler quels objets doivent être traités à nouveau. Pour plus d'informations, consultez la discussion sur la simultanéité maximale dans [Configuration des propriétés des tâches pour les tâches Spark dans AWS Glue](add-job.md).

**Objet de tâche manquant**  
Assurez-vous que votre script d'exécution de tâche se termine par les éléments suivants :

```
job.commit()
```

Lorsque vous incluez cet objet, AWS Glue enregistre l'horodatage et le chemin de la tâche exécutée. Si vous réexécutez la tâche avec le même chemin, seuls AWS Glue les nouveaux fichiers seront traités. Si vous n'incluez pas cet objet et si les signets de tâche sont activés, la tâche retraite les fichiers déjà traités en même temps que les nouveaux fichiers et crée une redondance dans le magasin de données cible de la tâche.

**Paramètre de contexte de transformation manquant**  
Le contexte de transformation est un paramètre facultatif dans la classe `GlueContext`, mais les signets de tâche ne fonctionnent pas si vous ne l'incluez pas. Pour résoudre cette erreur, ajoutez le paramètre de contexte de transformation lorsque vous [créez le DynamicFrame](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-extensions-glue-context.html#aws-glue-api-crawler-pyspark-extensions-glue-context-create_dynamic_frame_from_catalog), comme indiqué ci-dessous :

```
sample_dynF=create_dynamic_frame_from_catalog(database, table_name,transformation_ctx="sample_dynF") 
```

**Source d'entrée**  
Si vous utilisez une base de données relationnelle (une connexion JDBC) pour la source d'entrée, les signets de travail fonctionnent uniquement si les clés primaires de la table sont classées par ordre séquentiel. Les signets de tâche fonctionnent pour les nouvelles lignes, mais pas pour les lignes mises à jour. En effet, les signets de tâche recherchent les clés primaires, qui existent déjà. Cela ne s'applique pas si la source des entrées est Amazon Simple Storage Service (Amazon S3).

**Heure de la dernière modification**  
Pour les sources d'entrée Amazon S3, les signets de tâche vérifient l'heure de la dernière modification des objets, au lieu des noms de fichier, afin de contrôler quels objets doivent être retraités. Si les données de la source d'entrée ont été modifiées depuis votre dernière exécution de tâche, les fichiers sont traités de nouveau lorsque vous exécutez la tâche à nouveau. 

## Erreur : comportement de basculement entre VPCs AWS Glue
<a name="vpc-failover-behavior-error-10"></a>

Le processus suivant est utilisé pour le basculement des tâches dans les versions AWS Glue 5.1 et antérieures.

Résumé : une AWS Glue connexion est sélectionnée au moment de l'envoi d'une tâche. Si l'exécution de la tâche rencontre des problèmes (manque d'adresses IP, connectivité à la source, problème de routage), l'exécution de la tâche échouera. Si de nouvelles tentatives sont configurées, je AWS Glue réessaierai avec la même connexion.

1. À chaque tentative d'exécution, AWS Glue vérifie l'état des connexions dans l'ordre indiqué dans la configuration de la tâche, jusqu'à ce qu'il en trouve une utilisable. En cas de défaillance d’une zone de disponibilité (AZ), les connexions provenant de cette zone échoueront à la vérification et seront ignorées.

1. AWS Glue valide la connexion avec ce qui suit :
   + vérification de la validité de l'identifiant et du sous-réseau Amazon VPC ;
   + vérification de l'existence d'une passerelle NAT ou d'un point de terminaison Amazon VPC ;
   + vérification que le sous-réseau dispose de plus de zéro adresse IP allouée ;
   + vérification que la zone de disponibilité est saine.

   AWS Glue Impossible de vérifier la connectivité au moment de la soumission de l'exécution de la tâche.

1. Pour les tâches utilisant Amazon VPC, tous les pilotes et exécuteurs seront créés dans la même zone de disponibilité avec la connexion sélectionnée au moment de la soumission de l'exécution de la tâche.

1. Si de nouvelles tentatives sont configurées, je AWS Glue réessaierai avec la même connexion. En effet, nous ne pouvons pas garantir que les problèmes liés à cette connexion dureront longtemps. Si une zone de disponibilité échoue, les exécutions de tâches existantes (en fonction de l'étape de l'exécution de la tâche) dans cette zone de disponibilité peuvent échouer. Une nouvelle tentative devrait détecter un échec de la zone de disponibilité et choisir une autre zone pour la nouvelle exécution.

# Erreurs du robot lorsqu’il utilise les autorisations de Lake Formation
<a name="error-crawler-config-lf"></a>

Utilisez les informations ci-dessous pour diagnostiquer et résoudre divers problèmes lors de la configuration du Crawler à l'aide des informations d'identification de Lake Formation.

## Erreur : l'emplacement S3 : s3://examplepath n'est pas enregistré
<a name="error-s3-location"></a>

Pour qu'un Crawler puisse s'exécuter à l'aide des informations d'identification de Lake Formation, vous devez d'abord configurer les autorisations Lake Formation. Pour résoudre cette erreur, veuillez enregistrer l'emplacement Amazon S3 cible dans Lake Formation. Pour plus d’informations, consultez la rubrique [Enregistrement d’un emplacement Amazon S3](https://docs.aws.amazon.com/lake-formation/latest/dg/register-location.html).

## Erreur : n' User/Role est pas autorisé à exécuter : lakeformation : GetDataAccess on resource
<a name="error-role-authorization"></a>

Veuillez ajouter la permission `lakeformation:GetDataAccess` au rôle crawler à l'aide de la console IAM ou AWS CLI. Avec cette autorisation, Lake Formation accède à la demande d'informations d'identification temporaires pour accéder aux données. Consultez la politique ci-dessous :

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "lakeformation:GetDataAccess"
    ],
    "Resource": "*"
  }
}
```

------

## Erreur : autorisation(s) insuffisante(s) sur Lake Formation (nom de la base de données : ExampleDatabase, nom de la table : ExampleTable)
<a name="error-permissions"></a>

Dans la console Lake Formation ([https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)), accordez au rôle d'explorateur des autorisations d'accès (` Create`,`Describe`,`Alter`) sur la base de données, qui est spécifiée comme base de données de sortie. Vous pouvez également accorder des autorisations sur le tableau. Pour plus d'informations, consultez la rubrique [Octroi d'autorisations de base de données via la méthode de ressource nommée](https://docs.aws.amazon.com/lake-formation/latest/dg/granting-cat-perms-named-resource.html).

## Erreur : autorisation(s) insuffisante(s) pour Lake Formation sur s3://examplepath
<a name="error-location-permissions"></a>

1.  **Indexation de site web intercompte** 

   1. Connectez-vous à la console Lake Formation ([https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)) à l'aide du compte sur lequel le bucket Amazon S3 est enregistré (compte B). Accordez des autorisations d'emplacement des données au compte sur lequel le crawler sera exécuté. Cela permettra au crawler de lire les données depuis l'emplacement Amazon S3 cible. 

   1.  Dans le compte où le crawler est créé (compte A), accordez des autorisations emplacement des données sur l'emplacement Amazon S3 cible au rôle IAM utilisé pour l'exécution du crawler afin que le crawler puisse lire les données depuis la destination dans Lake Formation. Pour plus d'informations, consultez la rubrique [Octroi d'autorisations d'emplacement de données (compte externe)](https://docs.aws.amazon.com/lake-formation/latest/dg/granting-location-permissions-external.html).

1. **Indexation de site web dans le compte (le crawler et l'emplacement Amazon S3 enregistré sont dans le même compte)** : accordez des autorisations d'emplacement de données au rôle IAM utilisé pour l'exécution du crawler à l'emplacement Amazon S3 pour que le crawler puisse lire les données de la cible dans Lake Formation. Pour plus d’informations, consultez la rubrique [Octroi d’autorisations d’emplacement de données (même compte)](https://docs.aws.amazon.com/lake-formation/latest/dg/granting-location-permissions-local.html).

## Questions fréquemment posées sur la configuration du crawler à l'aide des informations d'identification Lake Formation
<a name="faq-crawler-config-lf"></a>

1.  **Comment configurer un crawler pour qu'il fonctionne à l'aide des informations d'identification Lake Formation en utilisant la AWS Console ?** 

   Dans la AWS Glue console ([https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/)), lors de la configuration du robot d'exploration, sélectionnez l'option **Utiliser les informations d'identification de Lake Formation pour analyser la source de données Amazon S3**. Pour l'exploration entre comptes, spécifiez l' Compte AWS ID auquel l'emplacement Amazon S3 cible est enregistré auprès de Lake Formation. Le champ **accountId** est facultatif pour l'indexation de site web intégrée au compte.

1.  **Comment configurer un crawler pour qu'il fonctionne à l'aide des informations d'identification Lake Formation en utilisant AWS CLI ?** 

   Lors de l'appel de l'API `CreateCrawler`, ajoutez `LakeFormationConfiguration` :

   ```
   "LakeFormationConfiguration": {
       "UseLakeFormationCredentials": true,
       "AccountId": "111111111111" (AWS account ID where the target Amazon S3 location is registered with Lake Formation)
     }
   ```

1.  **Quelles sont les cibles prises en charge pour Crawler à l'aide des informations d'identification Lake Formation ?** 

   Un Crawler utilisant les informations d'identification Lake Formation n'est pris en charge que pour Amazon S3 (indexation de site web dans le compte et entre comptes) et pour les cibles de catalogue de données dans le compte (où l'emplacement sous-jacent est Amazon S3), et dans les cibles Apache Iceberg.

1.  **Puis-je crawler plusieurs compartiments Amazon S3 au sein crawler à l'aide des informations d'identification Lake Formation ?** 

   Non. Pour les cibles d'indexation de site web utilisant le distributeur d'informations d'identification Lake Formation, les emplacements Amazon S3 sous-jacents doivent appartenir au même compartiment. Par exemple, les clients peuvent utiliser plusieurs sites cibles `(s3://bucket1/folder1, s3://bucket1/folder2)` s'ils se trouvent sous le même compartiment (bucket1). La spécification de différents compartiments (s3://bucket1/folder1, s3://bucket2/folder2) n'est pas prise en charge.

# Résolution AWS Glue des erreurs Ray liées aux journaux
<a name="troubleshooting-ray"></a>

**Important**  
AWS Glue for Ray ne sera plus ouvert aux nouveaux clients à compter du 30 avril 2026. Si vous souhaitez utiliser AWS Glue for Ray, inscrivez-vous avant cette date. Les clients existants peuvent continuer à utiliser le service normalement. Pour des fonctionnalités similaires à celles de AWS Glue for Ray, explorez Amazon EKS. Pour plus d'informations, consultez la section [AWS Glue relative à la fin du support de Ray](https://docs.aws.amazon.com/glue/latest/dg/awsglue-ray-jobs-availability-change.html).

AWS Glue fournit un accès aux journaux émis par les processus Ray pendant l'exécution du job. En cas d'erreurs ou de comportements inattendus dans les tâches Ray, collectez d'abord des informations à partir des journaux pour déterminer la cause de l'échec. Nous fournissons également des journaux similaires pour les sessions interactives. Les journaux de sessions sont identifiables par le préfixe `/aws-glue/ray/sessions`.

Les lignes de journal sont envoyées CloudWatch en temps réel, au fur et à mesure de l'exécution de votre tâche. Les instructions d'impression sont ajoutées aux CloudWatch journaux une fois l'exécution terminée. Les journaux sont conservés pendant deux semaines après l'exécution d'une tâche. 

## Inspection des journaux de tâches Ray
<a name="troubleshooting-ray-log-locations"></a>

Lorsqu'une tâche échoue, collectez le nom et l'ID d'exécution de celle-ci. Vous les trouverez dans la AWS Glue console. Accédez à la page de la tâche, puis à l'onglet **Runs** (Exécutions). Les journaux des tâches Ray sont stockés dans les groupes de CloudWatch journaux dédiés suivants.
+ `/aws-glue/ray/jobs/script-log/` : stocke les journaux émis par votre script Ray principal.
+ `/aws-glue/ray/jobs/ray-monitor-log/` : stocke les journaux émis par le processus de scalabilité automatique Ray. Ces journaux sont générés pour le nœud principal et non pour les autres composants master.
+ `/aws-glue/ray/jobs/ray-gcs-logs/` : stocke les journaux émis par le processus GCS (global control store). Ces journaux sont générés pour le nœud principal et non pour les autres composants master.
+ `/aws-glue/ray/jobs/ray-process-logs/` : stocke les journaux émis par d'autres processus Ray (principalement l'agent du tableau de bord) exécutés sur le nœud principal. Ces journaux sont générés pour le nœud principal et non pour les autres composants master.
+ ` /aws-glue/ray/jobs/ray-raylet-logs/` : stocke les journaux émis par chaque processus raylet. Ces journaux sont collectés dans un flux unique pour chaque composant master, y compris le nœud principal.
+ `/aws-glue/ray/jobs/ray-worker-out-logs/` : stocke les journaux `stdout` pour chaque travail du cluster. Ces journaux sont générés pour chaque composant master, y compris le nœud principal.
+ `/aws-glue/ray/jobs/ray-worker-err-logs/` : stocke les journaux `stderr` pour chaque travail du cluster. Ces journaux sont générés pour chaque composant master, y compris le nœud principal.
+ `/aws-glue/ray/jobs/ray-runtime-env-log/` : stocke les journaux relatifs au processus de configuration Ray. Ces journaux sont générés pour chaque composant master, y compris le nœud principal.

## Résolution des erreurs liées aux tâches Ray
<a name="troubleshooting-ray-errors"></a>

Pour comprendre l'organisation des groupes de journaux Ray et identifier les groupes de journaux qui vous aideront à résoudre vos erreurs, vous devez disposer d'informations de base sur l'architecture Ray.

Dans l' AWS Glue ETL, un worker correspond à une instance. Lorsque vous configurez des travailleurs pour une AWS Glue tâche, vous définissez le type et le nombre d'instances dédiées à la tâche. Ray utilise le terme *travail* de différentes manières. 

Ray utilise le *nœud principal* et le *composant master* pour distinguer les responsabilités d'une instance au sein d'un cluster Ray. Un composant master Ray peut héberger plusieurs processus *acteurs* qui effectuent des calculs afin d'obtenir le résultat de vos calculs distribués. Les acteurs qui exécutent une réplique d'une fonction sont appelés *réplicas*. Les réplicas d'acteurs peuvent également être appelés processus de travail. Les réplicas peuvent également s'exécuter sur le nœud principal, connu sous le nom de tête, car il exécute des processus supplémentaires pour coordonner le cluster. 

Chaque acteur qui contribue à votre calcul génère son propre flux de journaux. Ce scénario nous donne quelques informations : 
+ Le nombre de processus qui émettent des journaux peut être supérieur au nombre de travaux qui sont alloués à la tâche. Souvent, chaque cœur de chaque instance comporte un acteur.
+  Les nœuds principaux Ray émettent des journaux de gestion et de démarrage du cluster. En revanche, les composants master Ray émettent uniquement des journaux pour le travail qui les concerne.

Pour plus d'informations sur l'architecture Ray, consultez [Architecture Whitepapers]( https://docs.ray.io/en/latest/ray-contribute/whitepaper.html) (Livres blancs sur l'architecture) dans la documentation Ray.

### Problème : accès à Amazon S3
<a name="troubleshooting-ray-errors-s3"></a>

Vérifiez le message d'échec de la tâche exécutée. Si ce dernier ne fournit pas suffisamment d'informations, vérifiez `/aws-glue/ray/jobs/script-log/`.

### Problème : gestion de la dépendance PIP
<a name="troubleshooting-ray-errors-dependencies"></a>

Vérifiez `/aws-glue/ray/jobs/ray-runtime-env-log/`.

### Problème : inspection des valeurs intermédiaires dans le processus principal
<a name="troubleshooting-ray-errors-main-process"></a>

Écrivez dans `stderr` ou `stdout` depuis votre script principal, et récupérez les journaux dans `/aws-glue/ray/jobs/script-log/`.

### Problème : inspection des valeurs intermédiaires dans un processus enfant
<a name="troubleshooting-ray-errors-worker-process"></a>

Écrivez dans `stderr` ou `stdout` depuis votre fonction `remote`. Récupérez ensuite les journaux depuis `/aws-glue/ray/jobs/ray-worker-out-logs/` ou `/aws-glue/ray/jobs/ray-worker-err-logs/`. Votre fonction a pu être exécutée sur n'importe quel réplica. Vous pouvez donc être amené à examiner plusieurs journaux pour identifier la sortie souhaitée.

### Problème : interprétation des adresses IP dans les messages d'erreur
<a name="troubleshooting-ray-errors-ips"></a>

Dans certaines situations d'erreur, votre tâche peut émettre un message d'erreur contenant une adresse IP. Ces adresses IP sont éphémères et sont utilisées par le cluster pour identifier les nœuds et communiquer entre eux. Les journaux d'un nœud seront publiés dans un flux de journaux avec un suffixe unique basé sur l'adresse IP. 

Dans CloudWatch, vous pouvez filtrer vos journaux pour inspecter ceux spécifiques à cette adresse IP en identifiant ce suffixe. Par exemple, étant donné *FAILED\$1IP* et*JOB\$1RUN\$1ID*, vous pouvez identifier le suffixe avec : 

```
filter @logStream like /JOB_RUN_ID/
| filter @message like /IP-/
| parse @message "IP-[*]" as ip
| filter ip like /FAILED_IP/
| fields replace(ip, ":", "_") as uIP
| stats count_distinct by uIP as logStreamSuffix
| display logStreamSuffix
```

# Exceptions AWS Glue liées au machine learning
<a name="exceptions-machine-learning"></a>

Cette rubrique décrit les chaînes et les codes d'erreur HTTP des exceptions AWS Glue liées au machine learning. Les codes d'erreur et les chaînes d'erreur sont fournis pour chaque activité de machine learning susceptible de se produire lorsque vous effectuez une opération. Vous pouvez également déterminer s'il est possible de retenter l'opération qui a entraîné l'erreur.

## Annuler MLTask RunActivity
<a name="exceptions-machine-learning-CancelMLTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + « Aucune exécution de tâche ML n'a été trouvée pour [taskRunId] : dans le compte [AccountID] pour transform [TransformName]. »

  Nouvelle tentative possible : non.

## Créez MLTask RunActivity
<a name="exceptions-machine-learning-CreateMLTransformActivity"></a>

Cette activité comporte les exceptions suivantes :
+ InvalidInputException (400)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)
  + « A AWS Glue Table input source should be specified in transform. » (Une source d'entrée Glue Table doit être spécifiée dans la transformation.)
  + Input source column [columnName] has an invalid data type defined in the catalog (Le type de données de la colonne de source d'entrée [Nom de la colonne] défini dans le catalogue n'est pas valide)
  + Exactly one input record table must be provided (Une seule table d'enregistrement en entrée doit être fournie)
  + Should specify database name (Doit spécifier le nom de la base de données)
  + Should specify table name (Doit spécifier le nom de la table)
  + Schema is not defined on the transform (Le schéma n'est pas défini sur la transformation)
  + Schema should contain given primary key: [primaryKey] (Le schéma doit contenir une clé primaire donnée : [Clé primaire])
  + Problem fetching the data catalog schema: [message] (Problème de récupération du schéma de catalogue de données : [message])
  + « Impossible de définir la capacité maximale et le Num/Type nombre de travailleurs en même temps. »
  + « Les deux WorkerType et NumberOfWorkers doivent être réglés. »
  + « MaxCapacity  devrait être >= [MaxCapacity]. »
  + « NumberOfWorkers  devrait être >= [MaxCapacity]. »
  + Max retries should be non-negative (Les tentatives maximales ne peuvent pas être négatives)
  +  Find Matches parameters have not been set (Les paramètres de recherche de correspondances n'ont pas été définis)
  + A primary key must be specified in Find Matches parameters (Une clé primaire doit être spécifiée dans les paramètres de recherche de correspondances)

  Nouvelle tentative possible : non.
+ AlreadyExistsException (400)
  + Transform with name [transformName] already exists (Une transformation appelée [Nom de la transformation] existe déjà)

  Nouvelle tentative possible : non.
+ IdempotentParameterMismatchException (400)
  + Idempotent create request for transform [transformName] had mismatching parameters (Les paramètres de la demande de création idempotente ne correspondent pas)

  Nouvelle tentative possible : non.
+ InternalServiceException (500)
  + Dependency failure (Échec de la dépendance)

  Nouvelle tentative possible : oui.
+ ResourceNumberLimitExceededException (400)
  + ML Transforms count ([count]) has exceeded the limit of [limit] transforms (Le nombre de transformations ML [nombre] a dépassé la limite de [nombre limite] transformations)

  Nouvelle tentative possible : oui, une fois que vous aurez supprimé une transformation pour faire de la place à cette nouvelle transformation.

## Supprimer MLTransform l'activité
<a name="exceptions-machine-learning-DeleteMLTransformActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le handle [TransformName] »

  Nouvelle tentative possible : non.

## Obtenez MLTask RunActivity
<a name="exceptions-machine-learning-GetMLTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + « Aucune exécution de tâche ML n'a été trouvée pour [taskRunId] : dans le compte [AccountID] pour transform [TransformName]. »

  Nouvelle tentative possible : non.

## Obtenez MLTask RunsActivity
<a name="exceptions-machine-learning-GetMLTaskRunsActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + « Aucune exécution de tâche ML n'a été trouvée pour [taskRunId] : dans le compte [AccountID] pour transform [TransformName]. »

  Nouvelle tentative possible : non.

## Obtenir de MLTransform l'activité
<a name="exceptions-machine-learning-GetMLTransformActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.

## Obtenir de MLTransforms l'activité
<a name="exceptions-machine-learning-GetMLTransformsActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Account ID can't be blank (L'ID de compte doit être renseigné)
  + Sorting not supported for column [column] (Le tri n'est pas pris en charge pour la colonne [colonne])
  + [column] can't be blank ([colonne] ne peut pas être vide)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)

  Nouvelle tentative possible : non.

## GetSaveLocationForTransformArtifactActivity
<a name="exceptions-machine-learning-GetSaveLocationForTransformArtifactActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Unsupported artifact type [artifactType] (Type d'artefact [Type d'artefact] non pris en charge)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)

  Nouvelle tentative possible : non.

## GetTaskRunArtifactActivity
<a name="exceptions-machine-learning-GetTaskRunArtifactActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + « Aucune exécution de tâche ML n'a été trouvée pour [taskRunId] : dans le compte [AccountID] pour transform [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + File name [fileName] is invalid for publish (Le nom de fichier [Nom de fichier] n'est pas valide pour la publication)
  + Cannot retrieve artifact for [taskType] task type (Impossible de récupérer l'artefact pour le type de tâche [Type de tâche])
  + Cannot retrieve artifact for [artifactType] (Impossible de récupérer l'artefact pour [Type d'artefact]
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)

  Nouvelle tentative possible : non.

## Publier MLTransform ModelActivity
<a name="exceptions-machine-learning-PublishMLTransformModelActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + An existing model with version - [version] cannot be found for account id - [accountId] - and transform id - [transformId] (Impossible de trouver un modèle existant avec la version [version] pour l'ID de compte [ID de compte] et l'ID de transformation [ID de transformation])

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + File name [fileName] is invalid for publish (Le nom de fichier [Nom de fichier] n'est pas valide pour la publication)
  + Illegal leading minus sign on unsigned string [string] (Signe moins de début non valide sur une chaîne non signée [chaîne])
  + Bad digit at end of [string] (Chiffre incorrect à la fin de [chaîne])
  +  String value [string] exceeds range of unsigned long (La valeur de chaîne [chaîne] dépasse considérablement la plage des chaînes non signées)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)

  Nouvelle tentative possible : non.

## PullLatestMLTransformModelActivity
<a name="exceptions-machine-learning-PullLatestMLTransformModelActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)

  Nouvelle tentative possible : non.
+ ConcurrentModificationException (400)
  + Cannot create model version to train due to racing inserts with mismatching parameters (Impossible de créer une version de modèle pour l'entraînement en raison d'insertions de course avec des paramètres incorrects)
  + The ML Transform model for transform id [transformId] is stale or being updated by another process; Please retry (Le modèle de transformation ML pour l'ID [ID de transformation] est obsolète ou en cours de mise à jour par un autre processus. Veuillez réessayer)

  Nouvelle tentative possible : oui.

## PutJobMetadataForMLTransformActivité
<a name="exceptions-machine-learning-PutJobMetadataForMLTransformActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + « Aucune exécution de tâche ML n'a été trouvée pour [taskRunId] : dans le compte [AccountID] pour transform [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)
  + Unknown job metadata type [jobType] (Type de métadonnées inconnu pour la tâche [Type de tâche])
  +  Must provide a task run ID to update (Doit fournir un ID d'exécution de tâche à mettre à jour)

  Nouvelle tentative possible : non.

## StartExportLabelsTaskRunActivity
<a name="exceptions-machine-learning-StartExportLabelsTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »
  + No labelset exists for transformId [transformId] in account id [accountId] (Aucun jeu d'étiquettes n'existe pour l'ID de transformation [ID de transformations] dans l'ID de compte [ID de compte])

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + [message]
  + S3 path provided is not in the same region as transform Expecting region - [region], but got - [region] (Le chemin S3 fourni n'est pas dans la même région que la transformation. La région attendue est [région], mais la région obtenue correspond à [région])

  Nouvelle tentative possible : non.

## StartImportLabelsTaskRunActivity
<a name="exceptions-machine-learning-StartExportLabelsTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + [message]
  + Invalid label file path (Chemin d'accès non valide au fichier d'étiquettes)
  + Cannot access the label file at [labelPath]. [message] (Impossible d'accéder au fichier d'étiquettes sous [Chemin]. [message])
  + Cannot use IAM role provided in the transform Role: [role] (Impossible d'utiliser le rôle IAM fourni dans la transformation. Rôle : [rôle])
  + Invalid label file of size 0 (Fichier d'étiquettes non valide avec la taille 0)
  + S3 path provided is not in the same region as transform Expecting region - [region], but got - [region] (Le chemin S3 fourni n'est pas dans la même région que la transformation. La région attendue est [région], mais la région obtenue correspond à [région])

  Nouvelle tentative possible : non.
+ ResourceNumberLimitExceededException (400)
  + Label file has exceeded the limit of [limit] MB (Le fichier d'étiquettes a dépassé la limite de [nombre] Mo)

  Nouvelle tentative possible : non. Envisagez de fragmenter votre fichier d'étiquettes en plusieurs fichiers de petite taille.

## Démarrer MLEvaluation TaskRunActivity
<a name="exceptions-machine-learning-StartMLEvaluationTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Exactly one input record table must be provided (Une seule table d'enregistrement en entrée doit être fournie)
  + Should specify database name (Doit spécifier le nom de la base de données)
  + Should specify table name (Doit spécifier le nom de la table)
  + Find Matches parameters have not been set (Les paramètres de recherche de correspondances n'ont pas été définis)
  + A primary key must be specified in Find Matches parameters (Une clé primaire doit être spécifiée dans les paramètres de recherche de correspondances)

  Nouvelle tentative possible : non.
+ MLTransformNotReadyException (400)
  + This operation can only be applied to a transform that is in a READY state (Cette opération ne peut être appliquée qu'à une transformation dont l'état est READY)

  Nouvelle tentative possible : non.
+ InternalServiceException (500)
  + Dependency failure (Échec de la dépendance)

  Nouvelle tentative possible : oui.
+ ConcurrentRunsExceededException (400)
  + ML Task Runs count [count] has exceeded the transform limit of [limit] task runs (Le nombre d'exécutions de tâches ML [nombre limite] a dépassé la limite de transformations de [nombre limite] exécutions de tâches)
  + ML Task Runs count [count] has exceeded the limit of [limit] task runs (Le nombre d'exécutions de tâches ML [nombre] a dépassé la limite de [nombre limite] exécutions de tâches)

  Nouvelle tentative possible : oui, une fois l'exécution de la tâche terminée.

## Démarrer MLLabeling SetGenerationTaskRunActivity
<a name="exceptions-machine-learning-StartMLLabelingSetGenerationTaskRunActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Exactly one input record table must be provided (Une seule table d'enregistrement en entrée doit être fournie)
  + Should specify database name (Doit spécifier le nom de la base de données)
  + Should specify table name (Doit spécifier le nom de la table)
  + Find Matches parameters have not been set (Les paramètres de recherche de correspondances n'ont pas été définis)
  + A primary key must be specified in Find Matches parameters (Une clé primaire doit être spécifiée dans les paramètres de recherche de correspondances)

  Nouvelle tentative possible : non.
+ InternalServiceException (500)
  + Dependency failure (Échec de la dépendance)

  Nouvelle tentative possible : oui.
+ ConcurrentRunsExceededException (400)
  + ML Task Runs count [count] has exceeded the transform limit of [limit] task runs (Le nombre d'exécutions de tâches ML [nombre limite] a dépassé la limite de transformations de [nombre limite] exécutions de tâches)

  Nouvelle tentative possible : oui, une fois les exécutions de tâches terminées.

## MLTransformActivité de mise à jour
<a name="exceptions-machine-learning-UpdateMLTransformActivity"></a>

Cette activité comporte les exceptions suivantes :
+ EntityNotFoundException (400)
  + « Impossible de trouver MLTransform dans le compte [AccountID] avec le descripteur [TransformName]. »

  Nouvelle tentative possible : non.
+ InvalidInputException (400)
  + Another transform with name [transformName] already exists (Une autre transformation appelée [Nom de la transformation] existe déjà)
  + [message]
  + Transform name cannot be blank (Le nom de la transformation doit être renseigné)
  + « Impossible de définir la capacité maximale et le Num/Type nombre de travailleurs en même temps. »
  + « Les deux WorkerType et NumberOfWorkers doivent être réglés. »
  + « MaxCapacity  devrait être >= [minMaxCapacity]. »
  + « NumberOfWorkers  devrait être >= [minNumWorkers]. »
  + Max retries should be non-negative (Les tentatives maximales ne peuvent pas être négatives)
  + Internal service failure due to unexpected input (Échec du service interne en raison d'une entrée inattendue)
  + Find Matches parameters have not been set (Les paramètres de recherche de correspondances n'ont pas été définis)
  + A primary key must be specified in Find Matches parameters (Une clé primaire doit être spécifiée dans les paramètres de recherche de correspondances)

  Nouvelle tentative possible : non.
+ AlreadyExistsException (400)
  + Transform with name [transformName] already exists (Une transformation appelée [Nom de la transformation] existe déjà)

  Nouvelle tentative possible : non.
+ IdempotentParameterMismatchException (400)
  + Idempotent create request for transform [transformName] had mismatching parameters (Les paramètres de la demande de création idempotente ne correspondent pas)

  Nouvelle tentative possible : non.

# AWS Glue quotas
<a name="troubleshooting-service-limits"></a>

Vous pouvez nous contacter AWS Support pour [demander une augmentation](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) des quotas de service répertoriés dans le *Références générales AWS*. Sauf indication contraire, chaque quota est spécifique à une région. Pour plus d'informations, consultez [Points de terminaison et quotas AWS Glue](https://docs.aws.amazon.com/general/latest/gr/glue.html). 