: : Is there a way to have solr execute my ConditionalCopyProcessor on the : actual updated doc (the one resulting from solr retrieving all stored values : and merging with update request values), and not on the request doc ?
Partial Updates, and loading the existing stored fields of a document that is being partially updated, happens in the DistributedUpdateProcessor as part of hte leader logic (so that we can be confident we have the correct field values and _version_ info even if there are competing updates to the same document) if you configure your update processor to happen *after* the DistributedUpdateProcessor, then the document will be fuly populated -- unfortunatly. the down side however is that your processorwill be run redundently on each replica, which can be anoying if it's a resource intensive update processor or requires hitting an external resource. NOTE: even if you aren't using SolrCloud, you still get an implicit instance of DistributedUpdateProcessor precisely so that partial updates will work... https://wiki.apache.org/solr/UpdateRequestProcessor#Distributed_Updates -Hoss