2013-01-11 7 views
13

चलाते समय ईआरआर अमान्य डीबी इंडेक्स मैंने अभी मौजूदा रेल कोडबेस पर काम करना शुरू कर दिया है और मैं कोडबेस में परीक्षण चलाने की कोशिश कर रहा हूं। हालांकि, जब मैं bundle exec rspec spec/ चलाने मैं हर परीक्षण पर निम्न त्रुटि मिलती है:रेडिस :: कमांडरर: आरएसपीसी

Failure/Error: Unable to find matching line from backtrace 
Redis::CommandError: 
    ERR invalid DB index 
# ./lib/redised.rb:35:in `flushdb_all' 
# ./lib/redised.rb:35:in `each_value' 
# ./lib/redised.rb:35:in `flushdb_all' 

मैं रेल के लिए बहुत नया हूँ - मैं केवल में माइकल हार्टल के रेल ट्यूटोरियल 11 अध्याय के 8 कार्य पूरा हो जाए - तो मैं मैं रेडिस से परिचित नहीं हूँ। मेरा रेडिस संस्करण redis-2.4.17 है।

उत्तर

21

समस्या यह थी कि मुझे डेटाबेस की संख्या बढ़ाने की आवश्यकता थी। ऐसा करने के लिए, मैं /usr/local/etc पर गया और redis.conf संशोधित किया। मैंने डेटाबेस संख्या 128: databases 128 पर सेट की है।

+0

मैं वर्तमान में सामना कर रहा हूँ के रूप में की कोशिश सूचकांक के बारे में सुनिश्चित नहीं हैं, तो इस मुद्दे। बस सोच रहा है कि 128 डेटाबेस के लिए आपका तर्क क्या था। – BenMorganIO

+1

@ बेनमोर्गनियो यह सिर्फ एक मनमाना संख्या है कि मेरी कंपनी कितनी उपयोग कर रही है। एक साल से अधिक होने के बाद से मैंने इसे हल किया, इसलिए मुझे यकीन नहीं है; एक सहयोगी ने मुझे उस नंबर की सिफारिश की हो सकती है। – MaxGabriel

+0

कुछ के लिए यह समस्या ठीक करने के बजाय बैंड-सहायता हो सकती है कि सूचकांक अप्रत्याशित रूप से क्यों बढ़ रहा है। – aceofspades

1

हालांकि यह बहुत देर हो चुकी है लेकिन दूसरों के लिए सहायक हो सकती है।

आप 'परीक्षण' की तरह डेटाबेस नाम का उपयोग कर रहे हैं तो कृपया उसे '0'/0. तरह कुछ सूचकांक की जगह आप 0 भाग्य के अपने index.best