Lucene and Solr: The Merger

DZone 's Guide to

Lucene and Solr: The Merger

· Java Zone ·
Free Resource
If you take a look on the Solr wiki to find out when the next version is going to be released (you'd assume it's version 1.5), you find a message saying that Solr 1.5 is "not likely to ever be released."  Before you start crying, you need to look at the slides from Yonik Seeley's presentation at the Apache Lucene EuroCon 2010  (Seeley is the creator of Apache Solr and a co-founder at Lucid Imagination).  If you do, you'll see that Solr and its partner project, Lucene, are merging development.  It's possible that the next version of Solr will be named 3.1 or 4.0 to match Lucene.

The two pieces of software will remain separate entities, but they will be developed together.  Both projects currently sit under the same Subversion trunk and Solr will actually run off the latest Lucene code at all times.  One of the reasons that precipitated this change was the adding of certain features to Solr, for example, while they arguably "belonged" to Lucene.  Moving this code to Lucene would bar some Solr committers from having access to it.  Another fear is diverging, yet similar code because the pace of releases is beginning to change for both projects.  

With a merged development, there is a single set of committers that can access any Lucene or Solr code.  The two projects will have releases at the same time.  Mark Miller of Lucid Imagination lists several more advantages:

Lucene will likely benefit from Analyzers and QueryParsers that were only available to Solr users in the past. Lucene will also benefit from greater test coverage, as now you can make a single change in Lucene and run tests for both projects – getting immediate feedback on the change by testing an application that extensively uses the Lucene libraries. Both projects will also gain from a wider development community, as this change will foster more cross pollination between Lucene and Solr devs (now just Lucene/Solr devs).

Other benefits of the merger:

  • Releases will be streamlined
  • Solr users get the latest improvements from Lucene faster, and vice versa
  • Lucene users will get access to Solr's faceting feature
  • Minimized duplication of features
  • Combined Solr/Lucene test suit should kill a lot of bugs
  • More committers means more ideas and development

About Solr
Solr takes Lucene and packages it up as an HTTP server.  It runs as a web application inside a servlet container such as Tomcat or Jetty, providing the functionality of Lucene as well as other search capabilities such as faceting.  The Lucene functionalities handle distributed search capabilities along with replication for failover and load balancing.  Solr also provides easy configuration through XML.  

Grant Ingersoll, a Solr and Lucene committer, blogged about the exciting new features planned for the next version of Solr. 

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}