[ 
https://issues.apache.org/jira/browse/SOLR-269?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ryan McKinley updated SOLR-269:
-------------------------------

    Attachment: SOLR-269-UpdateRequestProcessorFactory.patch

New version that started with Yonik's patch.  This masks the 'Chain' in a 
ChainedUpdateProcessorFactory.  By default it has two elements:
 1. RunUpdateProcessor
 2. LogUpdateProcessor

I moved the processor stuff to o.a.s.update.processor.  The Classes need to be 
public for them to get created with the PluginLoader.  

This still has a map<String,Factory> in core.

Here is the XML configuration I am using in the testing:

 <updateRequestProcessor>
   <factory name="standard" class="solr.ChainedUpdateProcessorFactory" >
     <chain class="solr.LogUpdateProcessorFactory" >
           <int name="maxNumToLog">100</int>
     </chain>
     <chain class="solr.CustomUpdateRequestProcessorFactory" >
            <lst name="name">
              <str name="n1">x1</str>
              <str name="n2">x2</str>
            </lst>
     </chain>
     <chain class="solr.CustomUpdateRequestProcessorFactory" >
            <lst name="name">
              <str name="nA">xA</str>
              <str name="nA">xA</str>
            </lst>
     </chain>
   </factory>
   
   <factory name="custom" class="solr.CustomUpdateRequestProcessorFactory" 
default="true" >
    <lst name="name">
      <str name="n8">88</str>
      <str name="n9">99</str>
    </lst>
   </factory>
 </updateRequestProcessor>


I'm starting to like the structure.  

thoughts?


> UpdateRequestProcessorFactory - process requests before submitting them
> -----------------------------------------------------------------------
>
>                 Key: SOLR-269
>                 URL: https://issues.apache.org/jira/browse/SOLR-269
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Ryan McKinley
>            Assignee: Ryan McKinley
>             Fix For: 1.3
>
>         Attachments: SOLR-269-UpdateRequestProcessorFactory.patch, 
> SOLR-269-UpdateRequestProcessorFactory.patch, 
> SOLR-269-UpdateRequestProcessorFactory.patch, UpdateProcessor.patch
>
>
> A simple UpdateRequestProcessor was added to a bloated SOLR-133 commit. 
> An UpdateRequestProcessor lets clients plug in logic after a document has 
> been parsed and before it has been 'updated' with the index.  This is a good 
> place to add custom logic for:
>  * transforming the document fields
>  * fine grained authorization (can user X updated document Y?)
>  * allow update, but not delete (by query?)
>    <requestHandler name="/update" class="solr.StaxUpdateRequestHandler" >
>      <str 
> name="update.processor.class">org.apache.solr.handler.UpdateRequestProcessor</str>
>      <lst name="update.processor.args">
>       ... (optionally pass in arguments to the factory init method) ...
>      </lst> 
>    </requestHandler>
> http://www.nabble.com/Re%3A-svn-commit%3A-r547495---in--lucene-solr-trunk%3A-example-solr-conf-solrconfig.xml-src-java-org-apache-solr-handler-StaxUpdateRequestHandler.java-src-java-org-apache-solr-handler-UpdateRequestProcessor.jav-tf3950072.html#a11206583

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to