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

MongoDB टेक्स्ट इंडेक्स त्रुटि:भाषा ओवरराइड समर्थित नहीं है

समाधान:

डिफ़ॉल्ट_भाषा सेट करें और भाषा_ओवरराइड एक ही शाब्दिक मूल्य के लिए (आपके मामले में "एन")।

मैं यहां कैसे पहुंचा...

मैंने वही समस्या मारा, वह भी मोंगो 2.6.1 पर।

मेरे मामले में मैंने एक भाषा_ओवरराइड . के साथ अनुक्रमणिका बनाई है एक ऐसे भाषा क्षेत्र की ओर इशारा करते हुए जहां पहले से ही असमर्थित मानों वाले दस्तावेज़ मौजूद थे (उदा. 'ar' - अरबी)।

यहां बताया गया है कि मैं इंडेक्स कैसे बना रहा था:

db.users.ensureIndex({ 
  "displayName": "text", 
  "about": "text", 
  "email": "text" 
}, { 
  "name": "users_full_text", 
  "default_language": "en",
  "language_override": "language"
});

मैं उम्मीद कर रहा था कि यह default_language पर वापस आ जाएगा जब भाषा_ओवरराइड value असमर्थित है, लेकिन जाहिरा तौर पर नहीं। यहाँ मोंगो क्या कहता है:

{
  "createdCollectionAutomatically" : false,
  "numIndexesBefore" : 3,
  "ok" : 0,
  "errmsg" : "language override unsupported: ar",
  "code" : 17262
}

ठीक है, ठीक है, इसलिए सूचकांक नहीं बनाया गया था, लेकिन मुझे इसे language_override के बिना बनाने में सक्षम होना चाहिए, है ना? गलत - mongo मुझे वही त्रुटि देता है भले ही मेरे पास अब language_override निर्दिष्ट नहीं है

ऐसा लगता है कि सूचकांक बनाने के असफल प्रयास ने सूचकांक के कुछ टूटे हुए संस्करण को पीछे छोड़ दिया है जो कहीं भी दिखाई नहीं देता है इसलिए मैं इसे छोड़ नहीं सकता (यह db.users.getIndexes() और इसे नाम से छोड़ने से काम नहीं चलता)।

अंत में मैं language_override . सेट करके इंडेक्स को ठीक करने में कामयाब रहा शाब्दिक मूल्य 'एन' के लिए, इस तरह:

db.users.ensureIndex({ 
  "displayName": "text", 
  "about": "text", 
  "email": "text" 
}, { 
  "name": "users_full_text", 
  "default_language": "en",
  "language_override": "en" 
});  

... जिसका मोंगो जवाब देता है:

{
  "createdCollectionAutomatically" : false,
  "numIndexesBefore" : 3,
  "numIndexesAfter" : 4,
  "ok" : 1
}

हुर्रे।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडीबी $log10

  2. नेस्टेड सरणी नेवला नोडज में तत्व पुश करें

  3. मोंगोडब को अपग्रेड करने का कोई प्रभाव नहीं पड़ता है और फिर भी पुराने संस्करण को दिखाता है

  4. दूरी कैसे प्राप्त करें - MongoDB टेम्प्लेट नियर फंक्शन

  5. सर्वर से कनेक्ट नहीं हो सका 127.0.0.1 shell/mongo.js