sql >> Database teknologi >  >> NoSQL >> Redis

Redis lua script virker ikke

Svaret på redis.call returnerer som en tabel, der ser sådan ud:{"ok": "string"} (hvis typen er en streng selvfølgelig)

Så for at tjekke korrekt, bør du ændre din kode til:

local keyType = redis.call("TYPE", KEYS[1]).ok

og resten af ​​koden vil fungere fint.

Problemet er dette:TYPE-kommandoen er en af ​​de få kommandoer, der returnerer et "simpel streng" eller "status" redis-svar (se redis-protokollens specifikationer for svartyperne). I redis lua-dokumentationen står der:

Redis statussvar -> Lua-tabel med et enkelt ok-felt, der indeholder status

Hvilket er, hvad der skete her.



  1. mongodb/mongoose findMany - find alle dokumenter med ID'er opført i array

  2. Rack-bevidsthed i Hadoop og dets fordele

  3. Hvad kan gøres ved at bruge CKANs asynkrone baggrundsjob?

  4. Mongoose - ved hjælp af Populate på en række ObjectId