[ https://issues.apache.org/jira/browse/SOLR-6892?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14264848#comment-14264848 ]
Noble Paul edited comment on SOLR-6892 at 1/5/15 6:46 PM: ---------------------------------------------------------- We have a fairly complex system in the URP chain. It has ported very badly from the standalone to solrcloud The problem is the current configuration is not capable of capturing the various usecases We have most of the logic hidden behind the scenes and not possible for users to manipulate. In short there are three kind of URPs possible. * pre processor : The chain that is executed at the node where the request is received. This is particularly useful if there is some heavy lifting to be done and you don't wish to overwhelm the leader. * processor : Invoked at the leader before the DistributedUpdateProcessor is invoked * post processor : Invoked in all replicas before the RunUpdateProcessor is invoked All these can be separate chains passed on the the UpdateRequestHandlers . was (Author: noble.paul): We have a fairly complex system in the URP chain. It has ported very badly from the standalone to solrcloud The problem is the current configuration is not capable of capturing the various usecases We have most of the logic hidden behind the scenes and not possible for users to manipulate. In short there are three kind of URPs possible. * pre.processor : The chain that is executed at the node where the request is received * processor : Invoked at the leader before the DistributedUpdateProcessor is invoked * post processor : Invoked in all replicas before the RunUpdateProcessor is invoked All these can be separate chains passed on the the UpdateRequestHandlers . > Make it possible to define update request processors as toplevel components > ---------------------------------------------------------------------------- > > Key: SOLR-6892 > URL: https://issues.apache.org/jira/browse/SOLR-6892 > Project: Solr > Issue Type: Improvement > Reporter: Noble Paul > Assignee: Noble Paul > > The current update processor chain is rather cumbersome and we should be able > to use the updateprocessors without a chain. > The scope of this ticket is > * A new tag <updateProcessor> becomes a toplevel tag and it will be > equivalent to the {{<processor>}} tag inside > {{<updateRequestProcessorChain>}} . The only difference is that it should > require a {{name}} attribute. The {{<updateProcessorChain>}} tag will > continue to exist and it should be possible to define <processor> inside as > well . It should also be possible to reference a named URP in a chain. > * Any update request will be able to pass a param {{processor=a,b,c}} , > where a,b,c are names of update processors. A just in time chain will be > created with those URPs > * Some in built update processors (wherever possible) will be predefined with > standard names and can be directly used in requests > * What happens when I say processor=a,b,c in a request? It will execute the > default chain after the just-in-time chain {{a->b->c}} . > * How to execute a different chain other than the default chain? the same old > mechanism of update.chain=x means that the chain {{x}} will be applied after > {{a,b,c}} > * How to avoid the default processor chain from being executed ? There will > be an implicit URP called {{STOP}} . send your request as > processor=a,b,c,STOP. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org