Kode kesalahan dan batasan

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Permintaan yang Anda buat ke penyimpanan data dapat gagal karena konektivitas buruk atau masalah lainnya.Untuk menangani kesalahan dan mengembalikan pesan dengan kode kesalahan, bungkus fungsi penyimpanan data di pcall() .

Referensi kode kesalahan

Kode kesalahanNama kesalahanPesan kesalahanCatatan
101KeyNameEmptyNama kunci tidak boleh kosong.Periksa apakah input kunci ke fungsi penyimpanan data adalah string kosong.
102KeyNameLimitNama kunci melebihi batas karakter 50.Periksa apakah input kunci ke fungsi penyimpanan data melebihi panjang 50.
103ValueNotAllowedTidak dapat mengizinkan X di DataStore .Fungsi pembaruan yang buruk mengembalikan nilai tipe X.
104CantStoreValueTidak dapat menyimpan X di DataStore .Fungsi pembaruan mengembalikan nilai tipe X yang tidak di serialisasi.
105ValueTooLargeNilai seri melebihi batas X.Jika Anda mengatur nilai dengan SetAsync() atau UpdateAsync() , panjang seri dari nilai tidak boleh melebihi ukuran X .Untuk memeriksa panjang data yang di serialkan, gunakan JSONEncode() .
106MaxValueInvalidMaxValue harus menjadi bilangan bulat.Jika Anda melewati nilai maksimum ke GetSortedAsync() untuk OrderedDataStore , itu harus menjadi bilangan bulat.
106MinValueInvalidMinValue harus menjadi bilangan bulat.Jika Anda melewati nilai minimum ke GetSortedAsync() untuk OrderedDataStore , itu harus menjadi bilangan bulat.
106PageSizeGreaterPageSize harus berada dalam rentang yang telah ditentukan.Ukuran halaman minimum untuk OrderedDataStore adalah 1.
106PageSizeLesserPageSize harus berada dalam rentang yang telah ditentukan.Ukuran halaman maksimum untuk OrderedDataStore adalah 100.
107MinMaxOrderInvalidMaxValue harus lebih besar atau sama dengan MinValue .Nilai maksimum harus lebih besar atau sama dengan nilai minimum untuk GetSortedAsync() .
301GetAsyncThrottleGetAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.GetAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
302SetAsyncThrottleSetAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.SetAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
303IncreAsyncThrottleIncrementAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.IncrementAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
304UpdateAsyncThrottleUpdateAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.UpdateAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
304TransformThrottleUpdateAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.UpdateAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
305GetSortedThrottleGetSorted permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.GetSortedAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
306RemoveAsyncThrottleRemoveAsync permintaan diturunkan. Permintaan dibatasi tetapi antrian penuh.RemoveAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan saat ini di output.
401DataModelNoAccessPermintaan gagal. DataModel tidak dapat diakses saat pengalaman dimatikan.DataModel tidak diinisialisasi karena pengalaman sedang dimatikan.
402LuaWebSrvsNoAccessPermintaan gagal. LuaWebService tidak dapat diakses saat pengalaman dimatikan.LuaWebService tidak diinisialisasi karena pengalaman sedang dimatikan.
403StudioAccessToApisNotAllowedTidak dapat menulis ke DataStore dari Studio karena akses API tidak diaktifkan.Akses API harus aktif untuk menggunakan Data Store di Studio.
404InternalErrorOrderedDataStore tidak ada.The OrderedDataStore yang terkait dengan permintaan ini tidak ditemukan. Ini mungkin merupakan tanda korupsi data. Coba lagi nanti.
501InternalErrorTidak dapat menguraikan respons karena data mungkin rusak.Server tidak dapat memproses respons untuk permintaan Anda. Ini mungkin merupakan tanda korupsi data. Coba lagi nanti.
502RequestRejectedLayanan API menolak permintaan dengan kesalahan X.Kesalahan X terjadi saat diproses di server Roblox. Coba lagi nanti.
503InternalErrorPermintaan penyimpanan data berhasil tetapi kunci tidak ditemukan.Kunci yang diminta tidak ditemukan di Toko Data. Ini mungkin merupakan tanda korupsi data. Coba lagi nanti.
504InternalErrorPermintaan Penyimpanan Data berhasil tetapi respons tidak diformat dengan benar.Server tidak dapat memproses respons untuk permintaan Anda. Ini mungkin merupakan tanda korupsi data. Coba lagi nanti.
505InternalErrorpermintaan OrderedDataStore berhasil tetapi respons tidak diformat dengan benar.Server tidak dapat memproses respons untuk permintaan OrderedDataStore Anda. Ini mungkin merupakan tanda korupsi data. Coba lagi nanti.
509OperationNotAllowedOperasi Penyimpanan Data diblokir saat dijalankan di RCC Pribadi untuk mencegah kemungkinan korupsi data.Penulisan Toko Data diblokir di saluran RCC pribadi.
511AttributeSizeTooLargeUkuran atribut metadata melebihi batas X.Ukuran metadata yang diserial melebihi batas X. Nilai X adalah dinamis. Jika ukuran berubah, nilai juga berubah.
512UserIdLimitExceededUserID ukuran melebihi batas X.Panjang array ID pengguna yang disediakan oleh pengguna melebihi batas X.
513AttributeFormatErrorFormat atribut userId tidak valid.ID pengguna yang disediakan bukan angka.
513AttributeFormatErrorFormat metadata atribut tidak valid.metadata bukan meja.
GetVersionAsyncThrottleGetVersionAsync permintaan dijatuhkan.Permintaan tertahan.:GetVersionAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
GetVersionAtTimeAsyncThrottleGetVersionAtTimeAsync permintaan dijatuhkan.Permintaan tertahan.:GetVersionAtTimeAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
ListDataStoresAsyncThrottleListDataStoresAsync permintaan dijatuhkan.Permintaan tertahan.:ListDataStoresAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
ListKeysAsyncThrottleListKeysAsync permintaan dijatuhkan.Permintaan tertahan.:ListKeysAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
ListVersionsAsyncThrottleListVersionsAsync permintaan dijatuhkan.Permintaan tertahan.:ListVersionsAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
RemoveVersionAsyncThrottleRemoveVersionAsync permintaan dijatuhkan.Permintaan tertahan.:RemoveVersionAsync() permintaan telah melebihi ukuran antrian maksimum dan Roblox tidak dapat memproses permintaan pada kapasitas saat ini.
InvalidTimestampWaktu戳 harus positif dan tidak lebih dari sepuluh menit di masa depan.:Stempel waktu yang disediakan ke GetVersionAtTimeAsync() tidak valid.

Kode kesalahan server

Nama kesalahanPesan kesalahanCatatan
DatastoreThrottledTingkat permintaan melebihi batas maksimum yang diizinkan untuk datastore.Terlalu banyak permintaan dikirim ke satu penyimpanan data.
InternalServerErrorTerjadi kesalahan server internal.Kesalahan sesekali di server Roblox. Coba lagi, idealnya dengan penundaan eksponensial.
InvalidPlaceTempat yang disediakan tidak valid.Tidak ada ID Alam yang cocok untuk tempat itu. Coba lagi nanti.
InvalidTargetTarget yang disediakan tidak valid.Nama kunci Toko Data Tertata diperintah melebihi batas karakter 50.
InvalidUniverseAlam semesta yang disediakan tidak valid.Tidak ada ID Tempat yang cocok untuk alam semesta. Coba lagi nanti.
InvalidUserIdsID pengguna yang disediakan memiliki format yang tidak valid.Gagal memparserkan ID pengguna.
KeyThrottledTingkat permintaan melebihi batas maksimum yang diizinkan untuk kunci.Tingkat permintaan melebihi tingkat permintaan maksimum yang diizinkan untuk satu kunci.
KeyNotFoundKunci yang diminta tidak ada.Kunci tidak ada.
N/ATidak ada halaman untuk maju ke.Kesalahan ini terjadi saat Anda memanggil Pages:AdvanceToNextPageAsync() di halaman terakhir.

Batasan

Model data memiliki batas .Jika pengalaman melebihi batas ini, layanan secara otomatis membatasi penggunaan penyimpanan data pengalaman dan menyebabkan permintaan masa depan ditempatkan di salah satu antrian berikut:

  • Mengatur
  • Set diurutkan
  • Dapatkan
  • Dipesan mendapat

Permintaan di antrian ditangani dalam urutan yang diterimanya.Fungsi yang dipanggil terus menghasilkan selama permintaannya masih dalam antrian.Jika kunci penyimpanan data itu sendiri dibatasi, permintaan ditempatkan di antrian tetapi diabaikan sementara.

Setiap antrian memiliki batas 30 permintaan.Ketika batas antrian tercapai, permintaan gagal dengan kode kesalahan di rentang 301-306, menunjukkan bahwa permintaan telah ditinggalkan sepenuhnya.

Batas server

Setiap server diizinkan untuk meminta penyimpanan data tertentu jumlah permintaan berdasarkan jenis permintaan dan jumlah pengguna.Gunakan GetRequestBudgetForRequestType() untuk mengkonfirmasi jumlah permintaan penyimpanan data yang dapat dilakukan tempat saat ini.

Untuk setiap jenis permintaan, batas dibagikan di antara semua fungsi yang terdaftar.

Jenis permintaanFungsiPermintaan per menit
DapatkanGetAsync()60 + pemain num × 10
MengaturClass.GlobalDataStore:SetAsync()|SetAsync()``Class.GlobalDataStore:IncrementAsync()|IncrementAsync()``Class.GlobalDataStore:UpdateAsync()|UpdateAsync()``Class.GlobalDataStore:RemoveAsync()|RemoveAsync()60 + pemain num × 10
Dapatkan DiurutkanGetSortedAsync()5 + pemain num × 2
Dapatkan VersiClass.DataStore:GetVersionAsync()|GetVersionAsync()``Class.DataStore:GetVersionAtTimeAsync()|GetVersionAtTimeAsync()5 + pemain num × 2
DaftarClass.DataStoreService:ListDataStoresAsync()|ListDataStoresAsync()``Class.DataStore:ListKeysAsync()|ListKeysAsync()``Class.DataStore:ListVersionsAsync()|ListVersionAsync()5 + pemain num × 2
MenghapusRemoveVersionAsync()5 + pemain num × 2

Data batasan

Penyimpanan data membatasi berapa banyak data yang dapat digunakan per entri.

Nama penyimpanan data, nama kunci, dan scope semuanya harus berada di bawah panjang karakter tertentu. Gunakan string.len() untuk memeriksa panjangnya.

Data (nilai kunci) juga disimpan sebagai string, terlepas dari jenis awalnya.Anda dapat memeriksa ukuran data dengan fungsi JSONEncode(), yang mengubah data Luau menjadi tabel JSON berbalok.

KompositJumlah karakter maksimum
Nama toko data50
Nama kunci50
Skop50
Data (nilai kunci)4,194,304 untuk setiap kunci

Batas metadata

Batasan terhadap jumlah karakter dalam metadata yang didefinisikan pengguna.

KompositJumlah karakter maksimum
Nama kunci50
Nilainya250
Pasangan nilai kunci300

Batas keluaran

Batas pemrosesan per kunci memastikan bahwa kinerja optimal di server Roblox.Setiap batas berlaku untuk setiap kunci tunggal di semua server dalam pengalaman dan menyegarkan seiring waktu.

Roblox memeriksa penggunaan kuota yang terkait dengan kunci selama 60 detik terakhir.Jika penggunaan, termasuk permintaan saat ini, berada dalam batas kapasitas, permintaan disetujui.Jika penggunaan melebihi batas, permintaan ditolak.

Jenis permintaanMembatasi
Membaca25 MB per menit
Menulis4 MB per menit

Batas penyimpanan

Saat ini, tidak ada batas penyimpanan yang diterapkan pada penyimpanan data.