rsolr-direct
rsolr-direct enhances the RSolr core library by adding the ability to connect to Solr directly, using JRuby, sans http. Hotdog!
How
Check out the specs to see the various connection methods.
Solr Java libs/jars
RSolr-Direct comes with the required Solr jars. If you’d like to use them, just call #load_java_libs:
require 'rsolr-direct'
RSolr::Direct.load_java_libs "path/to/solr/distribution"
# create connection etc..
:solr_home
require 'rsolr-direct'
connection = RSolr.direct_connect(
:solr_home => '/absolute/path/to/solr/home',
:data_dir => "/optional/path/to/data/dir")
Java::OrgApacheSolrCore::SolrCore
require 'rsolr-direct'
core = org.apache.solr.core.SolrCore.new(nil, solr_data_path, solr_config, index_schema, dcore)
connection = RSolr.direct_connect core
Java::OrgApacheSolrServlet::DirectSolrConnection
require 'rsolr-direct'
dc = org.apache.solr.servlet.DirectSolrConnection.new(solr_home_path, solr_data_path, solr_log_path)
connection = RSolr.direct_connect dc
Why
Using a direct connection to Solr can speed up indexing. How much faster? A page on the Solr Wiki says ~ 50% faster.
Testing
Clone it, cd into the project dir and run:
jruby -S rake spec
Note on Patches/Pull Requests
-
Fork the project.
-
Make your feature addition or bug fix.
-
Add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Commit, do not mess with rakefile, version, or history (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
-
Send me a pull request. Bonus points for topic branches.
Copyright
Copyright © 2010 Matt Mitchell. See LICENSE for details.