lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexandre Rafalovitch <arafa...@gmail.com>
Subject Re: Running an updateProcessor after copyField has occurred?
Date Fri, 12 Sep 2014 20:35:46 GMT
If you do copyField equivalent in the request processor (there is a
URP for that) before the script one, you would then not need to do the
copyField in the schema. So, a move, not a duplicate.

Or are things more complicated than that?

Regards,
   Alex.
Personal: http://www.outerthoughts.com/ and @arafalov
Solr resources and newsletter: http://www.solr-start.com/ and @solrstart
Solr popularizers community: https://www.linkedin.com/groups?gid=6713853


On 12 September 2014 15:49, Douglas Stonham
<Douglas.Stonham@software.dell.com> wrote:
> I'm using the StatelessScriptUpdateProcessorFactory to run a script against data as it
is imported.
>
> Some relevant pieces from solrconfig.xml:
>
>         <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
>                 <lst name="defaults">
>                         <str name="config">data-config.xml</str>
>                         <str name="update.chain">textCopyByLang</str>
>                 </lst>
>         </requestHandler>
>
>         <updateRequestProcessorChain name="textCopyByLang">
>                 <processor class="solr.StatelessScriptUpdateProcessorFactory">
>                         <str name="script">textCopyByLang.js</str>
>                 </processor>
>                 <processor class="solr.LogUpdateProcessorFactory" />
>                 <processor class="solr.RunUpdateProcessorFactory" />
>         </updateRequestProcessorChain>
>
> In schema.xml I have a number of fields all being combined into one "text" field using
copyField.  Unfortunately this apparently doesn't happen until after the processor chain has
completed so the script can't make use of the combined text.
>
> i.e.
>         doc = cmd.solrDoc;
>         text = doc.getFieldValue("text");  // text is null
>
>
> Is there a way around this without duplicating all the copyFields inside the processing
script?
>
> Thanks,
>
> Douglas

Mime
View raw message