cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Edward Capriolo <edlinuxg...@gmail.com>
Subject Re: Why does Cassandra recommends Oracle JVM instead of OpenJDK?
Date Mon, 02 Jan 2017 21:04:44 GMT
On Mon, Jan 2, 2017 at 3:51 PM, Benjamin Roth <benjamin.roth@jaumo.com>
wrote:

> Does this discussion really make sense any more? To me it seems it turned
> opinionated and religious. From my point of view anything that has to be
> said was said.
>
> Am 02.01.2017 21:27 schrieb "Edward Capriolo" <edlinuxguru@gmail.com>:
>
>>
>>
>> On Mon, Jan 2, 2017 at 11:56 AM, Eric Evans <john.eric.evans@gmail.com>
>> wrote:
>>
>>> On Fri, Dec 23, 2016 at 9:15 PM, Edward Capriolo <edlinuxguru@gmail.com>
>>> wrote:
>>> > "I don't really have any opinions on Oracle per say, but Cassandra is a
>>> > Free Software project and I would prefer that we not depend on
>>> > commercial software, (and that's kind of what we have here, an
>>> > implicit dependency)."
>>> >
>>> > We are a bit loose here with terms "free" and "commercial". The oracle
>>> JVM
>>> > is open source, it is free to use and the trademark is owned by a
>>> company.
>>>
>>> Are we?  There are many definitions for the word "free", only one of
>>> which means "without cost"; I assumed it was obvious that I was
>>> talking about licensing terms (and of course the implications of that
>>> licensing).
>>>
>>> Cassandra is Free Software by virtue of the fact that it is Apache
>>> Licensed.  You are Free (as in Freedom) to modify and redistribute it.
>>>
>>> The Oracle JVM ships with a commercial license.  It is free only in
>>> the sense that you are not required to pay anything to use it, (i.e.
>>> you are not Free to do much of anything other than use it to run Java
>>> software).
>>>
>>> > That is not much different then using a tool for cassandra like a
>>> driver
>>> > hosted on github but made my a company.
>>>
>>> It is very different IME.  Cassandra requires a JVM to function, this
>>> is a hard dependency.  A driver is merely a means to make use of it.
>>>
>>> > The thing about a JVM is that like a kernel you want really smart
>>> dedicated
>>> > people working on it. Oracle has moved the JVM forward since taking
>>> over
>>> > sun. You can not just manage a JVM like say the freebsd port of x
>>> maintained
>>> > by 3 part time dudes that all get paid to do something else.
>>>
>>> I don't how to read any of this.  It sounds like you're saying that a
>>> JVM is something that cannot be produced as a Free Software project,
>>> or maybe that you just really like Oracle, I'm honestly not sure.  It
>>> doesn't seem relevant though, because there is in fact a Free Software
>>> JVM (and in addition to some mere mortals, the fine people at Oracle
>>> do contribute to it).
>>>
>>>
>>> --
>>> Eric Evans
>>> john.eric.evans@gmail.com
>>>
>>
>> Are we?  There are many definitions for the word "free", only one of
>> which means "without cost"; I assumed it was obvious that I was
>> talking about licensing terms (and of course the implications of that
>> licensing).
>>
>> Lets be clear:
>> What I am saying is avoiding being loose with the word "free"
>>
>> https://en.wikipedia.org/wiki/Free_software_license
>>
>> Many things with the JVM are free too. Most importantly it is free to
>> use.
>>
>> https://www.java.com/en/download/faq/distribution.xml
>>
>> As it relates to this conversation: I am not aware of anyone running
>> Cassandra that has modified upstream JVM to make Cassandra run
>> better/differently *. Thus the license around the Oracle JVM is roughly
>> meaningless to the user/developer of cassandra.
>>
>> * The only group I know that took an action to modify upstream was Acunu.
>> They had released a modified Linux Kernel with a modified Apache Cassandra.
>> http://cloudtweaks.com/2011/02/data-storage-start
>> up-acunu-raises-3-6-million-to-launch-its-first-product/. That product
>> no longer exists.
>>
>> "I don't how to read any of this.  It sounds like you're saying that a
>> JVM is something that cannot be produced as a Free Software project,"
>>
>> What I am saying is something like the JVM "could" be produced as a "free
>> software project". However, the argument that I was making is that the
>> popular viable languages/(including vms or runtime to use them) today
>> including Java, C#, Go, Swift are developed by the largest tech companies
>> in the world, and as such I do believe a platform would be viable.
>> Specifically I believe without Oracle driving Java OpenJDK would not be
>> viable.
>>
>> There are two specific reasons.
>> 1) I do not see large costly multi-year initiatives like G1 happening
>> 2) Without guidance/leadership that sun/oracle I do not see new features
>> that change the language like lambda's and try multi-catch happening in a
>> sane way.
>>
>> I expanded upon #2 be discussing my experience with standards like c++
>> 11, 14,17 and attempting to take compiling working lambda code on linux GCC
>> to microsoft visual studio and having it not compile. In my opinion, Java
>> only wins because as a platform it is very portable as both source and
>> binary code. Without leadership on that front I believe that over time the
>> language would suffer.
>>
>> "It is very different IME.  Cassandra requires a JVM to function, this
>> is a hard dependency.  A driver is merely a means to make use of it."
>>
>> LOL. Sure a database with a driver is very useful. I mean it sits there
>> flushing empty memtables and writing to its log file. You can run nodetool
>> ring and imagine where data would go if you could put data into it. Very
>> exciting stuff.
>>
>>
It does matter in some regards. Cassandra has historically been more
coupled to specific JVM's than other Java projects. Specifically, in the
past I attempted to run Cassandra on Azul JVM and the key cache did not
load as the key cache used some sun.misc.unsafe code that  worked
differently on a different JVM. (I never confirmed if this was a bug in
oracle/azul/cassandra code)

I have been burned by IceaTea and OpenJDK a few times over the years. I do
my best to install what is the "common" platform for most users. If the
project is going to take a position or bias development on one or the other
it matters.

Mime
View raw message