I debuged when solr doing search, and i found that every time solr had a query search done the refcount will increase one. I know solr use refcount to keep reasher safe close, but should it be +1 when solr doing search and -1( it is to say call decref()) after search done? or else when commit take place it just decrease the refcount by 1, and the refount still>1 and searcher not really close, which leads to the hanging of the handlers and finally the too many open files problem. Is it a bug? or i should not use the DirectSolrConnection?
By the way the "ulimit -n 10000" not work out in my case, it just delay the time. i use the "lsof |grep solr| wc -l" to monitor the handler, it keeps increasing, i think it is a leak of handler here.