Oscar Perez
09/08/2023, 1:19 PMimplementation "org.apache.flink:flink-table-api-java:${flinkVersion}"
implementation "org.apache.flink:flink-table-runtime:${flinkVersion}"
implementation "org.apache.flink:flink-table-planner-loader:${flinkVersion}"
implementation "org.apache.flink:flink-table-api-java-bridge:${flinkVersion}"
implementation "org.apache.flink:flink-statebackend-rocksdb:${flinkVersion}"
// Add test dependencies here.
testCompileOnly "org.apache.flink:flink-streaming-java:${flinkVersion}:tests"
testImplementation "org.apache.flink:flink-test-utils:${flinkVersion}"
testImplementation "org.apache.flink:flink-test-utils-junit:${flinkVersion}"
testImplementation "org.apache.flink:flink-table-test-utils:${flinkVersion}"
testImplementation "org.apache.flink:flink-table-test-utils:${flinkVersion}"
testImplementation "org.apache.flink:flink-table-planner-loader:${flinkVersion}"
The weirdest thing is that sometimes, very seldomly works, so I guess this may be related to some classloader race condition? Has anybody experienced something similar?Martijn Visser
09/08/2023, 1:21 PMOscar Perez
09/08/2023, 1:25 PMOscar Perez
09/08/2023, 1:26 PMOscar Perez
09/08/2023, 1:26 PMOscar Perez
09/08/2023, 2:22 PMclass FlinkClusterExtension : BeforeAllCallback, AfterAllCallback {
private val PARALLELISM = 1
private lateinit var flinkCluster: MiniClusterWithClientResource
override fun beforeAll(context: ExtensionContext) {
flinkCluster =
MiniClusterWithClientResource(
MiniClusterResourceConfiguration.Builder()
.setNumberSlotsPerTaskManager(PARALLELISM)
.setNumberTaskManagers(1)
.build(),
)
flinkCluster.before()
}
override fun afterAll(context: ExtensionContext) {
flinkCluster.after()
}
}Oscar Perez
09/08/2023, 2:22 PMOscar Perez
09/08/2023, 2:22 PMMartijn Visser
09/08/2023, 2:23 PMOscar Perez
09/08/2023, 2:23 PMOscar Perez
09/08/2023, 2:23 PMOscar Perez
09/08/2023, 2:23 PMMartijn Visser
09/08/2023, 2:23 PMOscar Perez
09/08/2023, 2:24 PMOscar Perez
09/08/2023, 2:24 PMMartijn Visser
09/08/2023, 2:24 PMflink-streaming-java, flink-clients, flink-table-api-java-bridge , flink-table-planner-loader and flink-table-runtime which are all set to providedMartijn Visser
09/08/2023, 2:25 PMflink-test-utils and flink-runtime-web for test scopes (the latter only to make the Web UI available)Martijn Visser
09/08/2023, 2:26 PMOscar Perez
09/08/2023, 2:28 PM