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.ston...@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

Reply via email to