Memecahkan masalah Dataform

Dokumen ini menunjukkan cara menyelesaikan masalah terkait Dataform.

Akses ke BigQuery ditolak

Error berikut terjadi saat Anda memicu pemanggilan alur kerja sebelum memberikan akses Dataform ke BigQuery:

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

Untuk mengatasi error ini, beri Dataform akses ke BigQuery.

Token akses untuk repositori jarak jauh ditolak

Error berikut terjadi saat token autentikasi untuk repositori pihak ketiga yang terhubung tidak memiliki akses ke repositori tersebut:

The access token for remote repository REPOSITORY_NAME was rejected

Untuk mengatasi error ini, periksa izin yang diperlukan di penyedia Git Anda dan perbarui token autentikasi Secret Manager sebagaimana mestinya. Untuk mengetahui informasi selengkapnya tentang autentikasi repositori Git pihak ketiga di Dataform, lihat Menghubungkan ke repositori Git pihak ketiga.

Kuota BigQuery terlampaui

Error berikut terjadi saat jumlah permintaan API yang dikirim Dataform ke BigQuery melebihi kuota BigQuery:

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

Untuk mengatasi error ini, kurangi jumlah kueri paralel menjadi kurang dari 250 dengan cara berikut:

Untuk mengetahui petunjuk cara mengatasi error ini di BigQuery, lihat Memecahkan masalah error kuota dan batas.

Batas konkurensi kueri BigQuery terlampaui

Error berikut terjadi saat jumlah kueri serentak yang dieksekusi ke BigQuery melebihi batas serentak kueri BigQuery:

Exceeded rate limits: too many concurrent queries for this project_and_region

Untuk mengatasi error ini, kurangi jumlah kueri paralel menjadi kurang dari 250 dengan cara berikut:

Untuk mengetahui petunjuk cara mengatasi error ini di BigQuery, lihat Memecahkan masalah error kuota dan batas.

Error pemanggilan alur kerja BigQuery

Error berikut terjadi selama eksekusi alur kerja SQL ke BigQuery:

Untuk mengatasi error ini, lihat Pesan error BigQuery.

Kompilasi gagal

Error berikut terjadi selama kompilasi karena ukuran atau jumlah kueri yang dikompilasi:

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

Untuk mengatasi error ini, ikuti langkah-langkah berikut:

  1. Update Dataform core ke versi terbaru.
  2. Periksa alur kerja SQL Anda untuk mengidentifikasi dan mengurangi inefisiensi.
  3. Mengurangi ukuran kueri SQL.
  4. Kurangi jumlah operasi JavaScript di memori, misalnya:

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

Untuk mengetahui informasi selengkapnya tentang batas resource kompilasi Dataform, lihat Kuota dan batas.

@dataform/core error dependensi

Error berikut terjadi selama kompilasi jika dependensi dataform-core di package.json sudah tidak berlaku:

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

Dependensi @dataform/core diperlukan di package.json. Saat Anda menginisialisasi ruang kerja pertama di repositori Anda, Dataform akan otomatis mengisi package.json dengan versi @dataform/core saat ini. Anda perlu mengupdate @dataform/core ke versi terbaru saat aplikasi dirilis.

Untuk mengatasi error ini, update @dataform/core ke versi terbaru.

Kegagalan untuk menyelesaikan dataform.json

Error berikut terjadi saat Anda menginisialisasi ruang kerja Dataform, tetapi proses inisialisasi gagal menginstal semua paket:

Uncaught Error: Failed to resolve dataform.json

Untuk mengatasi error ini, di ruang kerja Anda, buka package.json, lalu klik Install packages.

git+ target paket tidak didukung

Error berikut terjadi saat Anda menentukan paket dalam package.json dengan target yang diawali dengan git+:

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

Formulir data tidak mendukung target paket yang diawali dengan git+.

Untuk mengatasi error ini, buat URL tar.gz paket dan perbarui target paket di package.json. Untuk mengetahui informasi selengkapnya tentang cara menginstal paket di Dataform, lihat Menginstal paket di Dataform.

Waktu penginstalan paket habis

Error berikut terjadi saat ukuran paket yang ditentukan dalam package.json melebihi ukuran maksimum dependensi NPM:

API request error: Package installation timed out

Untuk mengatasi error ini, hapus paket redundan dari package.json. Pastikan file package.json tidak berisi @dataform/cli, dan ukuran total dependensi NPM yang ditentukan tidak melebihi 200 Mb.

Jika konfigurasi rilis Anda merujuk ke Git commitish, pastikan file package.json pada targetnya valid.

Registry paket pribadi tidak dapat dijangkau

Error berikut terjadi saat autentikasi Dataform untuk paket pribadi sudah tidak berlaku:

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

Untuk mengatasi error ini, pastikan detail autentikasi registry pribadi valid untuk setiap registry NPM. Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi paket pribadi di Dataform.

Repositori jarak jauh tidak dapat dicapai

Error berikut terjadi karena kegagalan Git atau saat nama cabang dalam repositori Git pihak ketiga yang terhubung berisi karakter non-ascii atau non-Inggris:

Remote repository REPOSITORY_NAME could not be reached.

Untuk mengatasi error ini, periksa nama cabang di repositori pihak ketiga yang terhubung. Jika nama cabang berisi karakter non-ascii atau non-Inggris, hapus cabang tersebut.

Repositori jarak jauh tidak dapat dicapai: generic::invalid_argument

Error berikut terjadi di halaman Release configurations details saat rilis terjadwal terkadang mengalami koneksi GitHub, GitLab, atau Bitbucket yang lambat, tidak stabil, atau terputus:

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

Anda tidak perlu melakukan tindakan apa pun. Kecuali jika masalah GitHub, GitLab, atau Bitbucket Cloud tetap ada, rilis terjadwal berikutnya akan berhasil.

Rahasia untuk repositori jarak jauh tidak dapat dicapai

Error berikut terjadi saat akun layanan Dataform Anda tidak dapat mengakses rahasia Secret Manager untuk repositori pihak ketiga yang terhubung:

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.

Untuk mengatasi error ini, lakukan hal berikut:

  • Pastikan akun layanan Dataform Anda memiliki akses ke secret.
  • Kecualikan rahasia dari perimeter layanan VPC-SC Anda. Dataform saat ini tidak mendukung VPC-SC.