Resolver problemas do Dataform

Neste documento, mostramos como resolver problemas com o Dataform.

Acesso negado ao BigQuery

O erro a seguir ocorre quando você aciona uma invocação de fluxo de trabalho antes de concedendo ao Dataform acesso ao BigQuery:

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

Para resolver esse erro, conceda ao Dataform acesso a no BigQuery.

O token de acesso de um repositório remoto foi rejeitado

O erro a seguir ocorre quando o seu token de autenticação para um servidor repositório de terceiros não tem acesso a ele:

The access token for remote repository REPOSITORY_NAME was rejected

Para resolver esse erro, verifique as permissões necessárias no seu provedor Git e atualize o token de autenticação do Secret Manager adequadamente. Para mais informações sobre como autenticar repositórios Git de terceiros no Dataform, consulte Conectar-se a um Git de terceiros repositório.

A cota do BigQuery foi excedida

O erro a seguir ocorre quando o número de solicitações de API que O Dataform envia ao BigQuery excede o Cota:

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

Para resolver esse erro, reduza o número de consultas paralelas para menos de 250 em das seguintes maneiras:

Para instruções sobre como resolver esse erro no BigQuery, consulte Solução de problemas cota e limite erros.

O limite de simultaneidade de consulta do BigQuery foi excedido

O erro a seguir ocorre quando o número de consultas simultâneas executadas para O BigQuery excede a simultaneidade de consultas limite:

Exceeded rate limits: too many concurrent queries for this project_and_region

Para resolver esse erro, reduza o número de consultas paralelas para menos de 250 em das seguintes maneiras:

Para instruções sobre como resolver esse erro no BigQuery, consulte Solução de problemas cota e limite erros.

Erros de invocação do fluxo de trabalho do BigQuery

Os erros a seguir ocorrem durante a execução de um fluxo de trabalho SQL para BigQuery:

  • Erros de invocação do fluxo de trabalho que começam com BigQuery error .

Para resolver esses erros, consulte a seção Erro do BigQuery .

Propriedades includeDependentAssertions conflitantes

O erro a seguir ocorre durante a compilação, quando o o parâmetro includeDependentAssertions for definido para os mesmos com valores diferentes em um arquivo:

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

Para resolver esse erro, edite o arquivo e remova repetições conflitantes do parâmetro includeDependentAssertions.

Para mais informações sobre como usar o parâmetro includeDependentAssertions para definir declarações como dependências, consulte Define as declarações de uma ação selecionada como dependências.

Falha na compilação

Os seguintes erros ocorrem durante a compilação devido ao tamanho ou número de arquivos compilados consultas:

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

Para resolver esses erros, siga estas etapas:

  1. Atualize o Dataform Core para a versão mais recente. para a versão anterior.
  2. Inspecione seu fluxo de trabalho SQL para identificar e reduzir ineficiências.
  3. Reduza o tamanho das consultas SQL.
  4. Reduza a quantidade de operações JavaScript na memória, por exemplo:

    config { config {type: "table" }}
    js {
        const tooBig = new Uint8Array(110_000_000);
    }
    SELECT ...
    
  5. Divida o repositório.

Para mais informações sobre os limites de recursos de compilação do Dataform, consulte Cotas e limites.

@dataform/core erro de dependência

Os erros a seguir ocorrerão durante a compilação se a dependência dataform-core. em package.json está desatualizado:

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

A dependência @dataform/core é necessária na package.json. Quando você inicialize o primeiro espaço de trabalho do seu repositório, o Dataform preenche automaticamente package.json com a versão atual da @dataform/core. Atualize o app @dataform/core para a versão mais recente como quando ele sai.

Para resolver esses erros, atualize @dataform/core para a versão mais recente versão.

Falha ao resolver dataform.json

O erro a seguir ocorre quando você inicializa um espaço de trabalho do Dataform. mas o processo de inicialização falha ao instalar todos os pacotes:

Uncaught Error: Failed to resolve dataform.json

Para resolver esse erro, abra package.json no seu espaço de trabalho e clique em Install packages.

Falha ao resolver workflow_settings.yaml

O erro a seguir ocorre quando você inicializa um espaço de trabalho do Dataform. mas o processo de inicialização falha ao instalar todos os pacotes:

Uncaught Error: Failed to resolve workflow_settings.yaml

Para resolver esse erro, no seu espaço de trabalho, abra workflow_settings.yaml e clique em Install packages.

git+ destino de pacote não tem suporte

O erro a seguir ocorre quando você define pacotes em package.json com destinos prefixados com git+:

'git+' prefixed package targets are not currently supported. However,
in most cases they can be used via a '.tar.gz' suffixed target instead.

O Dataform não oferece suporte a destinos de pacotes com o prefixo git+.

Para resolver esse erro, gere um URL tar.gz do pacote e atualize o destino do pacote em package.json. Para mais informações sobre como instalar pacotes no Dataform, consulte Instalar um pacote no Dataform (em inglês).

A instalação do pacote expira em

O erro a seguir ocorre quando o tamanho dos pacotes definido em package.json excede o tamanho máximo do NPM dependências:

API request error: Package installation timed out

Para resolver esse erro, remova pacotes redundantes de package.json. Confirme se o arquivo package.json não contém @dataform/cli, e que o total o tamanho das dependências do NPM definidas não excede 200 MB.

Se as configurações de versão fazer referência a confirmações do Git, conferir se os arquivos package.json na são válidos.

Não foi possível acessar o registro de pacote particular

O erro a seguir ocorre quando a autenticação do Dataform para um endereço o pacote expira em:

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

Para resolver esse erro, verifique se os detalhes de autenticação do registro particular estão válidos para cada registro do NPM. Para mais informações, consulte Autenticar um usuário no Dataform.

Não é possível acessar o repositório remoto

O erro a seguir ocorre devido à inconsistência do Git ou quando o nome de uma ramificação no um repositório Git de terceiros conectado que não esteja em ASCII ou em inglês caractere:

Remote repository REPOSITORY_NAME could not be reached.

Para resolver esse erro, inspecione os nomes de ramificação no terceiro conectado repositório de dados. Se o nome de uma ramificação tiver um caractere não ASCII ou não inglês, e excluir a ramificação.

Não foi possível acessar o repositório remoto: generic::invalid_argument

O erro a seguir ocorre na página Detalhes das configurações de versão quando um uma versão programada, às vezes, encontra um GitHub lento, instável ou descartado. Conexão do GitLab ou Bitbucket:

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

Não é necessário fazer nada. A menos que o GitHub, o GitLab ou o Bitbucket Cloud os problemas persistirem, os lançamentos programados subsequentes poderão ser bem-sucedidos.

O secret de um repositório remoto não pode ser acessado

O erro a seguir ocorre quando sua conta de serviço do Dataform não pode acessar o secret do Secret Manager para um terceiro conectado repositório:

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.

Para resolver esse erro, faça o seguinte:

  • Verifique se sua conta de serviço do Dataform tem acesso ao chave secreta do cliente.
  • Exclua o secret do perímetro de serviço do VPC-SC. Dataform não oferece suporte ao VPC-SC no momento.