On 11/7/2013 6:40 PM, Bill Bell wrote:
So no Jetty 9 until Solr 5? Java 7 is at rel 40.... Is that our commitment to 
not require Java 7 until Solr 5?

Most people are probably already on Java 7...

Solr 4.x runs perfectly on Java 6 and has from day one. That doesn't affect you, me, or the likely large percentage of users that have moved on to Java 7 because Java 6 is no longer supported publicly by Oracle. For users who haven't upgraded, it would be very disruptive if we suddenly required Java 7 to run Solr 4.7 or 4.8. We cannot make any changes in 4.x that won't work on Java 6.

For discussion purposes, check out this page from the Lucene 3.6.2 docs:

http://lucene.apache.org/core/3_6_2/systemrequirements.html

Because Solr was part of the Lucene codebase for 3.1 and later, Solr 3.6.2 should run fine on Java 5 too. I've never tried it myself. I ran Solr versions from 1.4.0 through 3.5 on Java 6. Part of my upgrade to 4.x was a bump to Java 7. I didn't feel entirely comfortable running 3.x on Java 7 because it was made for Java 5. It might have worked without any problems, but I didn't want to risk it.

Although branch_4x runs on Java 6, trunk (what will become 5.0) *requires* Java 7. It uses code constructs that are only available in that version. I expect that sometime after stable moves to 5.0 and trunk moves to 6.0, Java 8 will be required for trunk. Unless major Java bugs are encountered that Oracle decides won't ever be fixed in Java 7, the 5.x line will always run on Java 7.

Because of the Java requirements, upgrading to Jetty 9 might not happen until Solr 4.x is retired, assuming it happens at all. Maintaining different versions of a major component in different code branches is something you would only want to do if there's a REALLY good reason. I don't think there's a good reason in the case of Jetty, at least not right now.

We don't yet know what the future holds when it comes to Solr's association with Jetty. Version 5.0 is probably going to release with the container (or another network framework like netty) completely embedded, so the application that you start won't be Jetty, it will be Solr itself.

Thanks,
Shawn

Reply via email to