Risolvere i problemi relativi a Dataform

Questo documento mostra come risolvere i problemi relativi a Dataform.

Accesso a BigQuery negato

Il seguente errore si verifica quando attivi una chiamata del flusso di lavoro prima per concedere a Dataform l'accesso a BigQuery:

Access Denied: Project PROJECT_ID: User does not have bigquery.jobs.create permission in project PROJECT_ID.

Per risolvere questo errore, concedi l'accesso Dataform a BigQuery.

Il token di accesso per un repository remoto è stato rifiutato

Il seguente errore si verifica quando il token di autenticazione per un il repository di terze parti non ha accesso al repository:

The access token for remote repository REPOSITORY_NAME was rejected

Per risolvere l'errore, controlla le autorizzazioni richieste nel provider Git e aggiornare di conseguenza il token di autenticazione di Secret Manager. Per maggiori informazioni informazioni sull'autenticazione dei repository Git di terze parti Dataform, consulta Connettersi a un Git di terze parti un repository attendibile.

La quota BigQuery è stata superata

Il seguente errore si verifica quando il numero di richieste API che Dataform invia a BigQuery supera il limite quota:

Quota exceeded: Your user_method exceeded quota for concurrent api requests
per user per method.

Per risolvere questo errore, riduci il numero di query parallele a meno di 250 in nei seguenti modi:

Per istruzioni su come risolvere questo errore in BigQuery, consulta Risolvere i problemi quota e limite errori.

Il limite di contemporaneità delle query BigQuery è stato superato

Il seguente errore si verifica quando il numero di query simultanee eseguite BigQuery supera la contemporaneità delle query BigQuery limite:

Exceeded rate limits: too many concurrent queries for this project_and_region

Per risolvere questo errore, riduci il numero di query parallele a meno di 250 in nei seguenti modi:

Per istruzioni su come risolvere questo errore in BigQuery, consulta Risolvere i problemi quota e limite errori.

Errori di chiamata del flusso di lavoro BigQuery

Durante l'esecuzione di un flusso di lavoro SQL si verificano i seguenti errori per BigQuery:

Per risolvere questi errori, consulta Errore di BigQuery messaggi.

includeDependentAssertions proprietà in conflitto

Il seguente errore si verifica durante la compilazione Il parametro includeDependentAssertions è impostato per lo stesso con valori diversi all'interno di un file:

Conflicting "includeDependentAssertions" properties are not allowed. Dependency
dependencyName has different values set for this property.

Per risolvere questo errore, modifica il file e rimuovi le ripetizioni in conflitto del Parametro includeDependentAssertions.

Per saperne di più sull'utilizzo del parametro includeDependentAssertions per impostare le asserzioni come dipendenze, vedi Imposta le asserzioni di un'azione selezionata come dipendenze.

Compilazione non riuscita

Durante la compilazione si verificano i seguenti errori a causa delle dimensioni o del numero di query:

  • 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.

Per risolvere questi errori:

  1. Aggiorna il core Dataform all'ultima versione completamente gestita.
  2. Controlla il flusso di lavoro SQL per identificare e ridurre le inefficienze.
  3. Riduci le dimensioni delle query SQL.
  4. Riduci la quantità di operazioni JavaScript in memoria, ad esempio:

    config { config {type: "table" }}
    js {
        const tooBig = new Uint8Array(110_000_000);
    }
    SELECT ...
    
  5. Suddividi il repository.

Per ulteriori informazioni sui limiti delle risorse di compilazione Dataform, consulta Quote e limiti.

@dataform/core errore di dipendenza

I seguenti errori si verificano durante la compilazione se la dipendenza dataform-core in package.json è obsoleto:

Failed to resolve @dataform/core
@dataform/core version should be X.X.X or newer

La dipendenza @dataform/core è obbligatoria in package.json. Quando inizializza la prima area di lavoro nel repository, Dataform compila automaticamente package.json con la versione corrente di @dataform/core. Devi aggiornare @dataform/core all'ultima versione come esce.

Per risolvere questi errori, aggiorna @dataform/core all'ultima versione dell'audiodescrizione.

Impossibile risolvere dataform.json

Il seguente errore si verifica quando inizializza un'area di lavoro Dataform: ma il processo di inizializzazione non riesce a installare tutti i pacchetti:

Uncaught Error: Failed to resolve dataform.json

Per risolvere questo errore, apri package.json nell'area di lavoro e fai clic su Installa pacchetti.

Impossibile risolvere workflow_settings.yaml

Il seguente errore si verifica quando inizializza un'area di lavoro Dataform: ma il processo di inizializzazione non riesce a installare tutti i pacchetti:

Uncaught Error: Failed to resolve workflow_settings.yaml

Per risolvere questo errore, nell'area di lavoro apri workflow_settings.yaml e fai clic su Installa pacchetti.

git+ target pacchetto non sono supportati

Il seguente errore si verifica quando definisci i pacchetti in package.json con target con prefisso 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 non supporta i target di pacchetto che hanno come prefisso git+.

Per risolvere questo errore, genera un URL tar.gz del pacchetto e aggiorna il valore target del pacchetto in package.json. Per ulteriori informazioni sull'installazione di pacchetti in Dataform, consulta Installare un pacchetto Dataform.

Timeout dell'installazione del pacchetto

Il seguente errore si verifica quando le dimensioni dei pacchetti definite in package.json supera la dimensione massima della gestione dei partner di rete delle dipendenze:

API request error: Package installation timed out

Per risolvere questo errore, rimuovi i pacchetti ridondanti da package.json. Assicurati che il file package.json non contiene @dataform/cli e il totale la dimensione delle dipendenze NPM definite non supera i 200 Mb.

Se le configurazioni della release fare riferimento ai commit Git, assicurati che i file package.json i target sono validi.

Impossibile raggiungere il registro di pacchetti privato

Il seguente errore si verifica quando l'autenticazione Dataform per un privato pacchetto scade:

Permission denied when fetching one or more npm packages. Please verify that
private registry authentication details are valid for each npm registry

Per risolvere questo errore, verifica che i dettagli di autenticazione del registro privato siano è valida per ogni registro di Gestione dei partner di rete. Per ulteriori informazioni, consulta Autenticare un account privato in Dataform.

Impossibile raggiungere il repository remoto

Il seguente errore si verifica a causa di un errore di Git o quando il nome di un ramo nella il repository Git di terze parti connesso contiene un repository Carattere:

Remote repository REPOSITORY_NAME could not be reached.

Per risolvere questo errore, controlla i nomi dei rami nella terza parte connessa repository Git. Se il nome di una filiale contiene un carattere non ASCII o non anglofono, elimina il ramo.

Impossibile raggiungere il repository remoto: generic::invalid_argument

Il seguente errore si verifica nella pagina Dettagli configurazioni release quando una di rilascio programmato riscontrate a volte GitHub lento, instabile o abbandonato, Connessione GitLab o Bitbucket:

generic::invalid_argument: Remote repository 'REMOTE_REPOSITORY_URL' could not be reached.

Non è richiesta alcuna azione da parte tua. A meno che GitHub, GitLab o Bitbucket Cloud i problemi persistono, le release pianificate successive possono avere esito positivo.

Impossibile raggiungere il secret per un repository remoto

Il seguente errore si verifica quando il tuo account di servizio Dataform non può accedere al secret di Secret Manager per una terza parte collegata repository:

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.

Per risolvere questo errore:

  • Verifica che il tuo account di servizio Dataform abbia accesso ai il secret.
  • Escludi il secret dal tuo perimetro di servizio VPC-SC. Dataform al momento non supporta VPC-SC.