Skip to content

Commit

Permalink
[BEAM-7962] Drop support for Flink 1.5 and 1.6
Browse files Browse the repository at this point in the history
Flink 1.9 is now released and Beam 2.17.0 is going to support it. Since the
Flink community only supports the last two Flink releases, it is now time to
drop at least 1.5 and 1.6.

As a follow-up, we will get rid of Flink 1.5/1.6 specific workarounds, e.g. make use of Flink's preSnapshotBarrier in AbstractStreamOperator which removes the needs to buffer elements during a snapshot.

Build time should decrease by several minutes.
  • Loading branch information
mxm committed Sep 21, 2019
1 parent ec3e770 commit ce27e30
Show file tree
Hide file tree
Showing 36 changed files with 45 additions and 242 deletions.
2 changes: 1 addition & 1 deletion .test-infra/jenkins/CommonTestProperties.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ class CommonTestProperties {
JAVA: [
DATAFLOW: ":runners:google-cloud-dataflow-java",
SPARK: ":runners:spark",
FLINK: ":runners:flink:1.5",
FLINK: ":runners:flink:1.8",
DIRECT: ":runners:direct-java"
],
PYTHON: [
Expand Down
8 changes: 4 additions & 4 deletions .test-infra/jenkins/job_PostCommit_Java_Nexmark_Flink.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ NoPhraseTriggeringPostCommitBuilder.postCommitJob('beam_PostCommit_Java_Nexmark_
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':sdks:java:testing:nexmark:run')
commonJobProperties.setGradleSwitches(delegate)
switches('-Pnexmark.runner=":runners:flink:1.5"' +
switches('-Pnexmark.runner=":runners:flink:1.8"' +
' -Pnexmark.args="' +
[NexmarkBigqueryProperties.nexmarkBigQueryArgs,
'--streaming=false',
Expand All @@ -55,7 +55,7 @@ NoPhraseTriggeringPostCommitBuilder.postCommitJob('beam_PostCommit_Java_Nexmark_
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':sdks:java:testing:nexmark:run')
commonJobProperties.setGradleSwitches(delegate)
switches('-Pnexmark.runner=":runners:flink:1.5"' +
switches('-Pnexmark.runner=":runners:flink:1.8"' +
' -Pnexmark.args="' +
[NexmarkBigqueryProperties.nexmarkBigQueryArgs,
'--streaming=true',
Expand All @@ -70,7 +70,7 @@ NoPhraseTriggeringPostCommitBuilder.postCommitJob('beam_PostCommit_Java_Nexmark_
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':sdks:java:testing:nexmark:run')
commonJobProperties.setGradleSwitches(delegate)
switches('-Pnexmark.runner=":runners:flink:1.5"' +
switches('-Pnexmark.runner=":runners:flink:1.8"' +
' -Pnexmark.args="' +
[NexmarkBigqueryProperties.nexmarkBigQueryArgs,
'--queryLanguage=sql',
Expand All @@ -85,7 +85,7 @@ NoPhraseTriggeringPostCommitBuilder.postCommitJob('beam_PostCommit_Java_Nexmark_
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':sdks:java:testing:nexmark:run')
commonJobProperties.setGradleSwitches(delegate)
switches('-Pnexmark.runner=":runners:flink:1.5"' +
switches('-Pnexmark.runner=":runners:flink:1.8"' +
' -Pnexmark.args="' +
[NexmarkBigqueryProperties.nexmarkBigQueryArgs,
'--queryLanguage=sql',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ PostcommitJobBuilder.postCommitJob('beam_PostCommit_Java_PVR_Flink_Batch',
steps {
gradle {
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':runners:flink:1.5:job-server:validatesPortableRunnerBatch')
tasks(':runners:flink:1.8:job-server:validatesPortableRunnerBatch')
commonJobProperties.setGradleSwitches(delegate)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ PostcommitJobBuilder.postCommitJob('beam_PostCommit_Java_PVR_Flink_Streaming',
steps {
gradle {
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':runners:flink:1.5:job-server:validatesPortableRunnerStreaming')
tasks(':runners:flink:1.8:job-server:validatesPortableRunnerStreaming')
commonJobProperties.setGradleSwitches(delegate)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ PostcommitJobBuilder.postCommitJob('beam_PostCommit_Java_ValidatesRunner_Flink',
steps {
gradle {
rootBuildScriptDir(commonJobProperties.checkoutDir)
tasks(':runners:flink:1.5:validatesRunner')
tasks(':runners:flink:1.8:validatesRunner')
commonJobProperties.setGradleSwitches(delegate)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1336,7 +1336,7 @@ class BeamModulePlugin implements Plugin<Project> {
}

if (runner?.equalsIgnoreCase('flink')) {
testRuntime it.project(path: ":runners:flink:1.5", configuration: 'testRuntime')
testRuntime it.project(path: ":runners:flink:1.8", configuration: 'testRuntime')
}

if (runner?.equalsIgnoreCase('spark')) {
Expand Down Expand Up @@ -1808,7 +1808,7 @@ class BeamModulePlugin implements Plugin<Project> {
dependsOn setupTask
// We need flink-job-server-container dependency since Python PortableRunner automatically
// brings the flink-job-server-container up when --job_endpoint is not specified.
dependsOn ':runners:flink:1.5:job-server-container:docker'
dependsOn ':runners:flink:1.8:job-server-container:docker'
}
mainTask.dependsOn pythonTask
cleanupTask.mustRunAfter pythonTask
Expand Down Expand Up @@ -1990,7 +1990,7 @@ class BeamModulePlugin implements Plugin<Project> {
project.task('portableWordCount' + (isStreaming ? 'Streaming' : 'Batch')) {
dependsOn = ['installGcpTest']
mustRunAfter = [
':runners:flink:1.5:job-server-container:docker',
':runners:flink:1.8:job-server-container:docker',
':sdks:python:container:py2:docker',
':sdks:python:container:py35:docker',
':sdks:python:container:py36:docker',
Expand Down
2 changes: 1 addition & 1 deletion examples/java/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ dependencies {
// https://issues.apache.org/jira/browse/BEAM-3583
// apexRunnerPreCommit project(":runners:apex")
directRunnerPreCommit project(path: ":runners:direct-java", configuration: "shadow")
flinkRunnerPreCommit project(":runners:flink:1.5")
flinkRunnerPreCommit project(":runners:flink:1.8")
// TODO: Make the netty version used configurable, we add netty-all 4.1.17.Final so it appears on the classpath
// before 4.1.8.Final defined by Apache Beam
sparkRunnerPreCommit "io.netty:netty-all:4.1.17.Final"
Expand Down
2 changes: 1 addition & 1 deletion examples/kotlin/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ dependencies {
// https://issues.apache.org/jira/browse/BEAM-3583
// apexRunnerPreCommit project(":runners:apex")
directRunnerPreCommit project(path: ":runners:direct-java", configuration: "shadow")
flinkRunnerPreCommit project(":runners:flink:1.5")
flinkRunnerPreCommit project(":runners:flink:1.8")
// TODO: Make the netty version used configurable, we add netty-all 4.1.17.Final so it appears on the classpath
// before 4.1.8.Final defined by Apache Beam
sparkRunnerPreCommit "io.netty:netty-all:4.1.17.Final"
Expand Down
6 changes: 3 additions & 3 deletions project-mappings
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,9 @@
:beam-runners-google-cloud-dataflow-java-examples :runners:google-cloud-dataflow-java:examples
:beam-runners-google-cloud-dataflow-java :runners:google-cloud-dataflow-java
:beam-runners-gearpump :runners:gearpump
:beam-runners-flink_2.11-job-server-container :runners:flink:1.5:job-server-container
:beam-runners-flink_2.11-job-server :runners:flink:1.5:job-server
:beam-runners-flink_2.11 :runners:flink:1.5
:beam-runners-flink_2.11-job-server-container :runners:flink:1.8:job-server-container
:beam-runners-flink_2.11-job-server :runners:flink:1.8:job-server
:beam-runners-flink_2.11 :runners:flink:1.8
:beam-runners-flink-1.7-job-server-container :runners:flink:1.7:job-server-container
:beam-runners-flink-1.7-job-server :runners:flink:1.7:job-server
:beam-runners-flink-1.7 :runners:flink:1.7
Expand Down
2 changes: 1 addition & 1 deletion release/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ task runJavaExamplesValidationTask {
dependsOn ":runners:google-cloud-dataflow-java:runQuickstartJavaDataflow"
dependsOn ":runners:apex:runQuickstartJavaApex"
dependsOn ":runners:spark:runQuickstartJavaSpark"
dependsOn ":runners:flink:1.5:runQuickstartJavaFlinkLocal"
dependsOn ":runners:flink:1.8:runQuickstartJavaFlinkLocal"
dependsOn ":runners:direct-java:runMobileGamingJavaDirect"
dependsOn ":runners:google-cloud-dataflow-java:runMobileGamingJavaDataflow"
}
2 changes: 1 addition & 1 deletion release/src/main/scripts/run_rc_validation.sh
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ if [[ "$java_quickstart_flink_local" = true ]]; then
echo "*************************************************************"
echo "* Running Java Quickstart with Flink local runner"
echo "*************************************************************"
./gradlew :runners:flink:1.5:runQuickstartJavaFlinkLocal \
./gradlew :runners:flink:1.8:runQuickstartJavaFlinkLocal \
-Prepourl=${REPO_URL} \
-Pver=${RELEASE_VER}
else
Expand Down
34 changes: 0 additions & 34 deletions runners/flink/1.5/build.gradle

This file was deleted.

26 changes: 0 additions & 26 deletions runners/flink/1.5/job-server-container/build.gradle

This file was deleted.

31 changes: 0 additions & 31 deletions runners/flink/1.5/job-server/build.gradle

This file was deleted.

34 changes: 0 additions & 34 deletions runners/flink/1.6/build.gradle

This file was deleted.

26 changes: 0 additions & 26 deletions runners/flink/1.6/job-server-container/build.gradle

This file was deleted.

31 changes: 0 additions & 31 deletions runners/flink/1.6/job-server/build.gradle

This file was deleted.

4 changes: 2 additions & 2 deletions runners/flink/1.7/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ project.ext {
// Set the version of all Flink-related dependencies here.
flink_version = '1.7.2'
// Main source directory and Flink version specific code.
main_source_dirs = ["$basePath/src/main/java", "../1.5/src/main/java"]
test_source_dirs = ["$basePath/src/test/java", "../1.5/src/test/java"]
main_source_dirs = ["$basePath/src/main/java", "./src/main/java"]
test_source_dirs = ["$basePath/src/test/java", "./src/test/java"]
main_resources_dirs = ["$basePath/src/main/resources"]
test_resources_dirs = ["$basePath/src/test/resources"]
archives_base_name = 'beam-runners-flink-1.7'
Expand Down
11 changes: 2 additions & 9 deletions runners/flink/flink_runner.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -83,14 +83,7 @@ test {
}
// TODO Running tests of all Flink versions in parallel can be too harsh on Jenkins memory
// Run them serially for now, to avoid "Exit code 137", i.e. Jenkins host killing the Gradle test process
if (project.path == ":runners:flink:1.6") {
mustRunAfter(":runners:flink:1.5:test")
} else if (project.path == ":runners:flink:1.7") {
mustRunAfter(":runners:flink:1.5:test")
mustRunAfter(":runners:flink:1.6:test")
} else if (project.path == ":runners:flink:1.8") {
mustRunAfter(":runners:flink:1.5:test")
mustRunAfter(":runners:flink:1.6:test")
if (project.path == ":runners:flink:1.8") {
mustRunAfter(":runners:flink:1.7:test")
}
}
Expand Down Expand Up @@ -190,5 +183,5 @@ task validatesRunner {
dependsOn validatesRunnerStreaming
}

// Generates :runners:flink:1.5:runQuickstartJavaFlinkLocal
// Generates :runners:flink:1.8:runQuickstartJavaFlinkLocal
createJavaExamplesArchetypeValidationTask(type: 'Quickstart', runner: 'FlinkLocal')
4 changes: 2 additions & 2 deletions sdks/go/test/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,12 @@ golang {

task flinkValidatesRunner {
dependsOn ":sdks:go:test:goBuild"
dependsOn ":runners:flink:1.5:job-server:shadowJar"
dependsOn ":runners:flink:1.8:job-server:shadowJar"
doLast {
def options = [
"--runner flink",
"--parallel 1", // prevent memory overuse
"--flink_job_server_jar ${project(":runners:flink:1.5:job-server").shadowJar.archivePath}",
"--flink_job_server_jar ${project(":runners:flink:1.8:job-server").shadowJar.archivePath}",
]
exec {
executable "sh"
Expand Down
2 changes: 1 addition & 1 deletion sdks/java/testing/nexmark/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ if (shouldProvideSpark) {
//
// Parameters:
// -Pnexmark.runner
// Specify a runner subproject, such as ":runners:spark" or ":runners:flink:1.5"
// Specify a runner subproject, such as ":runners:spark" or ":runners:flink:1.8"
// Defaults to ":runners:direct-java"
//
// -Pnexmark.args
Expand Down
Loading

0 comments on commit ce27e30

Please sign in to comment.