Ce document explique comment résoudre les problèmes liés à Dataform.
L'accès à BigQuery est refusé
L'erreur suivante se produit lorsque vous déclenchez un appel de workflow avant accordant à Dataform l'accès à BigQuery:
Access Denied: Project PROJECT_ID: User does not have bigquery.jobs.create permission in project PROJECT_ID.
Pour résoudre cette erreur, accordez à Dataform l'accès dans BigQuery.
Le jeton d'accès à un dépôt distant a été refusé
L'erreur suivante se produit lorsque votre jeton d'authentification pour une connexion tiers n'a pas accès à ce dépôt:
The access token for remote repository REPOSITORY_NAME was rejected
Pour résoudre cette erreur, vérifiez les autorisations requises dans votre fournisseur Git et et mettez à jour le jeton d'authentification Secret Manager en conséquence. Pour plus des informations sur l’authentification des référentiels Git tiers dans Dataform, consultez Se connecter à un service Git tiers un dépôt de clés.
Le quota BigQuery est dépassé
L'erreur suivante se produit lorsque le nombre de requêtes API Dataform envoyé à BigQuery dépasse la limite quota:
Quota exceeded: Your user_method exceeded quota for concurrent api requests
per user per method.
Pour résoudre cette erreur, réduisez le nombre de requêtes parallèles à moins de 250 dans de différentes manières:
- Dans Dataform, classez les actions à l'aide de tags. et exécuter uniquement les à la fois.
- Dans Dataform, introduisez des dépendances entre les actions.
- Dans Dataform, répartissez les exécutions d'actions entre différents projets Google Cloud.
Pour obtenir des instructions sur la résolution de cette erreur dans BigQuery, consultez la section Résoudre les problèmes quota et limite erreurs.
La limite de simultanéité des requêtes BigQuery est dépassée
L'erreur suivante se produit lorsque le nombre de requêtes simultanées exécutées sur BigQuery dépasse le seuil de simultanéité des requêtes BigQuery limite:
Exceeded rate limits: too many concurrent queries for this project_and_region
Pour résoudre cette erreur, réduisez le nombre de requêtes parallèles à moins de 250 dans de différentes manières:
- Dans Dataform, classez les actions à l'aide de tags. et exécuter uniquement les à la fois.
- Dans Dataform, introduisez des dépendances entre les actions.
- Dans Dataform, répartissez les exécutions d'actions entre différents projets Google Cloud.
Pour obtenir des instructions sur la résolution de cette erreur dans BigQuery, consultez la section Résoudre les problèmes quota et limite erreurs.
Erreurs d'appel du workflow BigQuery
Les erreurs suivantes se produisent lors de l'exécution d'un workflow SQL pour BigQuery:
- Erreurs d'appel de workflow commençant par Erreur BigQuery messages.
Pour résoudre ces erreurs, consultez la section Erreur BigQuery messages.
includeDependentAssertions
propriétés en conflit
L'erreur suivante se produit lors de la compilation lorsque le
Le paramètre includeDependentAssertions
est défini pour le même
avec des valeurs différentes dans un même fichier:
Conflicting "includeDependentAssertions" properties are not allowed. Dependency
dependencyName has different values set for this property.
Pour résoudre cette erreur, modifiez le fichier et supprimez les répétitions contradictoires des éléments
Paramètre includeDependentAssertions
.
En savoir plus sur l'utilisation du paramètre includeDependentAssertions
pour définir des assertions en tant que dépendances, consultez
Définissez les assertions d'une action sélectionnée en tant que dépendances.
Échec de la compilation
Les erreurs suivantes se produisent lors de la compilation en raison de la taille ou du nombre de fichiers compilés requêtes:
Compilation timed out. Reduce the complexity of your project to ensure it can compile within limits.
Compilation exceeded its allowed heap memory limits. Reduce the complexity of your project to ensure it can compile within limits.
Compilation exceeded its allowed ArrayBuffer or string memory limits. Reduce the complexity of your project to ensure it can compile within limits.
Pour résoudre ces erreurs, procédez comme suit:
- Mettez à jour Dataform Core vers la dernière version. version.
- Inspectez votre workflow SQL pour identifier et réduire les inefficacités.
- Réduisez la taille des requêtes SQL.
Réduisez le nombre d'opérations JavaScript en mémoire, par exemple:
config { config {type: "table" }} js { const tooBig = new Uint8Array(110_000_000); } SELECT ...
Pour en savoir plus sur les limites des ressources de compilation Dataform, consultez Quotas et limites.
@dataform/core
erreurs de dépendance
Les erreurs suivantes se produisent lors de la compilation si la dépendance dataform-core
dans package.json
est obsolète:
Failed to resolve @dataform/core
@dataform/core version should be X.X.X or newer
La dépendance @dataform/core
est obligatoire dans package.json
. Lorsque vous
initialiser le premier espace de travail de votre dépôt, Dataform
renseigne automatiquement package.json
avec la version actuelle de
@dataform/core
Vous devez installer la dernière version de @dataform/core
en tant que
quand il en sort.
Pour résoudre ces erreurs, installez la dernière version de @dataform/core
version.
Échec de la résolution de dataform.json
L'erreur suivante se produit lorsque vous initialisez un espace de travail Dataform : mais le processus d'initialisation ne parvient pas à installer tous les packages:
Uncaught Error: Failed to resolve dataform.json
Pour résoudre cette erreur, ouvrez package.json
dans votre espace de travail.
et cliquez sur Installer les packages.
Échec de la résolution de workflow_settings.yaml
L'erreur suivante se produit lorsque vous initialisez un espace de travail Dataform : mais le processus d'initialisation ne parvient pas à installer tous les packages:
Uncaught Error: Failed to resolve workflow_settings.yaml
Pour résoudre cette erreur, ouvrez workflow_settings.yaml
dans votre espace de travail, puis
cliquez sur Installer les packages.
git+
cibles de packages ne sont pas compatibles
L'erreur suivante se produit lorsque vous définissez des packages dans package.json
avec
cibles précédées de git+
:
'git+' prefixed package targets are not currently supported. However,
in most cases they can be used via a '.tar.gz' suffixed target instead.
Dataform n'accepte pas les cibles de packages dont le préfixe est git+
.
Pour résoudre cette erreur, générez une URL tar.gz
du package et mettez à jour la
cible du package dans package.json
. Pour en savoir plus sur l’installation des packages
dans Dataform, consultez la section Installer un package dans
Dataform
Expiration du délai d'installation du package
L'erreur suivante se produit lorsque la taille des packages définie dans package.json
dépasse la taille maximale de NPM
dépendances:
API request error: Package installation timed out
Pour résoudre cette erreur, supprimez les packages redondants de package.json
. Assurez-vous que
le fichier package.json
ne contient pas @dataform/cli
et que la somme
la taille des dépendances NPM définies ne dépasse pas 200 Mo.
Si vos configurations de versions
référencer des commits Git, assurez-vous que les fichiers package.json
au niveau de leur
cibles sont valides.
Impossible d'accéder au registre de packages privé
L'erreur suivante se produit lorsque Dataform Authentication expiration du package:
Permission denied when fetching one or more npm packages. Please verify that
private registry authentication details are valid for each npm registry
Pour résoudre cette erreur, vérifiez que les informations d'authentification du registre privé sont valide pour chaque registre NPM. Pour en savoir plus, consultez la section Authentifier un serveur dans Dataform.
Impossible d'accéder au dépôt distant
L'erreur suivante se produit en raison d'une faille de Git ou lorsqu'un nom de branche dans le tiers connecté contient un dépôt Git non ASCII ou non caractère:
Remote repository REPOSITORY_NAME could not be reached.
Pour résoudre cette erreur, inspectez les noms des branches dans le plug-in tiers connecté un dépôt de clés. Si un nom de branche contient un caractère non ASCII ou non anglais, supprimer la branche.
Impossible d'accéder au dépôt distant: generic::invalid_argument
L'erreur suivante se produit sur la page Détails des configurations de version lorsqu'un la version planifiée rencontre parfois un problème GitHub lent, irrégulier ou abandonné, GitLab ou Bitbucket:
generic::invalid_argument: Remote repository 'REMOTE_REPOSITORY_URL' could not be reached.
Aucune action n'est requise de votre part. À moins que GitHub, GitLab ou Bitbucket Cloud les problèmes persistent, les versions planifiées suivantes peuvent aboutir.
Impossible d'accéder au secret d'un dépôt distant
L'erreur suivante se produit lorsque votre compte de service Dataform ne peut pas accéder à votre secret Secret Manager pour un tiers connecté dépôt:
Dataform's service account is unable to reach the configured secret.
Make sure the secret exists and is shared with your Dataform service account:
SERVICE_ACCOUNT_ID.
Pour résoudre cette erreur, procédez comme suit :
- Vérifiez que votre compte de service Dataform a accès au secret.
- Excluez le secret de votre périmètre de service VPC-SC. Dataform n'est pas compatible avec VPC-SC pour le moment.