ERR bit offset is not an integer or out of range: Bit offset is not an integer or out of range (el offset de bit no es un entero o está fuera de rango)
Redis¿Qué significa?
El offset de bit indicado a una operación de bits como SETBIT/GETBIT/BITCOUNT no es válido: no es un entero o está fuera del rango permitido. Redis no puede realizar una operación de bits en ese offset.
¿Por qué ocurre?
Pasar un valor no numérico como offset; usar un offset negativo; o indicar un offset muy grande que supera el límite superior permitido (una cadena de bits puede tener hasta 512 MB, es decir, unos 2^32 bits). Surge de errores de cálculo en estructuras de contadores/indicadores basadas en bitmaps.
Cómo solucionarlo
Asegúrese de que el offset sea un entero no negativo dentro del rango permitido (de 0 a ~2^32-1; las cadenas tienen como máximo 512 MB). Valide los cálculos de offset (p. ej., los derivados de IDs de usuario) frente a desbordamientos/valores negativos. Si se necesitan offsets muy grandes, diseñe los datos para repartirlos entre varias claves (sharding).
Más entradas de este motor
- ERR SELECT is not allowed in cluster modeSELECT is not allowed in cluster mode
- ERR wrong number of arguments for commandWrong number of arguments for command
- ERR Background save already in progressBackground save already in progress
- ERR Protocol error: invalid multibulk lengthProtocol error: invalid multibulk length (error de protocolo: longitud multibulk no válida)
- ERR Number of keys can't be greater than number of argsEVAL/EVALSHA: numkeys exceeds argument count (numkeys supera el número de argumentos)
- ERR WATCH inside MULTI is not allowedWATCH inside MULTI is not allowed
- ERR WAIT cannot be used with replica instancesWAIT cannot be used with replica instances (WAIT no puede usarse en instancias réplica)