And nobody should be using the Oracle JDK without a commercial relationship
with Oracle, its license is a nightmare.

On Mon, Oct 14, 2019 at 2:04 PM Gian Merlino <[email protected]> wrote:

> Oracle and OpenJDK builds behave the same as each other now. The
> differences are in terms of licensing, length of support, and release
> cadence. IMO most Java devs should be using one of the third-party OpenJDK
> distributions (e.g. Corretto, Zulu, AdoptOpenJDK) rather than vanilla
> OpenJDK these days, because of the new OpenJDK policy that public updates
> will cease for major versions after 6 months.
>
> On Mon, Oct 14, 2019 at 11:07 AM leerho <[email protected]> wrote:
>
>> Thanks, Gian,
>>
>> Your references are helpful and I am studying them.
>>
>> I didn't see any references to OpenJDK vs Oracle's JDKs.
>>
>> Are there any differences in the way Unsafe calls (or other hidden
>> classes)
>> are handled by OpenJDK?  Or is this a "don't care" as far as Druid is
>> concerned?  Are the version numbers between Oracle and OpenJDK always
>> aligned?
>>
>>
>> Lee.
>>
>>
>>
>> On Fri, Oct 11, 2019 at 5:45 PM Gian Merlino <[email protected]> wrote:
>>
>> > You didn't address this message to me, but in Druid most of the work for
>> > Java 9+ compatibility is mentioned in this master issue, which you might
>> > find helpful: https://github.com/apache/incubator-druid/issues/5589.
>> > Skimming the list, these might be particularly relevant to DataSketches:
>> >
>> > - https://github.com/apache/incubator-druid/pull/7487 (cleaner
>> operations)
>> > - https://github.com/apache/incubator-druid/pull/7466 (ByteBuffer unmap
>> > operation)
>> > - https://github.com/apache/incubator-druid/pull/7576 (Remove direct
>> > references to Unsafe)
>> >
>> > Btw, it would be better, I think, to address emails to the list at
>> large.
>> > It encourages more people to participate. If Roman is a subscriber he
>> would
>> > get a copy anyway. If not, you could encourage him to subscribe.
>> >
>> > On Fri, Oct 11, 2019 at 3:13 PM leerho <[email protected]> wrote:
>> >
>> > > Roman,
>> > >
>> > > I hope you are doing well.
>> > >
>> > > I really appreciate the contributions you made to our Memory
>> component!
>> > >
>> > > Given that Druid has made its code base compatible with OpenJDK 11, we
>> > > could use your help in what changes do we need to make to make that
>> > happen
>> > > for DataSketches.  As I recall, our DataSketches library was not the
>> only
>> > > Druid dependency that took advantage of Unsafe.  So I assume you have
>> > been
>> > > down this path :)
>> > >
>> > > Currently, I have a check in the static initializer in
>> Memory/UnsafeUtil:
>> > > parseJavaVersion(...) that checks the string returned from
>> > > System.getProperty("java.version").  If that string does not contain
>> > "1.8"
>> > > or "8" it will throw an error.  Given that we have not tested with
>> JDK 9,
>> > > 10, 11 or 12, I felt it was safer to explicitly throw rather than
>> having
>> > > the users experience some weird failure later that may be difficult to
>> > > debug.
>> > >
>> > > With only one minor exception (which we could easily fix) the Memory
>> > > component is the only place where Unsafe is used.  However, we do use
>> > > reflection to gain internal access to a number of other classes
>> including
>> > > ByteBuffer, Cleaner, and Bits.
>> > >
>> > > Looking forward to hearing from you.
>> > >
>> > > Cheers,
>> > >
>> > > Lee.
>> > >
>> >
>>
>

Reply via email to