Skip to content

Commit 9429a28

Browse files
committed
Improve lz4-java dependency resolution strategy
Explicitly prefer Flink's at.yawk.lz4:lz4-java over org.lz4:lz4-java to ensure the Flink-compatible version is always selected, regardless of version numbers. This is more robust than selectHighestVersion() which could theoretically select org.lz4 if it had a higher version number.
1 parent e584993 commit 9429a28

3 files changed

Lines changed: 15 additions & 5 deletions

File tree

runners/flink/2.1/build.gradle

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,14 @@ project.ext {
4343
apply from: "../flink_runner.gradle"
4444

4545
// Flink 2.1 uses at.yawk.lz4:lz4-java instead of org.lz4:lz4-java
46-
// Resolve capability conflict by preferring Flink's version
46+
// Explicitly prefer Flink's at.yawk.lz4 version to resolve capability conflict
4747
configurations.all {
4848
resolutionStrategy.capabilitiesResolution.withCapability('org.lz4:lz4-java') {
49-
selectHighestVersion()
49+
def candidate = candidates.find { it.id.toString().contains('at.yawk.lz4') }
50+
if (candidate != null) {
51+
select(candidate)
52+
} else {
53+
selectHighestVersion()
54+
}
5055
}
5156
}

runners/flink/2.1/job-server/build.gradle

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,14 @@ project.ext {
3131
apply from: "$basePath/flink_job_server.gradle"
3232

3333
// Flink 2.1 uses at.yawk.lz4:lz4-java instead of org.lz4:lz4-java
34-
// Resolve capability conflict by preferring Flink's version
34+
// Explicitly prefer Flink's at.yawk.lz4 version to resolve capability conflict
3535
configurations.all {
3636
resolutionStrategy.capabilitiesResolution.withCapability('org.lz4:lz4-java') {
37-
selectHighestVersion()
37+
def candidate = candidates.find { it.id.toString().contains('at.yawk.lz4') }
38+
if (candidate != null) {
39+
select(candidate)
40+
} else {
41+
selectHighestVersion()
42+
}
3843
}
3944
}

runners/flink/2.1/src/test/resources/flink-test-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ taskmanager:
2424
managed:
2525
size: 1gb
2626
parallelism:
27-
default: '2'
27+
default: '23'

0 commit comments

Comments
 (0)