के लिए मेल नहीं खाता है तो मुझे Elasticsearch के साथ एक अजीब समस्या का सामना करना पड़ रहा है। मेरा मैपिंग निर्दिष्ट करता है कि एक निश्चित फ़ील्ड long
प्रकार है। अब गलती से मैं कुछ दस्तावेजों को इंडेक्स करने की कोशिश कर रहा था, जिसमें string
long
के बजाय उस फ़ील्ड के लिए टाइप किया गया था। मुझे Elasticsearch से कोई त्रुटि नहीं मिली लेकिन दस्तावेजों को कभी अनुक्रमित नहीं किया गया था। जब मैंने इस मुद्दे को ठीक किया तो दस्तावेज़ों को अनुक्रमित किया गया था।एलैस्टिकसेच चुपचाप विफल रहता है यदि दस्तावेज़
उदाहरण:
मेरे मानचित्रण:
{
"field1": {
"type": "long"
}
}
जब मैं इस दस्तावेज़ भेजने यह चुपचाप विफल रहता है: के रूप में उम्मीद
{
"field1": "this is a string"
}
जब मैं इस भेजने के काम करता है:
{
"field1": 12345
}
क्या इस तरह की त्रुटियों का पता लगाने का कोई तरीका है?
आप प्रतिक्रिया आप Elasticsearch से वापस हो रही है जब आप इस मूक सूचकांक विफलता है बता सकते हैं? –
शायद आपके पास [ignore_malformed] है (https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html#mapping-settings) ध्वज वैश्विक स्तर पर सत्य पर सेट है। क्या आप एक उदाहरण दस्तावेज प्रदान कर सकते हैं जिसे आपने अनुक्रमित किया है जिसके कारण यह चुपचाप विफल हो गया है, यह भी elasticsearch का संस्करण है। – keety
उदाहरण के लिए मेरा अद्यतन प्रश्न देखें। मुझे लगता है कि जिस ध्वज का आपने अभी उल्लेख किया है वह वह हो सकता है जो मैं ढूंढ रहा था। एकमात्र मुद्दा यह है कि यह केवल विकृत क्षेत्र को अनदेखा कर देगा, लेकिन फिर भी उस क्षेत्र के बाकी हिस्सों को अनुक्रमित करेगा जो उस क्षेत्र के लिए मेरे लिए अच्छा नहीं है। मैं इसे विफल करना चाहता हूं और एक त्रुटि लौटाता हूं अगर यह एक विकृत फ़ील्ड को इंडेक्स करने का प्रयास करता है। क्या ऐसा करने के लिए कोई रास्ता है? –