We discussed requiring Java 8 previously and decided to remain Java
7-compatible, but at the time we were planning to release 3.0 before Java 7
EOL.  Now that 8099 and increased emphasis on QA have delayed us past Java
7 EOL, I think it's worth reopening this discussion.

If we require 8, then we can use lambdas, LongAdder, StampedLock, Streaming
collections, default methods, etc.  Not just in 3.0 but over 3.x for the
next year.

If we don't, then people can choose whether to deploy on 7 or 8 -- but the
vast majority will deploy on 8 simply because 7 is no longer supported
without a premium contract with Oracle.  8 also has a more advanced G1GC
implementation (see CASSANDRA-7486).

I think that gaining access to the new features in 8 as we develop 3.x is
worth losing the ability to run on a platform that will have been EOL for a
couple months by the time we release.

-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder, http://www.datastax.com
@spyced

Reply via email to