Códigos de error y límites

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Las solicitudes que haces a los almacenes de datos pueden fallar debido a una mala conectividad o a otros problemas.Para manejar errores y devolver mensajes con un código de error, envuelve las funciones de almacenamiento de datos en pcall() .

Referencia de código de error

Código de errorNombre de errorMensaje de errorNotas
101KeyNameEmptyEl nombre de la clave no puede estar vacío.Compruebe si la entrada de clave en la función de almacenamiento de datos es una cadena vacía.
102KeyNameLimitEl nombre de la clave supera el límite de 50 caracteres.Compruebe si la entrada de clave en la función de almacenamiento de datos supera una longitud de 50.
103ValueNotAllowedNo se puede permitir X en DataStore.Una función de actualización incorrecta devolvió un valor de tipo X.
104CantStoreValueNo se puede almacenar X en >.La función de actualización devolvió un valor de tipo X que no se serializó.
105ValueTooLargeEl valor serializado supera el límite X.Si estás estableciendo un valor con SetAsync() o UpdateAsync(), la longitud serializada del valor no puede exceder el tamaño X.Para verificar la longitud serializada de los datos, use JSONEncode() .
106MaxValueInvalidMaxValue debe ser un entero.Si estás pasando un valor máximo a GetSortedAsync() para un OrderedDataStore , debe ser un entero.
106MinValueInvalidMinValue debe ser un entero.Si estás pasando un valor mínimo a GetSortedAsync() para un OrderedDataStore , debe ser un entero.
106PageSizeGreaterPageSize debe estar dentro de un rango predefinido.El tamaño mínimo de página para un OrderedDataStore es 1.
106PageSizeLesserPageSize debe estar dentro de un rango predefinido.El tamaño máximo de página para un OrderedDataStore es de 100.
107MinMaxOrderInvalidMaxValue debe ser mayor o igual a MinValue.El valor máximo debe ser mayor o igual al valor mínimo para GetSortedAsync() .
301GetAsyncThrottleGetAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.GetAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
302SetAsyncThrottleSetAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.SetAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
303IncreAsyncThrottleIncrementAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.IncrementAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
304UpdateAsyncThrottleUpdateAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.UpdateAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
304TransformThrottleUpdateAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.UpdateAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
305GetSortedThrottleGetSorted solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.GetSortedAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
306RemoveAsyncThrottleRemoveAsync solicitud descartada. La solicitud se vio limitada, pero la cola estaba llena.RemoveAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
401DataModelNoAccessSolicitud fallida. DataModel no es accesible mientras la experiencia se está cerrando.DataModel no está inicializado porque la experiencia se está cerrando.
402LuaWebSrvsNoAccessSolicitud fallida. LuaWebService no es accesible mientras la experiencia se está cerrando.LuaWebService no está inicializado porque la experiencia se está cerrando.
403StudioAccessToApisNotAllowedNo se puede escribir en DataStore desde Studio porque el acceso a la API no está habilitado.El acceso a la API debe estar activo para usar almacenes de datos en Studio.
404InternalErrorOrderedDataStore no existe.No se encontró el OrderedDataStore asociado con esta solicitud. Esto podría ser una señal de corrupción de datos. Inténtalo de nuevo más tarde.
501InternalErrorNo se puede analizar la respuesta porque los datos pueden estar dañados.El servidor no pudo analizar la respuesta a tu solicitud. Esto podría ser una señal de corrupción de datos. Inténtalo de nuevo más tarde.
502RequestRejectedLos servicios API rechazaron la solicitud con error X.Se produjo un error X al procesar en los servidores de Roblox. Inténtalo de nuevo más tarde.
503InternalErrorLa solicitud de almacén de datos tuvo éxito, pero no se encontró la clave.La clave solicitada no se encontró en el almacén de datos. Esto podría ser una señal de corrupción de datos. Inténtalo de nuevo más tarde.
504InternalErrorLa solicitud de almacén de datos tuvo éxito, pero la respuesta no se formató correctamente.El servidor no pudo analizar la respuesta a tu solicitud. Esto podría ser una señal de corrupción de datos. Inténtalo de nuevo más tarde.
505InternalErrorOrderedDataStore la solicitud fue exitosa, pero la respuesta no se formató correctamente.El servidor no pudo analizar la respuesta a tu solicitud OrderedDataStore . Esto podría ser una señal de corrupción de datos. Inténtalo de nuevo más tarde.
509OperationNotAllowedLas operaciones de almacén de datos se bloquean mientras se ejecutan en un RCC personal para prevenir la posible corrupción de datos.Las escrituras del almacén de datos se bloquean en canales RCC privados.
511AttributeSizeTooLargeEl tamaño del atributo de metadatos supera el límite X.El tamaño de los metadatos serializados supera el límite de X. El valor X es dinámico. Si el tamaño cambia, el valor también cambia.
512UserIdLimitExceededUserID el tamaño supera el límite X.La longitud del array de ID de usuario proporcionado por el usuario supera el límite de X.
513AttributeFormatErrorEl formato de atributo userId no es válido.El ID de usuario proporcionado no es un número.
513AttributeFormatErrorEl formato de metadatos de atributos no es válido.El metadato no es una tabla.
GetVersionAsyncThrottleGetVersionAsync solicitud descartada.La solicitud se aceleró.:GetVersionAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
GetVersionAtTimeAsyncThrottleGetVersionAtTimeAsync solicitud descartada.La solicitud se aceleró.:GetVersionAtTimeAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
ListDataStoresAsyncThrottleListDataStoresAsync solicitud descartada.La solicitud se aceleró.:ListDataStoresAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
ListKeysAsyncThrottleListKeysAsync solicitud descartada.La solicitud se aceleró.:ListKeysAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
ListVersionsAsyncThrottleListVersionsAsync solicitud descartada.La solicitud se aceleró.:ListVersionsAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
RemoveVersionAsyncThrottleRemoveVersionAsync solicitud descartada.La solicitud se aceleró.:RemoveVersionAsync() la solicitud ha superado el tamaño máximo de la cola y Roblox no puede procesar las solicitudes en la velocidad actual.
InvalidTimestampLa fecha y hora debe ser positiva y no más de diez minutos en el futuro.:La fecha y hora proporcionada a GetVersionAtTimeAsync() no era válida.

Códigos de error del servidor

Nombre de errorMensaje de errorNotas
DatastoreThrottledLa tasa de solicitudes supera el máximo permitido para el datastore.Demasiadas solicitudes se enviaron a un solo almacén de datos.
InternalServerErrorOcurrió un error interno del servidor.Error ocasional en los servidores de Roblox. Inténtalo de nuevo, idealmente con retroceso exponencial.
InvalidPlaceEl lugar proporcionado no es válido.No hay una ID de universo coincidente para el lugar. Inténtalo de nuevo más tarde.
InvalidTargetEl objetivo proporcionado no es válido.El nombre de la clave del almacén de datos ordenado supera el límite de 50 caracteres.
InvalidUniverseEl universo proporcionado no es válido.No hay una ID de lugar coincidente para el universo. Inténtalo de nuevo más tarde.
InvalidUserIdsLos ID de usuario proporcionados tienen un formato inválido.No se pudieron analizar las ID de usuario.
KeyThrottledLa tasa de solicitudes supera el máximo permitido para la clave.La tasa de solicitudes supera la tasa máxima permitida de solicitudes para una sola clave.
KeyNotFoundLa clave solicitada no existe.La clave no existe.
N/ANo hay páginas para avanzar.Este error ocurre cuando llamas Pages:AdvanceToNextPageAsync() a la última página.

Límites

Los modelos de datos tienen límites .Si una experiencia supera estos límites, el servicio reduce automáticamente el uso del almacén de datos de la experiencia y causa que las solicitudes futuras se coloquen en una de las siguientes colas:

  • Establecer
  • Conjunto ordenado
  • Obtener
  • Obtenido ordenado

Las solicitudes en una cola se manejan en el orden en que se reciben.La función llamada sigue produciendo mientras su solicitud siga en cola.Si la clave del almacén de datos se ve limitada, la solicitud se coloca en una cola pero se omite temporalmente.

Cada cola tiene un límite de 30 solicitudes.Cuando se alcanza el límite de una cola, las solicitudes fallan con un código de error en el rango 301-306, lo que indica que las solicitudes se han eliminado por completo.

Límites del servidor

A cada servidor se le permite un cierto número de solicitudes de almacén de datos en función del tipo de solicitud y del número de usuarios.Usa GetRequestBudgetForRequestType() para confirmar el número de solicitudes de almacén de datos que el lugar actual puede hacer.

Para cada tipo de solicitud, el límite se comparte entre todas las funciones enumeradas.

Tipo de solicitudFuncionesSolicitudes por minuto
ObtenerGetAsync()60 + numPlayers × 10
EstablecerClass.GlobalDataStore:SetAsync()|SetAsync()``Class.GlobalDataStore:IncrementAsync()|IncrementAsync()``Class.GlobalDataStore:UpdateAsync()|UpdateAsync()``Class.GlobalDataStore:RemoveAsync()|RemoveAsync()60 + numPlayers × 10
Obtener ordenadoGetSortedAsync()5 + numPlayers × 2
Obtener versiónClass.DataStore:GetVersionAsync()|GetVersionAsync()``Class.DataStore:GetVersionAtTimeAsync()|GetVersionAtTimeAsync()5 + numPlayers × 2
ListaClass.DataStoreService:ListDataStoresAsync()|ListDataStoresAsync()``Class.DataStore:ListKeysAsync()|ListKeysAsync()``Class.DataStore:ListVersionsAsync()|ListVersionAsync()5 + numPlayers × 2
QuitarRemoveVersionAsync()5 + numPlayers × 2

Limitaciones de datos

Las tiendas de datos limitan la cantidad de datos que se pueden usar por entrada.

El nombre del almacén de datos, el nombre de la clave y el alcance deben estar todos dentro de una cierta longitud de caracteres. Usa string.len() para comprobar su longitud.

Los datos (valor de clave) también se almacenan como una cadena, independientemente de su tipo inicial.Puedes verificar el tamaño de los datos con la función JSONEncode(), que convierte los datos de Luau en una tabla JSON serializada.

ComponenteNúmero máximo de caracteres
Nombre del almacén de datos50
Nombre de clave50
Alcance50
Datos (valor de clave)4,194,304 por clave

Límites de metadatos

Límites al número de caracteres en el metadato definido por el usuario.

ComponenteNúmero máximo de caracteres
Nombre de clave50
Valor250
Pares de clave-valor300

Límites de rendimiento

Los límites de rendimiento por tecla garantizan que el rendimiento sea óptimo en los servidores de Roblox.Cada límite se aplica a cada clave única en todos los servidores en una experiencia y se actualiza con el tiempo.

Roblox examina el uso de la cuota asociada con la clave en los últimos 60 segundos.Si el uso, incluida la solicitud actual, está dentro del límite de rendimiento, la solicitud se aprueba.Si el uso excede el límite, la solicitud se rechaza.

Tipo de solicitudLímite
Leer25 MB por minuto
Escribir4 MB por minuto

Limites de almacenamiento

Actualmente, no hay límites de almacenamiento forzados en las tiendas de datos.