You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by Apache Wiki <wi...@apache.org> on 2011/07/18 20:06:26 UTC

[Solr Wiki] Update of "Solrj" by jntrac

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Solr Wiki" for change notification.

The "Solrj" page has been changed by jntrac:
http://wiki.apache.org/solr/Solrj?action=diff&rev1=58&rev2=59

              <groupId>org.slf4j</groupId>
              <artifactId>slf4j-simple</artifactId>
              <version>1.5.6</version>
-         </dependency> 
+         </dependency>
  }}}
  
  If you use solr-solrj version 1.4.1 and slf4j-simple 1.5.6 you may get IllegalAccessError because of slf4j-api change.
@@ -210, +210 @@

    req.add( docs );
    UpdateResponse rsp = req.process( server );
  }}}
+ 
+ 
  === Streaming documents for an update ===
  
  In most cases [[http://lucene.apache.org/solr/api/org/apache/solr/client/solrj/impl/StreamingUpdateSolrServer.html|StreamingUpdateSolrServer]] will suit your needs. Alternatively, the workaround presented below can be applied.
@@ -288, +290 @@

    server.addBeans(beans);
  }}}
  /!\ Note --  Reuse the instance of !SolrServer if you are using this feature (for performance )
+ 
+ === Solr Transactions ===
+ 
+ Solr implements transactions at the server level. This means that every commit, optimize, or rollback applies to all requests since the last commit/optimize/rollback.
+ 
+ The most appropriate way to update solr is with a single process in order to avoid race conditions when using commit and rollback. Also, ideally the application will use batch processing since commit and optimize can be expensive routines.
  
  == Setting the RequestWriter ==