[ https://issues.apache.org/jira/browse/SOLR-906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12661285#action_12661285 ]
Ryan McKinley commented on SOLR-906: ------------------------------------ | But we need to change the global lock to be final. why? The global lock is used to block all the threads -- each worker checks if it is null to see if it should block or not. The only place that sets the lock is within the same synchronized block: {code:java} public synchronized void blockUntilFinished() { if( lock == null ) { lock = new ReentrantLock(); } lock.lock(); ... lock.unlock(); lock = null; } {code} since nothing else changes lock, i think it is ok. | What does the "<stream>" tag do? That is just there so that multiple <add> commands can be in the same XML document. it is just an arbitrary parent tag. The parser on the other end only validates once it hits a known cmd tag. > Buffered / Streaming SolrServer implementaion > --------------------------------------------- > > Key: SOLR-906 > URL: https://issues.apache.org/jira/browse/SOLR-906 > Project: Solr > Issue Type: New Feature > Components: clients - java > Reporter: Ryan McKinley > Assignee: Ryan McKinley > Fix For: 1.4 > > Attachments: SOLR-906-StreamingHttpSolrServer.patch, > SOLR-906-StreamingHttpSolrServer.patch, > SOLR-906-StreamingHttpSolrServer.patch, > SOLR-906-StreamingHttpSolrServer.patch, StreamingHttpSolrServer.java > > > While indexing lots of documents, the CommonsHttpSolrServer add( > SolrInputDocument ) is less then optimal. This makes a new request for each > document. > With a "StreamingHttpSolrServer", documents are buffered and then written to > a single open Http connection. > For related discussion see: > http://www.nabble.com/solr-performance-tt9055437.html#a20833680 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.