, लेकिन शीर्ष जवाब Solr 6.0 में मेरे लिए काम नहीं किया करने के लिए नीचे प्रोसेसर जोड़े एक बहुविकल्पीय क्षेत्र पर डुप्लिकेट प्रविष्टि जोड़ने का प्रयास करने के लिए। UniqFieldsUpdateProcessorFactory
से पहले एक प्रोसेसर ठीक था। तो कुछ मेरी solrconfig.xml को इस तरह जोड़ना काम:
<updateRequestProcessorChain name="uniq-fields">
<processor class="org.apache.solr.update.processor.DistributedUpdateProcessorFactory"/>
<processor class="org.apache.solr.update.processor.UniqFieldsUpdateProcessorFactory">
<str name="fieldName">YourFieldA</str>
<str name="fieldName">yourFieldB</str>
</processor>
<processor class="solr.RunUpdateProcessorFactory" />
कहाँ YourFieldA और YourFieldB अपने Schema.xml में खेतों परिभाषित कर रहे हैं। ध्यान रखें कि आप उचित requestHandler
यानी को यह जोड़ना होगा कि:
<requestHandler name="/update" class="solr.UpdateRequestHandler" >
<lst name="defaults">
<str name="update.chain">uniq-fields</str>
</lst>
यह केवल शामिल होने से डुप्लिकेट नहीं रोका जाएगा, लेकिन यह भी निर्दिष्ट क्षेत्रों के लिए अद्यतन पर अपने सूचकांक से सभी डुप्लिकेट को हटा दें।
स्रोत
2016-10-22 00:29:57
सोलर के वर्तमान संस्करण के साथ, आंतरिक lst/str लाइनें इस तरह की एक पंक्ति बन जाएंगी: multivaluedFieldXYZ –
Ethan
बस ध्यान दें कि यह कॉपीफ़िल्ड्स के लिए काम नहीं करेगा, लेकिन केवल जब दस्तावेज़ प्राप्त होता है अनुक्रमित। यह उस बिंदु पर सभी डुप्लिकेट आवेषण हटा देगा। –