[ https://issues.apache.org/jira/browse/SOLR-139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12470076 ]
Ryan McKinley commented on SOLR-139: ------------------------------------ > > If the field modes were parameters, they could be reused for other update > handlers like SQL or CSV > Perhaps something like: > /update/xml?modify=true&f.price.mode=increment,f.features.mode=append > Yes. I think we should decide a standard 'modify modes' syntax that can be used across handlers. In this example, I am using the string: mode=cat=DISTINCT,features=APPEND,price=INCREMENT,sku=REMOVE,OVERWRITE and passing it to 'parseFieldModes' in XmlUpdateRequestHandler. Personally, I think all the modes should be specified in a single param rather then a list of them. I vote for a syntax like: <lst name="params"> <str name="mode">cat=DISTINCT,features=APPEND,price=INCREMENT,sku=REMOVE,OVERWRITE</str> </lst> or: <lst name="params"> <str name="mode">cat:DISTINCT,features:APPEND,price:INCREMENT,sku:REMOVE,OVERWRITE</str> </lst> rather then: <lst name="params"> <str name="f.cat.mode">DISTINCT</str> <str name="f.features.mode">APPEND</str> <str name="f.price.mode">INCREMENT</str> <str name="f.sku.mode">REMOVE</str> <str name="modify.default.mode">OVERWRITE</str> </lst> >> sku=REMOVE is required because sku is a stored field that is written to with >> copyField. > I'm not sure I quite grok what REMOVE means yet, and how it fixes the > copyField problem. > I'm using 'REMOVE' to say "remove the previous value of this field before doing anything." Essentially, this makes sure you new document does not start with a value for 'sku'. > Another way to work around copyField is to only collect stored fields that > aren't copyField targets. I just implemented this. It is the most normal case, so it should be the default. It can be overridden by setting the mode for a copyField explicitly. > Support updateable/modifiable documents > --------------------------------------- > > Key: SOLR-139 > URL: https://issues.apache.org/jira/browse/SOLR-139 > Project: Solr > Issue Type: Improvement > Components: update > Reporter: Ryan McKinley > Attachments: SOLR-139-IndexDocumentCommand.patch, > SOLR-139-IndexDocumentCommand.patch, SOLR-139-XmlUpdater.patch > > > It would be nice to be able to update some fields on a document without > having to insert the entire document. > Given the way lucene is structured, (for now) one can only modify stored > fields. > While we are at it, we can support incrementing an existing value - I think > this only makes sense for numbers. > for background, see: > http://www.nabble.com/loading-many-documents-by-ID-tf3145666.html#a8722293 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.