You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@samza.apache.org by Jeremiah Adams <JA...@helixeducation.com> on 2018/09/14 17:06:43 UTC

Java 11, Oracle Java and OpenJDK Release Cadence


Java 11 is out on Sept., 25 and  makes Java 8, 9 and 10 obsolete. Java 8, 9, and 10 will no longer receive security patches/updates beginning in January 2019. Organizations have the option to pay Oracle for patches in order to stay on Java 8.


Oracle is changing its release cycle and licensing for Java SE (which is no more as off 11).  Java SE is rebranded to Oracle java and is an LTS release requiring paid licenses per processor running java 11. Fee is $25 per processor. LTS means fewer upgrades, but does receive security patches.


Oracle will continue to contribute to OpenJDK. However, the OpenJDK releases will come every six month and are called "Major" releases. Each release making the previous obsolete with zero security patches/updates applied to previous versions.


All of this sounds really bad, however, the "major" versions that will come from OpenJDK are more akin to going from 8->8u20->8u40 than from Java 7 to Java 8. So the biggest hurdle is simply aligning project releases with OpenJDK release cadences. This implies building to release candidates prior to bi-annual JDK release testing and releasing.


If your organization doesn't want  to pay for Oracle Java your org will have to upgrade Java versions every six months. While we can easily manage our own code base, dependencies such as Samza are key to our business and difficult to control.


Below are links related to this topic I found while doing research. If anyone can comes to different conclusions please share.


I do have testing Samza on Java 11 in our backlog. I will likely get to this in our next sprint.


http://www.oracle.com/us/corporate/pricing/price-lists/java-se-subscription-pricelist-5028356.pdf

http://www.oracle.com/technetwork/java/javaseproducts/overview/javasesubscriptionfaq-4891443.html

http://www.oracle.com/technetwork/java/eol-135779.html

https://blogs.oracle.com/java-platform-group/update-and-faq-on-the-java-se-release-cadence

https://blogs.oracle.com/java-platform-group/a-quick-summary-on-the-new-java-se-subscription

http://www.oracle.com/technetwork/java/javaseproducts/javasesubscription-data-sheet-4891969.pdf

https://www.infoq.com/presentations/java-10-11



Jeremiah Adams
Software Engineer
www.helixeducation.com<http://www.helixeducation.com/>
Blog<http://www.helixeducation.com/blog/> | Twitter<https://twitter.com/HelixEducation> | Facebook<https://www.facebook.com/HelixEducation> | LinkedIn<http://www.linkedin.com/company/3609946>

Re: Open JDK 11 Early Results

Posted by Jeremiah Adams <JA...@helixeducation.com>.
Additionally, found that there is no community consensus regarding YARN and Java 9, 10, 11. There is conversation about supporting Java 11 in version YARN 3.3

Confluence link with relevant Jira tickets:

https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+and+Java+9%2C+10%2C+11

Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Jeremiah Adams <JA...@helixeducation.com>
Sent: Tuesday, October 2, 2018 12:55 PM
To: dev@samza.apache.org
Subject: [POSSIBLE PHISHING] Re: Open JDK 11 Early Results

I am trying both building from the (Samza) source and attempting to run the pre-built binaries. YARN is a blocker  as nodemanager/resourcemanager will not run at all. It is an issue with Java11 removing J2EE artifacts. I will be sending the yarn-dev group a message regarding the problem. I also didn't see anything about Java11 in YARN's JIRA.

I've had no traction with YARN as of yet. Zookeeper devs fixed the tests that were broken in Java 11 and will go out in some future release. Kafka has JIRA tasks for supporting Java11.
https://url.emailprotection.link/?aXbNFujPDP4Cfs-6OQ7jlf8T9J_NulRd7SGvkTYwMFSBSs8xuTBKzTMBG5jwB2lC5xKfWqt-aRh_ULiYoVt2UqBnR9hdRHYEVGQPxlpwxWt6M4Xs1csoS-CD5liEblOHaQu7rCAwM5hArmZszPVduBeMHaHMz8V7XwAOqm8DN1ls~



Jeremiah Adams
Software Engineer
https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Yi Pan <ni...@gmail.com>
Sent: Tuesday, October 2, 2018 11:16 AM
To: dev@samza.apache.org
Subject: Re: Open JDK 11 Early Results

Hi, Jeremiah,

Thanks for the detailed report! Really appreciate it!

So, from the report, it seems that we need to track the issues separately:
1) OpenJDK 11 with YARN (xxx version is to be determined pending feature
and backward compatibility tests)
2) OpenJDK 11 with Kafka (xxx version  is to be determined pending feature
and backward compatibility tests)
3) Samza gradle build failed with OpenJDK 11

Questions:
1) When you are doing the YARN/Kafka + OpenJDK11 tests, are you just using
OpenJDK 11 JVM to run the binaries? Have you tried to build from the source
code?
2) I am curious what other open source projects' strategy on OpenJDK11? Or
are all the other communities decide to pay Oracle for JE 11? In YARN JIRA
board, I can only find a few tickets with OpenJDK 7 or 8. Are AYRN and
Kafka community only supporting OpenJDK 7 and 8 now?

-Yi

On Mon, Oct 1, 2018 at 3:43 PM Jeremiah Adams <JA...@helixeducation.com>
wrote:

> Samza master branch does not build on Open JDK 11. It fails with a Gradle
> issue. Opened an issue with Gradle here:
> https://url.emailprotection.link/?aZyQRg2CGut2qgyHrdHxA3qV_YdEkDcofcS3Ip-n59fO1mYzzqT_kSmrqYWJKqnJe-eAyIfh5joJFOTohULoTkQ~~
>
> ”Could not determine java version from '11'.”
>
> I Tried running all the dependencies in Hello-Samza via Grid. Yarn behaved
> as I expected and did not start. It is likely that Yarn is the biggest
> risk.
>
> Hadoop-2.6.1 - does not start on Open JDK 11
> Kafka-2.11-0.10.2.1 - does not start on Open JDK 11
> Zookeeper-3.4.3 - starts on Open JDK 11
>
>
> I updated Grid to recent versions and Yarn continued to misbehave:
>
> Hadoop: 3.1.1 - Does not start on Open JDK 11
> Kafka: - 2.11-2.0.0 - Starts on Open JDK 11
> Zookeeper: 3.4.13 - Starts on Open JDK 11
>
> I can’t really test anything interesting until Yarn can play nice on JDK
> 11.
>
>
>
> Jeremiah Adams
> Software Engineer
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Yi Pan <ni...@gmail.com>
> Sent: Tuesday, September 25, 2018 9:09 AM
> To: dev@samza.apache.org
> Subject: Re: Java 11, Oracle Java and OpenJDK Release Cadence
>
> Hey, Jeremiah,
>
> Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
> these days.
>
> Regarding to Java 11 and the steps forward:
> 1. I don't have objection to adopt OpenJDK, as long as Samza code and
> compile and run on it. It might be an interesting issue since Samza also
> depends on other open source projects (like ZooKeeper and Kafka) which may
> not be test w/ OpenJDK yet.
> 2. It would be great if you can have some test build/run of Samza with Java
> 11 (I assume with OpenJDK?) and report the results back to the community
> 3. We can start a formal poll and vote when we know what it takes to adopt
> OpenJDK
>
> Does that sound good to you? Thanks!
>
> -Yi
>
>

Re: Open JDK 11 Early Results

Posted by Jeremiah Adams <JA...@helixeducation.com>.
I am trying both building from the (Samza) source and attempting to run the pre-built binaries. YARN is a blocker  as nodemanager/resourcemanager will not run at all. It is an issue with Java11 removing J2EE artifacts. I will be sending the yarn-dev group a message regarding the problem. I also didn't see anything about Java11 in YARN's JIRA.

I've had no traction with YARN as of yet. Zookeeper devs fixed the tests that were broken in Java 11 and will go out in some future release. Kafka has JIRA tasks for supporting Java11.
https://issues.apache.org/jira/browse/KAFKA-7264?jql=project%20%3D%20KAFKA%20AND%20text%20~%20%22java%2011%22



Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Yi Pan <ni...@gmail.com>
Sent: Tuesday, October 2, 2018 11:16 AM
To: dev@samza.apache.org
Subject: Re: Open JDK 11 Early Results

Hi, Jeremiah,

Thanks for the detailed report! Really appreciate it!

So, from the report, it seems that we need to track the issues separately:
1) OpenJDK 11 with YARN (xxx version is to be determined pending feature
and backward compatibility tests)
2) OpenJDK 11 with Kafka (xxx version  is to be determined pending feature
and backward compatibility tests)
3) Samza gradle build failed with OpenJDK 11

Questions:
1) When you are doing the YARN/Kafka + OpenJDK11 tests, are you just using
OpenJDK 11 JVM to run the binaries? Have you tried to build from the source
code?
2) I am curious what other open source projects' strategy on OpenJDK11? Or
are all the other communities decide to pay Oracle for JE 11? In YARN JIRA
board, I can only find a few tickets with OpenJDK 7 or 8. Are AYRN and
Kafka community only supporting OpenJDK 7 and 8 now?

-Yi

On Mon, Oct 1, 2018 at 3:43 PM Jeremiah Adams <JA...@helixeducation.com>
wrote:

> Samza master branch does not build on Open JDK 11. It fails with a Gradle
> issue. Opened an issue with Gradle here:
> https://url.emailprotection.link/?aZyQRg2CGut2qgyHrdHxA3qV_YdEkDcofcS3Ip-n59fO1mYzzqT_kSmrqYWJKqnJe-eAyIfh5joJFOTohULoTkQ~~
>
> ”Could not determine java version from '11'.”
>
> I Tried running all the dependencies in Hello-Samza via Grid. Yarn behaved
> as I expected and did not start. It is likely that Yarn is the biggest
> risk.
>
> Hadoop-2.6.1 - does not start on Open JDK 11
> Kafka-2.11-0.10.2.1 - does not start on Open JDK 11
> Zookeeper-3.4.3 - starts on Open JDK 11
>
>
> I updated Grid to recent versions and Yarn continued to misbehave:
>
> Hadoop: 3.1.1 - Does not start on Open JDK 11
> Kafka: - 2.11-2.0.0 - Starts on Open JDK 11
> Zookeeper: 3.4.13 - Starts on Open JDK 11
>
> I can’t really test anything interesting until Yarn can play nice on JDK
> 11.
>
>
>
> Jeremiah Adams
> Software Engineer
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Yi Pan <ni...@gmail.com>
> Sent: Tuesday, September 25, 2018 9:09 AM
> To: dev@samza.apache.org
> Subject: Re: Java 11, Oracle Java and OpenJDK Release Cadence
>
> Hey, Jeremiah,
>
> Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
> these days.
>
> Regarding to Java 11 and the steps forward:
> 1. I don't have objection to adopt OpenJDK, as long as Samza code and
> compile and run on it. It might be an interesting issue since Samza also
> depends on other open source projects (like ZooKeeper and Kafka) which may
> not be test w/ OpenJDK yet.
> 2. It would be great if you can have some test build/run of Samza with Java
> 11 (I assume with OpenJDK?) and report the results back to the community
> 3. We can start a formal poll and vote when we know what it takes to adopt
> OpenJDK
>
> Does that sound good to you? Thanks!
>
> -Yi
>
>

Re: Need Some Help w/ Gradle Build on OpenJDK 11

Posted by Jeremiah Adams <JA...@helixeducation.com>.
No luck Prateek. Same problem.


Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Prateek Maheshwari <pr...@gmail.com>
Sent: Thursday, October 11, 2018 10:54 AM
To: dev@samza.apache.org
Subject: Re: Need Some Help w/ Gradle Build on OpenJDK 11

Hi Jeremiah,

We fixed a Rat related issue yesterday in
https://url.emailprotection.link/?aZyQRg2CGut2qgyHrdHxA3r2wRZBhFBnHgQFe8bv7-enYnJKoI1khv-IjOutGz9OT-_6hWiXhqVHoTjgH7Wnb-A~~. I don't know if this is the
same issue you were running into, but might be worth trying again with
the latest master.

Thanks,
Prateek
On Wed, Oct 10, 2018 at 6:58 AM Jeremiah Adams
<JA...@helixeducation.com> wrote:
>
> Anyone have a few cycles to help me out with Apache Rat failing the build on OpenJDK 11?
>
> Some things I’ve tried:
>
> Bumped Gradle to 4.10.2 (required for Java11). Bumped the Rat version to 0.12.
>
>
>
> Jeremiah Adams
> Software Engineer
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Jeremiah Adams <JA...@helixeducation.com>
> Sent: Tuesday, October 2, 2018 11:58 AM
> To: dev@samza.apache.org
> Subject: [POSSIBLE PHISHING] Need Some Help w/ Gradle Build on OpenJDK 11
>
> I know very little about Gradle.  I got a response on the issue I opened regarding Gradle builds failing on OpenJDK 11. I've since upgraded the Gradle version in gradle-wrapper.properties to 4.10.2. Build now gets past the java11 issue but is dying on the Apache rat task.  The build/plugin can't find a stylesheet.  I've had no luck chasing this down, can anyone point me in the right direction?
>
> Output from build:
>
> jeremiah:samza jeremiah$ gradle --stacktrace clean build
> > Task :rat FAILED
>
> FAILURE: Build failed with an exception.
>
> * Where:
> Script '/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle' line: 90
>
> * What went wrong:
> Execution failed for task ':rat'.
> > stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
>
> * Try:
> Run with --info or --debug option to get more log output. Run with --scan to get full insights.
>
> * Exception is:
> org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':rat'.
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
>         at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
>         at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
>         at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
>         at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
>         at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
>         at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
>         at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
>         at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
>         at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
>         at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
>         at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
>         at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
>         at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
>         at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
>         at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
>         at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
>         at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
>         at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
> Caused by: : stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
>         at org.apache.tools.ant.taskdefs.XSLTProcess.handleError(XSLTProcess.java:1430)
>         at org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:413)
>         at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
>         at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:78)
>         at jdk.internal.reflect.GeneratedMethodAccessor795.invoke(Unknown Source)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
>         at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
>         at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:160)
>         at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.nodeCompleted(AntBuilderDelegate.java:118)
>         at RatTask$_generateHtmlReport_closure4.doCall(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:90)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
>         at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:53)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:152)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:134)
>         at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:128)
>         at org.gradle.api.internal.project.IsolatedAntBuilder$execute$0.call(Unknown Source)
>         at RatTask.generateHtmlReport(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:89)
>         at RatTask.rat(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:106)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
>         at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:801)
>         at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:768)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
>         at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
>         ... 31 more
>
>
> * Get more help at https://url.emailprotection.link/?aEIQGIzVT9D4f4diZLBEyMfMWb_Uw9z8ph6LHcrAPoOs~
>
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
> Use '--warning-mode all' to show the individual deprecation warnings.
> See https://url.emailprotection.link/?aIi_JNGuQuS0ZnZdm0kEE-YRCZ2tHs9m5iKcDuL5rVAQTjCY4KIKlyYHbk0bS-oDDGW84Il96WyxIpnjXgYyt29mQZZrkSiwJlt5lMy6MrQq73_2gdSg4HrfeDxrWfl4C
>
> BUILD FAILED in 1s
> 20 actionable tasks: 1 executed, 19 up-to-date

Re: Need Some Help w/ Gradle Build on OpenJDK 11

Posted by Prateek Maheshwari <pr...@gmail.com>.
Hi Jeremiah,

We fixed a Rat related issue yesterday in
https://github.com/apache/samza/pull/703/. I don't know if this is the
same issue you were running into, but might be worth trying again with
the latest master.

Thanks,
Prateek
On Wed, Oct 10, 2018 at 6:58 AM Jeremiah Adams
<JA...@helixeducation.com> wrote:
>
> Anyone have a few cycles to help me out with Apache Rat failing the build on OpenJDK 11?
>
> Some things I’ve tried:
>
> Bumped Gradle to 4.10.2 (required for Java11). Bumped the Rat version to 0.12.
>
>
>
> Jeremiah Adams
> Software Engineer
> www.helixeducation.com
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Jeremiah Adams <JA...@helixeducation.com>
> Sent: Tuesday, October 2, 2018 11:58 AM
> To: dev@samza.apache.org
> Subject: [POSSIBLE PHISHING] Need Some Help w/ Gradle Build on OpenJDK 11
>
> I know very little about Gradle.  I got a response on the issue I opened regarding Gradle builds failing on OpenJDK 11. I've since upgraded the Gradle version in gradle-wrapper.properties to 4.10.2. Build now gets past the java11 issue but is dying on the Apache rat task.  The build/plugin can't find a stylesheet.  I've had no luck chasing this down, can anyone point me in the right direction?
>
> Output from build:
>
> jeremiah:samza jeremiah$ gradle --stacktrace clean build
> > Task :rat FAILED
>
> FAILURE: Build failed with an exception.
>
> * Where:
> Script '/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle' line: 90
>
> * What went wrong:
> Execution failed for task ':rat'.
> > stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
>
> * Try:
> Run with --info or --debug option to get more log output. Run with --scan to get full insights.
>
> * Exception is:
> org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':rat'.
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
>         at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
>         at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
>         at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
>         at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
>         at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
>         at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
>         at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
>         at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
>         at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
>         at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
>         at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
>         at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
>         at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
>         at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
>         at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
>         at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
>         at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
>         at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
>         at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
>         at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
> Caused by: : stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
>         at org.apache.tools.ant.taskdefs.XSLTProcess.handleError(XSLTProcess.java:1430)
>         at org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:413)
>         at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
>         at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:78)
>         at jdk.internal.reflect.GeneratedMethodAccessor795.invoke(Unknown Source)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
>         at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
>         at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:160)
>         at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.nodeCompleted(AntBuilderDelegate.java:118)
>         at RatTask$_generateHtmlReport_closure4.doCall(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:90)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
>         at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:53)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:152)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:134)
>         at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134)
>         at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:128)
>         at org.gradle.api.internal.project.IsolatedAntBuilder$execute$0.call(Unknown Source)
>         at RatTask.generateHtmlReport(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:89)
>         at RatTask.rat(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:106)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
>         at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
>         at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:801)
>         at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:768)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
>         at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
>         at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
>         at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
>         ... 31 more
>
>
> * Get more help at https://url.emailprotection.link/?aEIQGIzVT9D4f4diZLBEyMfMWb_Uw9z8ph6LHcrAPoOs~
>
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
> Use '--warning-mode all' to show the individual deprecation warnings.
> See https://url.emailprotection.link/?aIi_JNGuQuS0ZnZdm0kEE-YRCZ2tHs9m5iKcDuL5rVAQTjCY4KIKlyYHbk0bS-oDDGW84Il96WyxIpnjXgYyt29mQZZrkSiwJlt5lMy6MrQq73_2gdSg4HrfeDxrWfl4C
>
> BUILD FAILED in 1s
> 20 actionable tasks: 1 executed, 19 up-to-date

Re: Need Some Help w/ Gradle Build on OpenJDK 11

Posted by Jeremiah Adams <JA...@helixeducation.com>.
Anyone have a few cycles to help me out with Apache Rat failing the build on OpenJDK 11?

Some things I’ve tried:

Bumped Gradle to 4.10.2 (required for Java11). Bumped the Rat version to 0.12. 



Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Jeremiah Adams <JA...@helixeducation.com>
Sent: Tuesday, October 2, 2018 11:58 AM
To: dev@samza.apache.org
Subject: [POSSIBLE PHISHING] Need Some Help w/ Gradle Build on OpenJDK 11

I know very little about Gradle.  I got a response on the issue I opened regarding Gradle builds failing on OpenJDK 11. I've since upgraded the Gradle version in gradle-wrapper.properties to 4.10.2. Build now gets past the java11 issue but is dying on the Apache rat task.  The build/plugin can't find a stylesheet.  I've had no luck chasing this down, can anyone point me in the right direction?

Output from build:

jeremiah:samza jeremiah$ gradle --stacktrace clean build
> Task :rat FAILED

FAILURE: Build failed with an exception.

* Where:
Script '/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle' line: 90

* What went wrong:
Execution failed for task ':rat'.
> stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':rat'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
        at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
        at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: : stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
        at org.apache.tools.ant.taskdefs.XSLTProcess.handleError(XSLTProcess.java:1430)
        at org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:413)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
        at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:78)
        at jdk.internal.reflect.GeneratedMethodAccessor795.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
        at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
        at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:160)
        at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.nodeCompleted(AntBuilderDelegate.java:118)
        at RatTask$_generateHtmlReport_closure4.doCall(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:90)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
        at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:53)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:152)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:134)
        at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:128)
        at org.gradle.api.internal.project.IsolatedAntBuilder$execute$0.call(Unknown Source)
        at RatTask.generateHtmlReport(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:89)
        at RatTask.rat(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:106)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:801)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:768)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
        ... 31 more


* Get more help at https://url.emailprotection.link/?aEIQGIzVT9D4f4diZLBEyMfMWb_Uw9z8ph6LHcrAPoOs~

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://url.emailprotection.link/?aIi_JNGuQuS0ZnZdm0kEE-YRCZ2tHs9m5iKcDuL5rVAQTjCY4KIKlyYHbk0bS-oDDGW84Il96WyxIpnjXgYyt29mQZZrkSiwJlt5lMy6MrQq73_2gdSg4HrfeDxrWfl4C

BUILD FAILED in 1s
20 actionable tasks: 1 executed, 19 up-to-date

Need Some Help w/ Gradle Build on OpenJDK 11

Posted by Jeremiah Adams <JA...@helixeducation.com>.
I know very little about Gradle.  I got a response on the issue I opened regarding Gradle builds failing on OpenJDK 11. I've since upgraded the Gradle version in gradle-wrapper.properties to 4.10.2. Build now gets past the java11 issue but is dying on the Apache rat task.  The build/plugin can't find a stylesheet.  I've had no luck chasing this down, can anyone point me in the right direction?

Output from build:

jeremiah:samza jeremiah$ gradle --stacktrace clean build
> Task :rat FAILED

FAILURE: Build failed with an exception.

* Where:
Script '/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle' line: 90

* What went wrong:
Execution failed for task ':rat'.
> stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':rat'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
        at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
        at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: : stylesheet /Users/jeremiah/.gradle/daemon/4.10.2/gradle/resources/rat-output-to-html.xsl doesn't exist.
        at org.apache.tools.ant.taskdefs.XSLTProcess.handleError(XSLTProcess.java:1430)
        at org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:413)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
        at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:78)
        at jdk.internal.reflect.GeneratedMethodAccessor795.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
        at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
        at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:160)
        at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.nodeCompleted(AntBuilderDelegate.java:118)
        at RatTask$_generateHtmlReport_closure4.doCall(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:90)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
        at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:53)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:152)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:134)
        at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134)
        at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:128)
        at org.gradle.api.internal.project.IsolatedAntBuilder$execute$0.call(Unknown Source)
        at RatTask.generateHtmlReport(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:89)
        at RatTask.rat(/Users/jeremiah/projects/open_source/samza/gradle/rat.gradle:106)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:801)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:768)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
        ... 31 more


* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/4.10.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 1s
20 actionable tasks: 1 executed, 19 up-to-date

Re: Open JDK 11 Early Results

Posted by Yi Pan <ni...@gmail.com>.
Hi, Jeremiah,

Thanks for the detailed report! Really appreciate it!

So, from the report, it seems that we need to track the issues separately:
1) OpenJDK 11 with YARN (xxx version is to be determined pending feature
and backward compatibility tests)
2) OpenJDK 11 with Kafka (xxx version  is to be determined pending feature
and backward compatibility tests)
3) Samza gradle build failed with OpenJDK 11

Questions:
1) When you are doing the YARN/Kafka + OpenJDK11 tests, are you just using
OpenJDK 11 JVM to run the binaries? Have you tried to build from the source
code?
2) I am curious what other open source projects' strategy on OpenJDK11? Or
are all the other communities decide to pay Oracle for JE 11? In YARN JIRA
board, I can only find a few tickets with OpenJDK 7 or 8. Are AYRN and
Kafka community only supporting OpenJDK 7 and 8 now?

-Yi

On Mon, Oct 1, 2018 at 3:43 PM Jeremiah Adams <JA...@helixeducation.com>
wrote:

> Samza master branch does not build on Open JDK 11. It fails with a Gradle
> issue. Opened an issue with Gradle here:
> https://github.com/gradle/gradle/issues/6981
>
> ”Could not determine java version from '11'.”
>
> I Tried running all the dependencies in Hello-Samza via Grid. Yarn behaved
> as I expected and did not start. It is likely that Yarn is the biggest
> risk.
>
> Hadoop-2.6.1 - does not start on Open JDK 11
> Kafka-2.11-0.10.2.1 - does not start on Open JDK 11
> Zookeeper-3.4.3 - starts on Open JDK 11
>
>
> I updated Grid to recent versions and Yarn continued to misbehave:
>
> Hadoop: 3.1.1 - Does not start on Open JDK 11
> Kafka: - 2.11-2.0.0 - Starts on Open JDK 11
> Zookeeper: 3.4.13 - Starts on Open JDK 11
>
> I can’t really test anything interesting until Yarn can play nice on JDK
> 11.
>
>
>
> Jeremiah Adams
> Software Engineer
> www.helixeducation.com
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Yi Pan <ni...@gmail.com>
> Sent: Tuesday, September 25, 2018 9:09 AM
> To: dev@samza.apache.org
> Subject: Re: Java 11, Oracle Java and OpenJDK Release Cadence
>
> Hey, Jeremiah,
>
> Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
> these days.
>
> Regarding to Java 11 and the steps forward:
> 1. I don't have objection to adopt OpenJDK, as long as Samza code and
> compile and run on it. It might be an interesting issue since Samza also
> depends on other open source projects (like ZooKeeper and Kafka) which may
> not be test w/ OpenJDK yet.
> 2. It would be great if you can have some test build/run of Samza with Java
> 11 (I assume with OpenJDK?) and report the results back to the community
> 3. We can start a formal poll and vote when we know what it takes to adopt
> OpenJDK
>
> Does that sound good to you? Thanks!
>
> -Yi
>
>

Open JDK 11 Early Results

Posted by Jeremiah Adams <JA...@helixeducation.com>.
Samza master branch does not build on Open JDK 11. It fails with a Gradle issue. Opened an issue with Gradle here: https://github.com/gradle/gradle/issues/6981  

”Could not determine java version from '11'.”

I Tried running all the dependencies in Hello-Samza via Grid. Yarn behaved as I expected and did not start. It is likely that Yarn is the biggest risk. 

Hadoop-2.6.1 - does not start on Open JDK 11
Kafka-2.11-0.10.2.1 - does not start on Open JDK 11
Zookeeper-3.4.3 - starts on Open JDK 11


I updated Grid to recent versions and Yarn continued to misbehave:

Hadoop: 3.1.1 - Does not start on Open JDK 11
Kafka: - 2.11-2.0.0 - Starts on Open JDK 11
Zookeeper: 3.4.13 - Starts on Open JDK 11

I can’t really test anything interesting until Yarn can play nice on JDK 11.



Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Yi Pan <ni...@gmail.com>
Sent: Tuesday, September 25, 2018 9:09 AM
To: dev@samza.apache.org
Subject: Re: Java 11, Oracle Java and OpenJDK Release Cadence

Hey, Jeremiah,

Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
these days.

Regarding to Java 11 and the steps forward:
1. I don't have objection to adopt OpenJDK, as long as Samza code and
compile and run on it. It might be an interesting issue since Samza also
depends on other open source projects (like ZooKeeper and Kafka) which may
not be test w/ OpenJDK yet.
2. It would be great if you can have some test build/run of Samza with Java
11 (I assume with OpenJDK?) and report the results back to the community
3. We can start a formal poll and vote when we know what it takes to adopt
OpenJDK

Does that sound good to you? Thanks!

-Yi


Re: Java 11, Oracle Java and OpenJDK Release Cadence

Posted by Jeremiah Adams <JA...@helixeducation.com>.
Yes it does. Thanks Yi.




Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Yi Pan <ni...@gmail.com>
Sent: Tuesday, September 25, 2018 9:09 AM
To: dev@samza.apache.org
Subject: Re: Java 11, Oracle Java and OpenJDK Release Cadence

Hey, Jeremiah,

Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
these days.

Regarding to Java 11 and the steps forward:
1. I don't have objection to adopt OpenJDK, as long as Samza code and
compile and run on it. It might be an interesting issue since Samza also
depends on other open source projects (like ZooKeeper and Kafka) which may
not be test w/ OpenJDK yet.
2. It would be great if you can have some test build/run of Samza with Java
11 (I assume with OpenJDK?) and report the results back to the community
3. We can start a formal poll and vote when we know what it takes to adopt
OpenJDK

Does that sound good to you? Thanks!

-Yi

On Tue, Sep 25, 2018 at 6:16 AM Jeremiah Adams <JA...@helixeducation.com>
wrote:

> Has anyone had a chance to digest this information regarding Java11 and
> OpenJDK release cadences?
>
> What would be next steps to drive adoption of the OpenJDK release cadence
> (never participated in an apache proj) ?
>
>
> Jeremiah Adams
> Software Engineer
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Jeremiah Adams <JA...@helixeducation.com>
> Sent: Friday, September 14, 2018 11:06 AM
> To: dev@samza.apache.org
> Subject: [POSSIBLE PHISHING] Java 11, Oracle Java and OpenJDK Release
> Cadence
>
> Java 11 is out on Sept., 25 and  makes Java 8, 9 and 10 obsolete. Java 8,
> 9, and 10 will no longer receive security patches/updates beginning in
> January 2019. Organizations have the option to pay Oracle for patches in
> order to stay on Java 8.
>
>
> Oracle is changing its release cycle and licensing for Java SE (which is
> no more as off 11).  Java SE is rebranded to Oracle java and is an LTS
> release requiring paid licenses per processor running java 11. Fee is $25
> per processor. LTS means fewer upgrades, but does receive security patches.
>
>
> Oracle will continue to contribute to OpenJDK. However, the OpenJDK
> releases will come every six month and are called "Major" releases. Each
> release making the previous obsolete with zero security patches/updates
> applied to previous versions.
>
>
> All of this sounds really bad, however, the "major" versions that will
> come from OpenJDK are more akin to going from 8->8u20->8u40 than from Java
> 7 to Java 8. So the biggest hurdle is simply aligning project releases with
> OpenJDK release cadences. This implies building to release candidates prior
> to bi-annual JDK release testing and releasing.
>
>
> If your organization doesn't want  to pay for Oracle Java your org will
> have to upgrade Java versions every six months. While we can easily manage
> our own code base, dependencies such as Samza are key to our business and
> difficult to control.
>
>
> Below are links related to this topic I found while doing research. If
> anyone can comes to different conclusions please share.
>
>
> I do have testing Samza on Java 11 in our backlog. I will likely get to
> this in our next sprint.
>
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0j72Y6avuFmu2X6u4DJ7_0T0iyIyEgUzpjF6rBt6TIRXQYWMVthA64THcUqnV5hU4pdymWzPI3L7YERnixT8rA0Z47pxu1bzSDsgrMz1NV_3Vot8xbB3KHWgTLasBS28Q-jGlnSLrqiejfG7jh4QqnM~
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR335x1B7NfLOg2mRZ57SZL8myVQFm7vuSasrJeInSoMHQhxVlsLEByQvcRHQeUlQ62SN10DqoTiP2i8DFABfafYVoKzcQTBNShsG0REu93t4bc~
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSQRBane7pfZXo2rexwPhq2Tc6Myhnk6sA4D9q3HyexrDA~~
>
>
> https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf87w2jQAvkc4puGYJormDdEi14FVjy8N25CbthNaebiIOtp3xkOYhKLMQxXuGid9--_CobmijsPowQCHRj2Islp2
>
>
> https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf85pQA-DVbxCqa-9rZSuX7kxznRvqZ9cKxtgd62zs8ibZEjABbem_1VoLatid2rg78wShF8Qu_KEHqGdvReur2ID
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR334EDnAQb9JPs_AJil5RU_3pqotWsSlzYVzdulacvboup4NSrSH7V166uVVPvPBg0z
>
>
> https://url.emailprotection.link/?ahm35FfkbnDmFxeI3cPiwUIZzSXt6BkEkee_ZcP79j1zYtClglkO3u8rPOhpRMsxL2JOdvu-kISrVa_8Qn5dwAQ~~
>
>
>
> Jeremiah Adams
> Software Engineer
>
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> <
> https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHp-qKE3Xn2gNiZ3dlqAeSDA~
> >
> Blog<
> https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHgFEZu-KYuiu8doY66NWwmmyWxz7kC-27Yfnbdgd2wyh5gjXUa6LMT_NRXsj1g1VVg~~>
> | Twitter<
> https://url.emailprotection.link/?a0Q7ct5_6cOdbJ86kpWB0zx6RbtgugTVC7lU_W7za50jLdZQGpLgVlR1V06zckSaM5oOKb6QBo46Qp9xt0Tt7Aw~~>
> | Facebook<
> https://url.emailprotection.link/?aAmyAO_nS_C1aDgBLeKyGTu0tksTt1_mn2PcS8KJXNJPM04iRHKgX96qGgENV-dMSER5wl8zDVRr3RsS0OmcF9A~~>
> | LinkedIn<
> https://url.emailprotection.link/?aanlcNI-cN74Gdz-TD332xAl6lHu7TRNICWoHUFjYf-KlBjrCGHoYR65b3rl-OyW10nWFv6hwYvUSoVHL4b3vGA~~
> >
>

Re: Java 11, Oracle Java and OpenJDK Release Cadence

Posted by Yi Pan <ni...@gmail.com>.
Hey, Jeremiah,

Sorry to reply late. The team is pretty busy for Samza 1.0 preparation
these days.

Regarding to Java 11 and the steps forward:
1. I don't have objection to adopt OpenJDK, as long as Samza code and
compile and run on it. It might be an interesting issue since Samza also
depends on other open source projects (like ZooKeeper and Kafka) which may
not be test w/ OpenJDK yet.
2. It would be great if you can have some test build/run of Samza with Java
11 (I assume with OpenJDK?) and report the results back to the community
3. We can start a formal poll and vote when we know what it takes to adopt
OpenJDK

Does that sound good to you? Thanks!

-Yi

On Tue, Sep 25, 2018 at 6:16 AM Jeremiah Adams <JA...@helixeducation.com>
wrote:

> Has anyone had a chance to digest this information regarding Java11 and
> OpenJDK release cadences?
>
> What would be next steps to drive adoption of the OpenJDK release cadence
> (never participated in an apache proj) ?
>
>
> Jeremiah Adams
> Software Engineer
> www.helixeducation.com
> Blog | Twitter | Facebook | LinkedIn
>
> ________________________________________
> From: Jeremiah Adams <JA...@helixeducation.com>
> Sent: Friday, September 14, 2018 11:06 AM
> To: dev@samza.apache.org
> Subject: [POSSIBLE PHISHING] Java 11, Oracle Java and OpenJDK Release
> Cadence
>
> Java 11 is out on Sept., 25 and  makes Java 8, 9 and 10 obsolete. Java 8,
> 9, and 10 will no longer receive security patches/updates beginning in
> January 2019. Organizations have the option to pay Oracle for patches in
> order to stay on Java 8.
>
>
> Oracle is changing its release cycle and licensing for Java SE (which is
> no more as off 11).  Java SE is rebranded to Oracle java and is an LTS
> release requiring paid licenses per processor running java 11. Fee is $25
> per processor. LTS means fewer upgrades, but does receive security patches.
>
>
> Oracle will continue to contribute to OpenJDK. However, the OpenJDK
> releases will come every six month and are called "Major" releases. Each
> release making the previous obsolete with zero security patches/updates
> applied to previous versions.
>
>
> All of this sounds really bad, however, the "major" versions that will
> come from OpenJDK are more akin to going from 8->8u20->8u40 than from Java
> 7 to Java 8. So the biggest hurdle is simply aligning project releases with
> OpenJDK release cadences. This implies building to release candidates prior
> to bi-annual JDK release testing and releasing.
>
>
> If your organization doesn't want  to pay for Oracle Java your org will
> have to upgrade Java versions every six months. While we can easily manage
> our own code base, dependencies such as Samza are key to our business and
> difficult to control.
>
>
> Below are links related to this topic I found while doing research. If
> anyone can comes to different conclusions please share.
>
>
> I do have testing Samza on Java 11 in our backlog. I will likely get to
> this in our next sprint.
>
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0j72Y6avuFmu2X6u4DJ7_0T0iyIyEgUzpjF6rBt6TIRXQYWMVthA64THcUqnV5hU4pdymWzPI3L7YERnixT8rA0Z47pxu1bzSDsgrMz1NV_3Vot8xbB3KHWgTLasBS28Q-jGlnSLrqiejfG7jh4QqnM~
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR335x1B7NfLOg2mRZ57SZL8myVQFm7vuSasrJeInSoMHQhxVlsLEByQvcRHQeUlQ62SN10DqoTiP2i8DFABfafYVoKzcQTBNShsG0REu93t4bc~
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSQRBane7pfZXo2rexwPhq2Tc6Myhnk6sA4D9q3HyexrDA~~
>
>
> https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf87w2jQAvkc4puGYJormDdEi14FVjy8N25CbthNaebiIOtp3xkOYhKLMQxXuGid9--_CobmijsPowQCHRj2Islp2
>
>
> https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf85pQA-DVbxCqa-9rZSuX7kxznRvqZ9cKxtgd62zs8ibZEjABbem_1VoLatid2rg78wShF8Qu_KEHqGdvReur2ID
>
>
> https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR334EDnAQb9JPs_AJil5RU_3pqotWsSlzYVzdulacvboup4NSrSH7V166uVVPvPBg0z
>
>
> https://url.emailprotection.link/?ahm35FfkbnDmFxeI3cPiwUIZzSXt6BkEkee_ZcP79j1zYtClglkO3u8rPOhpRMsxL2JOdvu-kISrVa_8Qn5dwAQ~~
>
>
>
> Jeremiah Adams
> Software Engineer
>
> https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~
> <
> https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHp-qKE3Xn2gNiZ3dlqAeSDA~
> >
> Blog<
> https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHgFEZu-KYuiu8doY66NWwmmyWxz7kC-27Yfnbdgd2wyh5gjXUa6LMT_NRXsj1g1VVg~~>
> | Twitter<
> https://url.emailprotection.link/?a0Q7ct5_6cOdbJ86kpWB0zx6RbtgugTVC7lU_W7za50jLdZQGpLgVlR1V06zckSaM5oOKb6QBo46Qp9xt0Tt7Aw~~>
> | Facebook<
> https://url.emailprotection.link/?aAmyAO_nS_C1aDgBLeKyGTu0tksTt1_mn2PcS8KJXNJPM04iRHKgX96qGgENV-dMSER5wl8zDVRr3RsS0OmcF9A~~>
> | LinkedIn<
> https://url.emailprotection.link/?aanlcNI-cN74Gdz-TD332xAl6lHu7TRNICWoHUFjYf-KlBjrCGHoYR65b3rl-OyW10nWFv6hwYvUSoVHL4b3vGA~~
> >
>

Re: Java 11, Oracle Java and OpenJDK Release Cadence

Posted by Jeremiah Adams <JA...@helixeducation.com>.
Has anyone had a chance to digest this information regarding Java11 and OpenJDK release cadences?

What would be next steps to drive adoption of the OpenJDK release cadence (never participated in an apache proj) ?


Jeremiah Adams
Software Engineer
www.helixeducation.com
Blog | Twitter | Facebook | LinkedIn

________________________________________
From: Jeremiah Adams <JA...@helixeducation.com>
Sent: Friday, September 14, 2018 11:06 AM
To: dev@samza.apache.org
Subject: [POSSIBLE PHISHING] Java 11, Oracle Java and OpenJDK Release Cadence

Java 11 is out on Sept., 25 and  makes Java 8, 9 and 10 obsolete. Java 8, 9, and 10 will no longer receive security patches/updates beginning in January 2019. Organizations have the option to pay Oracle for patches in order to stay on Java 8.


Oracle is changing its release cycle and licensing for Java SE (which is no more as off 11).  Java SE is rebranded to Oracle java and is an LTS release requiring paid licenses per processor running java 11. Fee is $25 per processor. LTS means fewer upgrades, but does receive security patches.


Oracle will continue to contribute to OpenJDK. However, the OpenJDK releases will come every six month and are called "Major" releases. Each release making the previous obsolete with zero security patches/updates applied to previous versions.


All of this sounds really bad, however, the "major" versions that will come from OpenJDK are more akin to going from 8->8u20->8u40 than from Java 7 to Java 8. So the biggest hurdle is simply aligning project releases with OpenJDK release cadences. This implies building to release candidates prior to bi-annual JDK release testing and releasing.


If your organization doesn't want  to pay for Oracle Java your org will have to upgrade Java versions every six months. While we can easily manage our own code base, dependencies such as Samza are key to our business and difficult to control.


Below are links related to this topic I found while doing research. If anyone can comes to different conclusions please share.


I do have testing Samza on Java 11 in our backlog. I will likely get to this in our next sprint.


https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0j72Y6avuFmu2X6u4DJ7_0T0iyIyEgUzpjF6rBt6TIRXQYWMVthA64THcUqnV5hU4pdymWzPI3L7YERnixT8rA0Z47pxu1bzSDsgrMz1NV_3Vot8xbB3KHWgTLasBS28Q-jGlnSLrqiejfG7jh4QqnM~

https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR335x1B7NfLOg2mRZ57SZL8myVQFm7vuSasrJeInSoMHQhxVlsLEByQvcRHQeUlQ62SN10DqoTiP2i8DFABfafYVoKzcQTBNShsG0REu93t4bc~

https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSQRBane7pfZXo2rexwPhq2Tc6Myhnk6sA4D9q3HyexrDA~~

https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf87w2jQAvkc4puGYJormDdEi14FVjy8N25CbthNaebiIOtp3xkOYhKLMQxXuGid9--_CobmijsPowQCHRj2Islp2

https://url.emailprotection.link/?aYmBZB8QfgHNf5nRk8JdSbFwfj1IesvpEjPoIIvwuf85pQA-DVbxCqa-9rZSuX7kxznRvqZ9cKxtgd62zs8ibZEjABbem_1VoLatid2rg78wShF8Qu_KEHqGdvReur2ID

https://url.emailprotection.link/?aDBOFTaWEGiT3_M2IXWtc0iUPRrQ-bzd6r2p9Tl0XlSSjWk5HhL3ovTAmykUMgR334EDnAQb9JPs_AJil5RU_3pqotWsSlzYVzdulacvboup4NSrSH7V166uVVPvPBg0z

https://url.emailprotection.link/?ahm35FfkbnDmFxeI3cPiwUIZzSXt6BkEkee_ZcP79j1zYtClglkO3u8rPOhpRMsxL2JOdvu-kISrVa_8Qn5dwAQ~~



Jeremiah Adams
Software Engineer
https://url.emailprotection.link/?ahfhEufaAWbezBrUFPG98ZJcterGfIerU3ZwsA3Gv_C0~<https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHp-qKE3Xn2gNiZ3dlqAeSDA~>
Blog<https://url.emailprotection.link/?a49H2rNGIIBtQOw6md8OcHgFEZu-KYuiu8doY66NWwmmyWxz7kC-27Yfnbdgd2wyh5gjXUa6LMT_NRXsj1g1VVg~~> | Twitter<https://url.emailprotection.link/?a0Q7ct5_6cOdbJ86kpWB0zx6RbtgugTVC7lU_W7za50jLdZQGpLgVlR1V06zckSaM5oOKb6QBo46Qp9xt0Tt7Aw~~> | Facebook<https://url.emailprotection.link/?aAmyAO_nS_C1aDgBLeKyGTu0tksTt1_mn2PcS8KJXNJPM04iRHKgX96qGgENV-dMSER5wl8zDVRr3RsS0OmcF9A~~> | LinkedIn<https://url.emailprotection.link/?aanlcNI-cN74Gdz-TD332xAl6lHu7TRNICWoHUFjYf-KlBjrCGHoYR65b3rl-OyW10nWFv6hwYvUSoVHL4b3vGA~~>