rsolr-direct enhances the RSolr core library by adding the ability to connect to Solr directly, using JRuby, sans http. Hotdog!
Check out the specs to see the various connection methods.
Solr Java libs/jars
You'll need to make sure you have the proper jars loaded. Use RSolr::Direct #load_java_libs for this if you'd like:
require 'rsolr-direct' RSolr::Direct.load_java_libs "path/to/solr/distribution" # create connection etc..
The path/to/solr/distribution should be a directory containing “lib” and “dist” – a typical solr download will do.
require 'rsolr-direct' connection = RSolr.direct_connect( :solr_home => '/absolute/path/to/solr/home', :data_dir => "/optional/path/to/data/dir")
require 'rsolr-direct' core = org.apache.solr.core.SolrCore.new(nil, solr_data_path, solr_config, index_schema, dcore) connection = RSolr.direct_connect core
require 'rsolr-direct' dc = org.apache.solr.servlet.DirectSolrConnection.new(solr_home_path, solr_data_path, solr_log_path) connection = RSolr.direct_connect dc
Using a direct connection to Solr can speed up indexing. How much faster? This document says ~ 50% => wiki.apache.org/solr/SolrPerformanceFactors#Embedded_vs_HTTP_Post
Clone it, cd into the project dir and run:
jruby -S rake spec
note, rspec 1.3 is required.
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 © 2010 Matt Mitchell. See LICENSE for details.