Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

रेडिस लुआ स्क्रिप्ट काम नहीं कर रही है

redis.call का जवाब इस तरह दिखने वाली तालिका के रूप में वापस आती है:{"ok": "string"} (यदि प्रकार निश्चित रूप से एक स्ट्रिंग है)

इसलिए ठीक से जाँच करने के लिए, आपको अपना कोड इस में बदलना चाहिए:

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

और शेष कोड ठीक काम करेगा।

मुद्दा यह है:TYPE कमांड उन कुछ कमांडों में से एक है जो "सरल स्ट्रिंग" या "स्टेटस" रेडिस रिप्लाई लौटाते हैं (प्रतिक्रिया प्रकारों के लिए रेडिस प्रोटोकॉल स्पेक्स देखें)। रेडिस लुआ प्रलेखन में यह कहा गया है कि:

<ब्लॉकक्वॉट>

रेडिस स्टेटस रिप्लाई -> लुआ टेबल जिसमें सिंगल ओके फील्ड है जिसमें स्टेटस है

यहाँ क्या हुआ है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. क्या रेडिस हैश के लिए एमजीईटी एनालॉग है?

  2. सिम्फनी पर रेडिस कैश उपसर्ग कुंजी सेट करें

  3. एचजीईटी और एचसेट कमांड के लिए रेडिस बेंचमार्किंग

  4. मैं किसी भी एमक्यू प्लेटफॉर्म में इस एकल समवर्ती वितरित कतार को कैसे कार्यान्वित कर सकता हूं?

  5. BookSleeve का उपयोग करके एक खुला रेडिस कनेक्शन बनाए रखना