
Corretto – No-cost, multiplatform, developer-preview distribution of OpenJDK - Timshel
https://aws.amazon.com/fr/corretto/
======
znep
The list of specific patches applied is here:

[https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/pa...](https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/patches.html)

Looks to be mostly or maybe entirely backports.

Good to see another option out there, it will be interesting to see how many
of these get folded back into openjdk8 as it transfers maintainership.

~~~
zandl
Amazon has good developers, but the JVM is quite complex and the pool of
people who can work on it is pretty rare, I wonder how well they’ll be able to
maintain it on their own.

~~~
ForHackernews
Amazon has loads of money. Presumably if they care about this, they'll pay
whatever's necessary to hire the developers they need.

~~~
kondro
And would still be cheaper than paying Oracle.

------
burtonator
We use OpenJDK 8 at Datastreamer as part of our social media and blog/news
crawler.

It's pretty solid for production use. We're REALLY production as we've been in
business for a decade and burn a ton of CPU indexing web content. Think
petabytes... :)

The only time we use the Oracle JDK is to run their profiler which is pretty
darn nice. It's runtime and sampling so you can get a nice sample in a
production app by just restarting it...

I've never had a problem with an incorrect sample.

What I REALLY want though is continuous profiling where we have profiling data
uploaded to the cloud and alerts when we have an app regression automatically
and I want to be told WHERE the regression is. ...

~~~
pron
As of JDK 11, all commercial Oracle JDK features, including low-overhead
profiler (Java Flight Recorder), are part of OpenJDK.[1]

[1]: [https://blogs.oracle.com/java-platform-group/oracle-jdk-
rele...](https://blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-
java-11-and-later)

~~~
burtonator
Yeah.. I'm really excited about that but we're not ready to move to OpenJDK
11... it's a crap shoot with the new JVMs and the forced upgrades IMO.

~~~
pron
The difficulty isn't the new release cadence but upgrading beyond Java 9. It's
not as scary as it sounds, and even large complex projects can be upgraded
within hours to a couple of weeks. For most projects it's a matter of
upgrading dependencies (possibly adding dependencies that have been split off
of the JDK) and fixing the command line. I would say that the main barrier is
if a dependency does not yet work with 9+. Most popular Java libraries do
support 9+, but some don't yet and will soon (e.g. Spark).

Once you're past 9, it's smooth(ish) sailing. The new feature releases are
somewhere between the old update releases and the old major releases, but much
closer to the former (BTW, there was a "forced" upgrade to the old update
releases, too; they weren't supported after a new one was released).

Overall, the rate of expected breakage, if any, should be the same as it was
before, but happen more gradually.

(I work on OpenJDK at Oracle, but speak only for myself)

------
linuxftw
"This initial release is a developer preview release for testing and
validation purposes."

Well... that's not really production-ready then, is it? I assume they intend
to make it 'production-ready' at some point in the future, but those two
statements are directly at odds.

~~~
nikanj
Quite a number of software houses use pre-alpha-preview betas in production.
I’m not sure what motivates them, my theory is that upgrading everything bi-
weekly is great busywork for a startup with few users and little traction.

~~~
thruhiker
That theory is not only derisive but incorrect. There is always plenty of non-
busy work to be done at a startup, even one with few users or traction.

------
espeed
The posted URL goes to the French version of the page.

This is the primary URL:
[https://aws.amazon.com/corretto/](https://aws.amazon.com/corretto/)

~~~
hadrien01
I am getting the text in English using the /fr/ url with a French locale on my
browser.

------
apetresc
Legitimate question: what is keeping stock OpenJDK from being considered
"production-ready" as it is?

~~~
Arnt
Lack of long-time support commitment. A lot of java users want to hear someone
say "we'll push updates for any and all CVEs for the next forty-two years, and
that's a promise".

They may not actually install those updates, but they want to hear someone say
that they will exist.

~~~
dragandj
But isn't it exactly what Oracle offers? For the money, of course.

~~~
Arnt
Oracle's offering involves paying Oracle money _and getting regular phone
calls from the Oracle sales department,_ which I have heard described in
colourful ways.

~~~
arethuza
Oracle has/had "value based pricing" for larger contracts

The discussion goes something like this:

Customer: "How much does this cost?"

Oracle sales: "How much money do you have?"

Now this isn't quite as bad as it sounds (charge based on the value that the
new system will bring) but the conversation was definitely a bit
uncomfortable..... Oracle was not selected as the vendor.

Edit:

SAP weren't selected either for different reasons:

SAP: "You are a manufacturing company and will use SAP like this"

Customer: "We see why you might think that but we don't manufacture things"

SAP: "You are a manufacturing company and will use SAP like this"

Customer: Next...

Obviously, there was more to both conversations - but these are reasonable
summaries based upon my dubious memories.

~~~
richardwhiuk
That's how B2B sales work - the salesman works on how much the customer is
willing to pay, then discounts the product down to the point the customer will
pay, and the checks that isn't below cost of goods.

------
thom_nic
I have not used Java in _many_ years now, but I'm curious if anyone has
anecdotal experience using OpenJDK in production? Performance vs Oracle Java,
bugs/ idiosyncrasies due to internal API differences, etc?

~~~
SanderMak
As of JDK 11, there is feature parity between OpenJDK and Oracle JDK, which is
the JDK that most people used until now. In JDK 8, the Oracle version had
several closed source additional features (such as Java Flight Recorder and
the Z garbage collector). Also, implementations of things like graphics
rendering used to be different in Oracle JDK 8 and earlier. That's no longer
the case. Oracle JDK and OpenJDK should be drop-in replacements for each other
as of JDK 11.

~~~
ausjke
Amazon's OpenJDK is 1.8.0 which is JDK8, so it still 'misses' those Oracle's
closed features?

~~~
jillesvangurp
Most of those features are only relevant for UI stuff and even then you are
unlikely to notice the difference since openjdk would include implementations
of anything even remotely relevant. Unless you know you need this, you can
safely assume you don't.

Here's a good stackoverflow post on the topic (note this is about openjdk 7).
Things have only improved since then.

[https://stackoverflow.com/questions/11547458/what-is-the-
dif...](https://stackoverflow.com/questions/11547458/what-is-the-difference-
between-jvm-jdk-jre-openjdk)

If you are doing any kind of server side deployment, openjdk has been a drop
in replacement since the java 7 days. Essentially all linux distributions
include it and you have to jump through hoops to get the oracle version.

There are differences between different openjdk builds though. I've ran into
issues with certificates a couple of times on Ubuntu. Also they had a strange
notion of what is stable and what is not early in the life of java 8. Another
issue is the licensing of the test suite. This makes it hard to test your
builds. The words certified build, implies that the produced build passes the
licensed test suite.

------
ce4
The repo is on Github:

[https://github.com/corretto](https://github.com/corretto)

~~~
aranw
Wow genuinely surprised that AWS is not using CodeCommit

~~~
guitarbill
Have you used it? Maybe you'd be less surprised :D

If you want open source contributions, AWS' Code* offerings are a terrible
choice. For example, AFAIK you still can't display a build status page that
people can view without being logged into the AWS console, like Travis CI or
AppVeyor. I honestly don't know who they built those services for, but I'll
take Travis CI or Jenkins over those services any day.

~~~
rrix2
> I honestly don't know who they built those services for, but I'll take
> Travis CI or Jenkins over those services any day.

People who aren't developing open source software and people who want
integrated IAM, generally. Git repos having ARNs is pretty neat

~~~
guitarbill
You can use Jenkins for closed source. And if you've found a way to display
HTML reports (unit tests, coverage, etc) using CodePipeline and IAM but
without a hacky Lambda to proxy it from S3 with auth, I'd also love to know.
But as is, I believe the offerings are inferior to open source tooling, and
don't promote code quality.

------
matrix
This is good news for Groovy developers since the Groovy project seems to have
run into significant roadblocks with migrating to Java 9+. I'd recommend most
other developers on the JVM rip that bandaid off now and get onto Java 11
though, because migrating is not going to get any cheaper or easier.

~~~
vorg
The roadblocks for Apache Groovy migrating to version 3 are imposed by
Groovy's backers themselves. They want to keep it as is for as long as
possible to keep Gradle users hooked. If a non-compatible Groovy 3.0 comes
out, then Gradle users would more likely upgrade from Groovy 2.x to Kotlin
instead of to Groovy 3.0 for their build scripting language. The ASF Groovy
project managers want to keep their consulting-and-conferences gravy train
running for as long as they can.

------
Flenser
This is about Amazon removing a revenue stream from Oracle. Amazon also
announced a few days ago that they were removing Oracle products from AWS.

Expect an article by Ben Thompson on stratechery.com in the next week.

~~~
ProAm
To be fair I trust Amazon just about as much as I trust Oracle.

~~~
scarface74
A long time ago I was looking into the cost of Oracle for a company and trying
to compare it to Sql Server.

For SQL Server, you just go to the page and the price is right there.

For Oracle, you have to talk to a salesmen. That turned me off from Oracle.

With AWS, I know exactly how much a resource will cost and there are a myriad
of ways you can get detailed billing.

------
ryanmarsh
Given that Corretto is in production at Amazon today could this by default
become the most popular (by production instances) JVM? Let's say Corretto
becomes the default in BeanStalk, Lambda, and maybe some popular AMI's. Would
that be enough?

Let's say sometime next year some performance benchmarks come out and Corretto
is in fact faster than Oracle's JVM. Would people be quick to switch? Would
enough people switch? I feel like the Java ecosystem has been at the verge of
a "phase shift" for a long time. There's a lot of pent up demand for features
and Oracle and the governance process just aren't delivering. So now Amazon
steps in and, just think about it, what are the odds this JVM ends up faster,
better, and _gasp_ with some new features people want.

~~~
wjoe
I suspect it already is in use in Lambda, an AWS rep mentioned something about
them using a custom JVM internally for Lambdas when they gave a talk at our
company recently, so this is probably that.

As for the default on AMIs, it probably will go that way when OpenJDK 8
support ends next year. They'll have the option of distributing RedHat's
OpenJDK build with their patches, or packaging their own. It'll probably be
similar to the `mysql` package actually providing MariaDB, and no one will
really notice.

I am intrigued if there will be noticable performance improvements. They do
mention performance enhancements on the page, but I believe this is more about
dealing with Oracle's licensing changes and maintaining support for the LTS
releases. But there's plenty of incentive for them to make it better
performing than alternatives too.

I expect my company will switch to this because we're already on Amazon Linux
2, and have been struggling to make a decision on how to update the JDK with
future releases. But if there are performance improvements, that might push
some more AWS users to switch to Amazon Linux over Ubuntu and other distros in
EC2.

------
bit_logic
If I want a free LTS supported OpenJDK build, how does this compare to
AdoptOpenJDK? Which one is likely to "win" as the de facto standard JDK build
used by most of the community?

~~~
karianna
AdoptOpenJDK is the much larger project with broad community backing (We even
have Amazon contribute) from IBM, Red Hat, Azul, Ocado, Microsoft etc. It's
got a fully open and auditable build and test pipeline and supports a massive
number of platforms (arm32/64, AIX, s390, Mac, Windows, Linux x86, PPC etc)
and versions (8, 9, 10, 11, amber, 12 beta et al). We've already had over 2M
downloads and are definitely in production in a lot of places.

We'll be working with Amazon to make sure there's some consistency between the
two, no point in fragmenting.

Corretto is an obvious choice if you're an AWS user, for everything else Adopt
is also a decent choice.

------
nomercy400
You mean they announced a five-year supported LTS after Oracle once again told
the world they want money for their LTS version? Ouch.

It was kind of nice to have Gosling announce it though.

------
meathouse
can i get an eli5 on why we care about this? why not contribute to openjdk?
why do we need another flavor?

~~~
wjoe
As of the latest version of Java, OpenJDK is equivalent to Oracle JDK, and
they'll release new versions every 6 month. However, there won't be any
security updates or bug fixes to OpenJDK versions from Oracle after 6 months.
There's a few groups that plan on maintaining patches beyond that period, but
most options involve paying someone (including Oracle).

It's mostly just about enterprise distribution, rather than any differences in
the JDK. Updating major versions every 6 months is risky, not having security
updates is more risky, and no one likes paying money for something that
they've been getting for free.

So far this seems like the simplest and cheapest way of getting long term
security/bugfix updates for the JDK, especially if you're already running
Amazon Linux. We've been evaluating the options in my team recently and hadn't
come to a decision beyond "update to Java 11 and see how it goes after that".
This pretty much solves our problems.

I would have preferred to see Amazon partnering with Red Hat or other open
source groups on maintaining one well supported OpenJDK, but at least as it's
all open source, patches should make their way to all versions.

~~~
meathouse
thank you. makes more sense now. much appreciated.

------
therealmarv
Does anybody know how good internal OpenJDK in Ubuntu will be supported by
Canonical? Somehow I could not find any information about real support in the
future. I heard of commitments from and for RedHat though.

I'm sure Corretto will be at some time also available for Ubuntu.

~~~
chungy
It's likely just the work that Debian does. OpenJDK upstream will always have
their repository available, it's just that Oracle is paywalling binary builds
after 6 months.

Debian builds from source and is unaffected by the binary paywall.

------
mixedCase
It's a bit sad that they don't even package it in Amazon Linux's repos. In my
eyes that's just building trust on one end and demolishing it on the other.

~~~
deadbunny
> Amazon Corretto 8 is in Preview

Probably a good reason to keep it out of the repos

------
solarkraft
At which point will they add their proprietary extensions? Am I the only one
fearing this? I wouldn't want to depend on a business like Amazon.

~~~
xoa
> _At which point will they add their proprietary extensions? Am I the only
> one fearing this?_

What? OpenJDK is GPL with a class path exception, so software that runs on it
can be licensed however but additions/changes to OpenJDK cannot be kept
proprietary. Can you please elaborate what you're afraid of there? It's not as
if Amazon is the copyright holder and can thus even offer a dual license.

------
anonymousJim12
I don't really "get" software licensing but are they bound to GPL because
OpenJDK is GPL? Does anyone make a more permissive JDK?

~~~
cpburns2009
Yes, but it's really GPLv2 with the classpath exception [1] which makes it
similar to the LGPLv2. Amazon's OpenJDK still has to be GPL. However, software
using the OpenJDK can be licensed however you want (because of the classpath
exception) [2].

[1]:
[https://openjdk.java.net/legal/gplv2+ce.html](https://openjdk.java.net/legal/gplv2+ce.html)

[2]:
[https://softwareengineering.stackexchange.com/q/119436/69573](https://softwareengineering.stackexchange.com/q/119436/69573)

------
stevoski
Does anyone know if this Amazon OpenJDK includes a Windows 32-bit version? I
can't find any mention of this in the docs.

~~~
teapowered
They don't - Your best bet is probably Azul
[https://www.azul.com/downloads/zulu/zulu-
windows/](https://www.azul.com/downloads/zulu/zulu-windows/)

~~~
karianna
Or AdoptOpenjDK [https://www.adoptopenjdk.net](https://www.adoptopenjdk.net)

------
lenova
> Amazon Corretto is a no-cost, multiplatform, production-ready distribution
> of the Open Java Development Kit

I really, really wish AWS would start using practical/self-explanatory names
for their products.

~~~
fredley
I'll take names over alphabet soup. My EBS EC2 machines are not playing nicely
with ELB (but my EFS ones are), I think it might be to do with EMR, or maybe
EKS.

~~~
rad_gruchalski
You could always say: "My elastic block service elastic cloud compute machines
are not playing nicely with elastic load balancers (but my elastic file system
ones are), I think it might be to do with elastic map reduce, or maybe elastic
kubernetes service." No soup.

~~~
_verandaguy
It feels like English should have a provision to factor out the word "elastic"
in this case.

Just assume every word in the sentence is elastic.

~~~
kbutler
"My elastic block service elastic cloud compute machines are not playing
nicely with elastic load balancers (but my elastic file system ones are), I
think it might be to do with elastic map reduce, or maybe elastic kubernetes
service."

"My elastic services are not working. Cloud compute machines..."

------
vbezhenar
I wonder if it works well on Windows XP 32-bit.

~~~
kondro
It doesn’t, and neither should you.

~~~
vbezhenar
Oracle JDK works well.

------
aranw
Surely Amazon Corretto is just going to fracture the Java ecosystem?

~~~
DannyB2
You can get Open JDK from any of the following places on them intarweb tubes,
and they don't seem to fracture the ecosystem. Linux is available from many
places, it may seem fractured, yet Linux seems to be taking over the world.
Even Microsoft now "loves" Linux.

[https://aws.amazon.com/fr/corretto/](https://aws.amazon.com/fr/corretto/)
[https://github.com/corretto](https://github.com/corretto)

[https://adoptopenjdk.net/](https://adoptopenjdk.net/)
[https://github.com/AdoptOpenJDK](https://github.com/AdoptOpenJDK)

[https://github.com/ojdkbuild/ojdkbuild](https://github.com/ojdkbuild/ojdkbuild)

[http://www.azul.com/downloads/zulu/](http://www.azul.com/downloads/zulu/)

[https://jdk.java.net/11/](https://jdk.java.net/11/)

[https://developers.redhat.com/products/openjdk/download/](https://developers.redhat.com/products/openjdk/download/)

[https://github.com/SAP/SapMachine](https://github.com/SAP/SapMachine)

[https://bell-sw.com/java.html](https://bell-sw.com/java.html)

~~~
pron
Hopefully, OpenJDK would be less fractured than Linux. One thing to note,
though, is that you can only call your JDK "OpenJDK" if it's a build of the
OpenJDK project, with no substantial additions or removal of code[1]. Most
free JDKs are, indeed, OpenJDK, with the exception of the JDK based on IBM's
OpenJ9 JVM, even though it uses parts of the OpenJDK codebase.

[1]: [http://openjdk.java.net/legal/openjdk-trademark-
notice.html](http://openjdk.java.net/legal/openjdk-trademark-notice.html)

