On Mon, May 2, 2016 at 8:55 AM, Josh Elser <[email protected]> wrote: > Thanks for the input, Sean. > > Playing devil's advocate: we didn't have a major version bump when we > dropped JDK6 support (in Accumulo-1.7.0). Oracle has EOL'ed java 7 back in > April 2015. Was the 6->7 upgrade different than a 7->8 upgrade? >
On Mon, May 2, 2016 at 10:31 AM, Keith Turner <[email protected]> wrote: > On Mon, May 2, 2016 at 1:54 AM, Sean Busbey <[email protected]> wrote: > >> If we drop jdk7 support, I would strongly prefer a major version bump. >> > > > Whats the rationale for binding a bump to Accumulo 2.0 with a bump in the > JDK version? > The decision to drop JDK6 support happened in late march / early April 2014[1], long before any of our discussions or decisions on semver. AFAICT it didn't get discussed again, presumably because by the time we got to 1.7.0 RCs it was too far in the past. JDK7 is still very common (both generally[2] and in the customers I see that run Accumulo). If we start shipping client jars that require java 8, we are by definition causing a runtime breakage for any of those folks who already deploy + run JDK7 and don't yet run JDK8. I'm fine with giving folks an incentive to upgrade to JDK8, but a JDK version bump is a big deal. There will be some folks with client code that requires changes to work with JDK8, there will be ops folks who have to go through a change process to update the runtime deployed on their clusters, and there will be lots of cases where the ops folks have to communicate the need to update client JVM versions to a wider organization. The best way to signal the need for this extra work is to bump our major version. This also has impact on downstream projects. For example, YCSB still supports JDK7. For datastores that require JDK8 we have to play maven games and in some cases maintain different client modules. It'll be easier to explain that in terms of Accumulo 1.y and 2.y than "versions up to, but not include 1.8" and "1.8 and later". [1]: https://issues.apache.org/jira/browse/ACCUMULO-905 [2]: https://plumbr.eu/blog/java/java-version-and-vendor-data-analyzed-2016-edition -- busbey
