DBAtlas · Atlas d'exploitation des bases de données

CROSSSLOT: CROSSSLOT Keys in request don't hash to the same slot (les clés de la requête ne sont pas dans le même slot)

Redis

Que signifie cette erreur ?

Dans Redis Cluster, une commande multi-clés (par ex. MGET, MSET, SUNION) a été utilisée, mais les clés tombent dans des hash slots différents. Les opérations multi-clés exigent que toutes les clés soient dans le même slot.

Cause

En mode cluster, des commandes accédant à plusieurs clés à la fois sont appelées avec des clés réparties sur différents slots. Les clés sont distribuées sur différents nœuds, car elles n'utilisent pas de hash tag.

Comment la corriger

Utilisez un hash tag pour placer les clés liées dans le même slot : fixez une partie du nom de la clé avec des accolades (par ex. {user1}:profile et {user1}:settings vont dans le même slot). N'utilisez les commandes multi-clés qu'avec des clés partageant le même hash tag. Vous pouvez aussi découper les opérations en commandes mono-clé.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur