[
https://issues.apache.org/jira/browse/SOLR-139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yonik Seeley updated SOLR-139:
------------------------------
Attachment: SOLR-139.patch
Here's a patch for updateable docs that reuses the infrastructure we put in
place around versioning and realtime-get.
Only the JSON parser is currently implemented.
Recall that a normal field value in JSON is of the form:
{code}
"myfield":10
{code}
This patch extends the JSON parser to support extended values as a Map. For
example, to add an additional value to a multi-valued field, you would use
{code}
"myfield":{"add":10}
{code}
Using an existing data structure (a Map) should allow us to pass this through
javabin format w/o any additional changes.
This patch depends on optimistic locking (it's currently included in this
patch) and updating documents fully supports optimistic locking (i.e. you can
conditionally update a document based on it's version)
Right now only "add" and "set" are supported as mutators (and setting a null
value is like "remove"), but I figured it would be best to do a slice first
from start to finish.
Comments?
> Support updateable/modifiable documents
> ---------------------------------------
>
> Key: SOLR-139
> URL: https://issues.apache.org/jira/browse/SOLR-139
> Project: Solr
> Issue Type: New Feature
> Components: update
> Reporter: Ryan McKinley
> Attachments: Eriks-ModifiableDocument.patch,
> Eriks-ModifiableDocument.patch, Eriks-ModifiableDocument.patch,
> Eriks-ModifiableDocument.patch, Eriks-ModifiableDocument.patch,
> Eriks-ModifiableDocument.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-IndexDocumentCommand.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-IndexDocumentCommand.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-IndexDocumentCommand.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-IndexDocumentCommand.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-IndexDocumentCommand.patch, SOLR-139-IndexDocumentCommand.patch,
> SOLR-139-ModifyInputDocuments.patch, SOLR-139-ModifyInputDocuments.patch,
> SOLR-139-ModifyInputDocuments.patch, SOLR-139-ModifyInputDocuments.patch,
> SOLR-139-XmlUpdater.patch, SOLR-139.patch,
> SOLR-269+139-ModifiableDocumentUpdateProcessor.patch, getStoredFields.patch,
> getStoredFields.patch, getStoredFields.patch, getStoredFields.patch,
> getStoredFields.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.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]