PreAnalyzedFieldUpdateProcessor issues in Solrcloud

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

PreAnalyzedFieldUpdateProcessor issues in Solrcloud

Markus Jelsma-2
Hello,

We are moving our text analysis to outside of Solr and use PreAnalyzedField to speed up indexing. We also use MLT, but these two don't work together, there is no way for MLT to properly analyze a document using the PreAnalyzedField's analyzer, and it does not pass the code in the MLT qparser where it checks for FieldType.isExplicitAnalyzer().

So instead of changing the schema, i tried using PreAnalyzedFieldUpdateProcessor. This would be ideal because MLT still works and i can still manually index non-preanalyzed documents when developing, just by switching URP chain.

I cannot get it to work. When i place the URP on top of all others i get:

TransactionLog doesn't know how to serialize class org.apache.lucene.document.Field; try implementing ObjectResolver?
        at org.apache.solr.update.TransactionLog$1.resolve(TransactionLog.java:100)
        at org.apache.solr.common.util.JavaBinCodec.writeVal(JavaBinCodec.java:264)

If i put the URP directly above Run i get:

Remote error message: TransactionLog doesn't know how to serialize class org.apache.lucene.document.Field; try implementing ObjectResolver?
        at org.apache.solr.update.processor.DistributedZkUpdateProcessor.doDistribFinish(DistributedZkUpdateProcessor.java:1189)
        at org.apache.solr.update.processor.DistributedUpdateProcessor.finish(DistributedUpdateProcessor.java:1096)

If i remove the DistributedURP indexing a preanalyzed document works, but, my stored field is suddenly prefixed with:

org.apache.lucene.document.Field:stored,indexed,tokenized,termVector,termVectorOffsets,termVectorPosition,omitNorms<content_nl:

This is not the case when i use PreAnalyzedField. The field is searchable so that does work.

How can i get it work work in Solrcloud and how do i prevent my stored field being prefixed? This is with Solr 8.3.1.

Thanks,
Markus