[ 
https://issues.apache.org/jira/browse/SOLR-861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12661979#action_12661979
 ] 

Yonik Seeley commented on SOLR-861:
-----------------------------------

Although the best option is for the application to reuse a client, I agree that 
simple usage of SolrJ should not eat up connections like that.
But if we used the simple connection manager, multiple threads would no longer 
be able to effectively use a single SolrJ instance.  Is there another way to 
clean up connections?  If so, perhaps we could provide a method on SolrJ to 
expose that.

> SOLRJ Client does not release connections 'nicely' by default
> -------------------------------------------------------------
>
>                 Key: SOLR-861
>                 URL: https://issues.apache.org/jira/browse/SOLR-861
>             Project: Solr
>          Issue Type: Bug
>          Components: clients - java
>    Affects Versions: 1.3
>         Environment: linux
>            Reporter: Ian Holsman
>         Attachments: SimpleClient.patch
>
>
> as-is the SolrJ Commons HttpServer uses the multi-threaded http connection 
> manager. This manager seems to keep the connection alive for the client and 
> does not close it when the object is dereferenced.
> When you keep on opening new CommonsHttpSolrServer instances it results in a 
> socket that is stuck in the CLOSE_WAIT state. Eventually this will use up all 
> your available file handles, causing your client to die a painful death.
> The solution I propose is that it uses a 'Simple' HttpConnectionManager which 
> is set to not reuse connections if you don't specify a HttpClient.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to