2012-07-03 11 views
12

मैंने हाल ही में अपने सोलर इंस्टेंस को 1,4 से 3.6 तक अपग्रेड कर दिया है। हालांकि, जब भी मैं अपनी अनुक्रमणिका अद्यतन करता हूं, अब मुझे अपने लॉग में एक "अपरिभाषित फ़ील्ड टेक्स्ट" गंभीर संदेश मिल रहा है।सोलर "अपरिभाषित फ़ील्ड टेक्स्ट"

मेरे पास मेरे स्कीमा में टेक्स्ट फ़ील्ड्स हैं (जो संस्करण 1.4 के रूप में मान्य था), लेकिन पहले कभी फ़ील्ड प्रकार के रूप में घोषित नहीं किया जाना था। क्या यह 3.6 में बदल गया है?

मेरे स्कीमा यहाँ है >>http://pastebin.com/KrCVab0U

SEVERE: org.apache.solr.common.SolrException: undefined field text 
     at org.apache.solr.schema.IndexSchema.getDynamicFieldType(IndexSchema.java:1330) 
     at org.apache.solr.schema.IndexSchema$SolrQueryAnalyzer.getAnalyzer(IndexSchema.java:408) 
     at org.apache.solr.schema.IndexSchema$SolrIndexAnalyzer.reusableTokenStream(IndexSchema.java:383) 
     at org.apache.lucene.queryParser.QueryParser.getFieldQuery(QueryParser.java:574) 
     at org.apache.solr.search.SolrQueryParser.getFieldQuery(SolrQueryParser.java:206) 
     at org.apache.lucene.queryParser.QueryParser.Term(QueryParser.java:1429) 
     at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1317) 
     at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1245) 
     at org.apache.lucene.queryParser.QueryParser.TopLevelQuery(QueryParser.java:1234) 
     at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:206) 
     at org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:79) 
     at org.apache.solr.search.QParser.getQuery(QParser.java:143) 
     at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:105) 
     at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:165) 
     at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) 
     at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376) 
     at org.apache.solr.handler.PingRequestHandler.handleRequestBody(PingRequestHandler.java:67) 
     at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) 
     at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376) 
     at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:365) 
     at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:260) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 
     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
     at java.lang.Thread.run(Thread.java:679) 
+0

वास्तव में, ऐसा लगता है पाठ क्षेत्र प्रकार मेरी स्कीमा में घोषित किया जाता है। लाइन 220 >> http://pastebin.com/KrCVab0U –

+0

कृपया देखें कि यह मदद करता है http://stackoverflow.com/questions/10130163/solr-query-http-error-404-undefined-field-text – krishnakumarp

+0

जहां तक मुझे लगता है कि आपके पास फ़ील्ड टेक्स्ट घोषित नहीं है, केवल फ़ील्ड टाइप करें। यदि आप टेक्स्ट नामक फ़ील्ड में सामग्री जोड़ने की कोशिश कर रहे हैं, तो "अपरिभाषित फ़ील्ड प्रकार" त्रुटि सही प्रतीत होती है, जो आपके स्कीमा में नहीं है। क्या मैं कुछ भूल रहा हूँ? – javanna

उत्तर

17

यह फ़ील्ड प्रकार "पाठ" के बारे में नहीं है। यह "टेक्स्ट" नामक फ़ील्ड के बारे में है।

आपने कॉन्फ़िगरेशन में डिफ़ॉल्ट खोज को "search_text" में बदल दिया है। कृपया "search_text" को "टेक्स्ट" में सभी संदर्भों का नाम बदलने का प्रयास करें। यदि यह समस्या को हल करता है, तो आप उस कॉन्फ़िगरेशन में कहीं भी जानते हैं जहां आप "टेक्स्ट" फ़ील्ड का जिक्र कर रहे हैं, संभवत: Solr Query - HTTP error 404 undefined field text

उम्मीद है कि यह मदद करता है।

8

मेरे पास यह मेरी solrconfig.xml फ़ाइल में है।

<requestHandler name="/admin/ping" class="solr.PingRequestHandler"> 
<lst name="invariants"> 
    <str name="q">solrpingquery</str> 
</lst> 
<lst name="defaults">  
    <str name="echoParams">all</str> 
    </lst> 
</requestHandler> 

आप इस Schema.xml में शामिल नहीं किया है, तो यह

<field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/> 

यह आपकी समस्या का समाधान होगा जोड़ें।

धन्यवाद

+1

, एक छोटा सा अंतर: किसी को "_ text _" फ़ील्ड को schema.xml ("टेक्स्ट" के बजाय) में जोड़ने की आवश्यकता है। "_ Text _" फ़ील्ड का उपयोग डिफ़ॉल्ट solrconfig –

2

यह आज भी मुझे हुआ। अपने एक प्रश्न कर रही हैं जब त्रुटि तब होती है आप इस तरह क्वेरी में डेटा उद्धृत दोगुना करने की जरूरत है:

filepath: "डेटा पूछे जा करने के लिए"

+0

में किया जाता है, यह अपरिभाषित फ़ील्ड "टेक्स्ट" त्रुटि को हल करने वाला नहीं है, क्या आपको @ lee-davis के समान त्रुटि मिलती है? –

2

मैं एक ही त्रुटि मिली जब मैं fq हिस्सा स्वच्छ प्रश्न का sanitizing के बाद, Solr

...&fq=type\:Product&... 

हालांकि मैं क्षेत्र नाम दिया type, त्रुटि कह रहे थे "अपरिभाषित क्षेत्र पाठ" प्राप्त किया।

जब मैं सफ़ाई हटा दिया, क्वेरी ठीक तो था:

...&fq=type:Product&... 

भ्रामक त्रुटि संदेश का कारण solrconfig.xml में था:

<requestHandler name="/select" class="solr.SearchHandler"> 
    <lst name="defaults"> 
    <str name="echoParams">explicit</str> 
    <int name="rows">10</int> 
    <str name="df">text</str> 
    </lst> 
</requestHandler> 
2

Solr व्यवस्थापक इंटरफ़ेस में आप देख सकते हैं वर्तमान में कार्य योजना तो आप सुनिश्चित कर सकते हैं कि आप सही रास्ते पर हैं या नहीं। pictrues नीचे

4.10.2 और उच्च संस्करण (लगता है)

solr.4.10.2

कम 4.10.2 से संस्करणों ilistruates। आपको बाईं ओर योजना मेनू का उपयोग करना चाहिए।

solr.4.10.2