2014-06-17 4 views
23

पार्स करने 1.2.1 Elasticsearch को अद्यतन करने के बाद के बाद मैं निम्नलिखित मानचित्रण पर निम्न अपवाद मिलती रहती है:Elasticsearch 1.2.1 अपवाद: रूट प्रकार मानचित्रण नहीं खाली

Caused by: org.elasticsearch.index.mapper.MapperParsingException: Root type mapping not empty after parsing! Remaining fields: [tags : {properties={tags={index=not_analyzed, type=string}}}] 
    at org.elasticsearch.index.mapper.DocumentMapperParser.parse(DocumentMapperParser.java:265) 
    at org.elasticsearch.index.mapper.DocumentMapperParser.parseCompressed(DocumentMapperParser.java:189) 
    at org.elasticsearch.index.mapper.MapperService.parse(MapperService.java:387) 
    at org.elasticsearch.index.mapper.MapperService.merge(MapperService.java:253) 
    at org.elasticsearch.cluster.metadata.MetaDataCreateIndexService$2.execute(MetaDataCreateIndexService.java:363) 
:

{ 
    "tags": { 
     "properties": { 
      "tags": { 
       "type": "string", 
       "index": "not_analyzed" 
      } 
     } 
    } 
} 

यह अपवाद नहीं है

वह क्यों है?

उत्तर

10

@Mark इस में एक बग हो गया लगता है क्या कर सकते हैं 1.2.X. ऐसे कई अन्य लोग हैं जिन्होंने समान मुद्दों की सूचना दी है, मैं नीचे दिए गए टिकटों से लिंक करूंगा। असल में ऐसा लगता है कि वे 1.2.एक्स में मैपिंग के लिए वाक्यविन्यास पर कड़े हो गए हैं, लेकिन ऐसा लगता है कि उन्होंने पहले मान्य मैपिंग के साथ कुछ समस्याएं पैदा की हैं। आपका एक उदाहरण है।

मैं सुझाव देता हूं कि आप एक बग रिपोर्ट खोलें - संख्याओं में अधिक शक्ति। यदि आप टिकट खोलते हैं तो "मुझे भी" कहने में झुकाव की खुशी है, क्योंकि मैंने 1.2.1 पर समस्या को फिर से बनाया है।

curl -XPUT localhost:9200/yourindexname -d 
'{ 
    "mappings": 
    { 
    "tags": 
     { 
     "properties": 
     { 
      "tags": 
      { 
      "type":"string", 
      "index":"not_analyzed" 
      } 
      } 
     } 
    } 
}' 

टिकट::

https://github.com/elasticsearch/elasticsearch/issues/6414

https://github.com/elasticsearch/elasticsearch/issues/6304

https://github.com/elasticsearch/elasticsearch/issues/6415

अभी के लिए मैं काम करने के लिए निम्न जो मेरा मानना ​​है कि आप एक ही वांछित परिणाम देता कर लिया है

+0

आपके उत्तर के लिए धन्यवाद, मुझे बहुत मदद की! – kenota

+2

जब मैंने आपके द्वारा सुझाए गए प्रयासों को आजमाया है, तो मुझे "{" त्रुटि "मिलती है:" इंडेक्सअलीएक्सएक्सिस्ट अपवाद [[अनुक्रमणिका नाम] पहले से मौजूद है] "," स्थिति ": 400}"। कोई उपाय? –

+2

@ कार्टिकेयसिन्हा आप शायद पहले से मौजूद किसी मौजूदा नाम के साथ एक नई अनुक्रमणिका बनाने का प्रयास करें। – Shmukers

6

यह तुम्हारी मदद करेगा

क्या आप

curl -XPUT localhost:9200/new_index -d ' 
{ 
    "mappings": { 
    "tags": { 
     "properties": { 
     "tags": { 
      "type":"string", 
      "index":"not_analyzed" 
     } 
     } 
    } 
    } 
}' 

क्या करना चाहते हैं चाहते हो जाएगा या आप भी इस तरह से

curl -XPUT localhost:9200/new_index/new_index_type/_mappings -d ' 
{ 
    "new_index_type": { 
    "properties": { 
     "tags": { 
     "type": "string", 
     "index": "not_analyzed" 
     } 
    } 
    } 
}' 
1

मुझे एक ही समस्या थी क्योंकि लोचदार config/mappings निर्देशिका में उसी प्रकार के साथ मैपिंग्स थीं। मैपिंग फ़ाइल को हटाने से मेरी समस्या बेची गई।

+0

यह मेरे लिए 1.7 पर भी तय किया गया। मेरे पास उपरोक्त के रूप में कॉन्फ़िगरेशन में केवल एक मैपिंग था, लेकिन मैं अपनी लॉगस्टैश कॉन्फ़िगरेशन में elasticsearch आउटपुट के टेम्पलेट पैरामीटर में स्पष्ट रूप से इसे भी सेट कर रहा था। – CrazyPyro

संबंधित मुद्दे