官方文档:https://wiki.apache.org/solr/Atomic_Updates
SolrInputDocument solrInputDocument
=
new SolrInputDocument
(
)
;
solrInputDocument .addField ( "id" , id ) ;
Map <String , String > operation = new HashMap <> ( ) ;
operation .put ( "set" , "test1" ) ;
solrInputDocument .addField ( "title" , operation ) ;
solrServer .add (solrInputDocument ) ;
solrServer .commit ( ) ;
solrInputDocument .addField ( "id" , id ) ;
Map <String , String > operation = new HashMap <> ( ) ;
operation .put ( "set" , "test1" ) ;
solrInputDocument .addField ( "title" , operation ) ;
solrServer .add (solrInputDocument ) ;
solrServer .commit ( ) ;
官方文档中,要注意:
The core functionality of atomically updating a document requires that all fields in your SchemaXml must be configured as stored="true"
solr原子更新,支持store=true,如果store为false,更新后字段会丢失。