[
https://issues.apache.org/jira/browse/BEAM-1972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15969763#comment-15969763
]
ASF GitHub Bot commented on BEAM-1972:
--------------------------------------
GitHub user ssisk opened a pull request:
https://github.com/apache/beam/pull/2546
[BEAM-1972] Only compile HIFIO ITs when compiling with java 8.
Be sure to do all of the following to help us incorporate your contribution
quickly and easily:
- [X] Make sure the PR title is formatted like:
`[BEAM-<Jira issue #>] Description of pull request`
- [X] Make sure tests pass via `mvn clean verify`. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
- [X] Replace `<Jira issue #>` in the title with the actual Jira issue
number, if there is one.
- [X] If this contribution is large, please file an Apache
[Individual Contributor License
Agreement](https://www.apache.org/licenses/icla.pdf).
---
The HIFIO jdk1.8-tests directory contains dependencies that require java8
(notably cassandra.)
The enforcer rules in jdk1.8-test mean that enforcer won't treat that as a
problem, however the module itself was still compiling in that scenario. This
change makes it so that the module is skipped.
I've verified this fix works by doing mvn clean verify on a machine with
java8 and a machine with only java7 (which previously failed mvn clean verify)
- I also verified that the jdk1.8-tests module actually compiled on the java8
machine and that we can still run the integration tests.
mvn is a tricky one, so let me know if there's something I haven't thought
of/etc...
Presumably, we will need java8-only modules in the future, so I'm guessing
this will be a pattern that may be followed elsewhere (eg. in the upcoming
cassandra module - cc @jbonofre )
R @dhalperi
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/ssisk/beam enforcer-j7
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/beam/pull/2546.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2546
----
commit 06c8cf865e4030312b4563e690156c8b44636191
Author: Stephen Sisk <[email protected]>
Date: 2017-04-15T00:27:22Z
Only compile HIFIO ITs when compiling with java 8.
----
> HIFIO jdk module fails enforcer when only java 7 is installed on machine
> ------------------------------------------------------------------------
>
> Key: BEAM-1972
> URL: https://issues.apache.org/jira/browse/BEAM-1972
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-extensions
> Affects Versions: First stable release
> Reporter: Stephen Sisk
> Assignee: Stephen Sisk
>
> When running on a machine with only java 7, you cannot do a full compile of
> the project.
> The error message is:
> [WARNING] Rule 1: org.apache.maven.plugins.enforcer.RequireJavaVersion failed
> with message:
> Detected JDK Version: 1.7.0-121 is not in the allowed range [1.8,).
> The failed module is:
> [INFO] Apache Beam :: SDKs :: Java :: IO :: Hadoop :: jdk1.8-tests FAILURE [
> 37.549 s]
> This is likely due to the enforcer rules at
> https://github.com/apache/beam/blob/master/sdks/java/io/hadoop/jdk1.8-tests/pom.xml#L39
> without this exception to the enforcer rules, it throws errors since the
> cassandra dependency in that directory is java 8, so the intent is that
> enforcer should not error out since this module.
> Below are the errors (well, warnings) when run with <version>[1.8,)</version>
> is commented out:
> WARNING]
> /home/sisk/beam/sdks/java/io/hadoop/jdk1.8-tests/src/test/java/org/apache/beam/sdk/io/hadoop/inputformat/HIFIOWithEmbeddedCassandraTest.java:
>
> /home/sisk/.m2/repository/org/apache/cassandra/cassandra-all/3.9/cassandra-all-3.9.jar(org/apache/cassandra/service/EmbeddedCassandraService.class):
> major version 52 is newer than 51, the highest major version supported by
> this compiler.
> It is recommended that the compiler be upgraded.
> [WARNING]
> /home/sisk/beam/sdks/java/io/hadoop/jdk1.8-tests/src/test/java/org/apache/beam/sdk/io/hadoop/inputformat/HIFIOWithElasticTest.java:
>
> /home/sisk/.m2/repository/org/elasticsearch/elasticsearch/5.0.0/elasticsearch-5.0.0.jar(org/elasticsearch/action/admin/indices/create/CreateIndexRequest.class):
> major version 52 is newer than 51, the highest major version supported by
> this compiler.
> It is recommended that the compiler be upgraded.
> [WARNING]
> /home/sisk/beam/sdks/java/io/hadoop/jdk1.8-tests/src/test/java/org/apache/beam/sdk/io/hadoop/inputformat/HIFIOWithElasticTest.java:
>
> /home/sisk/.m2/repository/org/elasticsearch/elasticsearch/5.0.0/elasticsearch-5.0.0.jar(org/elasticsearch/action/admin/indices/delete/DeleteIndexRequest.class):
> major version 52 is newer than 51, the highest major version supported by
> this compiler.
> It is recommended that the compiler be upgraded.
> ...and a couple more of these errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)