| Information | Value |
|---|
| Statement | CREATE TABLE IF NOT EXISTS no_select(id int PRIMARY KEY); |
| Tried Hosts | TRIED_HOSTS |
| Queried Hosts | QUERIED_HOSTS |
| Schema in Agreement | true |
\ No newline at end of file
diff --git a/flink/flink-scala-2.12/pom.xml b/flink/flink-scala-2.12/pom.xml
index 7d551123dd7..a7b5d3a20e6 100644
--- a/flink/flink-scala-2.12/pom.xml
+++ b/flink/flink-scala-2.12/pom.xml
@@ -34,7 +34,7 @@
${flink1.19.version}
- 2.12.7
+
2.12
${flink.scala.version}
2.3.7
@@ -1060,7 +1060,7 @@
- -Xmx5120m -XX:MaxMetaspaceSize=1024m -Dsun.zip.disableMemoryMapping=true
+ -Xmx5120m -XX:MaxMetaspaceSize=1024m -Dsun.zip.disableMemoryMapping=true ${extraJavaTestArgs}
@@ -1222,6 +1222,38 @@
provided
+
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+
+
+ patch-flink-scala
+ initialize
+ run
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1256,6 +1288,35 @@
provided
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+
+
+ patch-flink-scala
+ initialize
+ run
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/flink/pom.xml b/flink/pom.xml
index 490ee787baa..51b89977970 100644
--- a/flink/pom.xml
+++ b/flink/pom.xml
@@ -47,4 +47,16 @@
2.12.7
2.12
+
+
+
+ jdk17+
+
+ [17,)
+
+
+ 2.12.21
+
+
+
diff --git a/pom.xml b/pom.xml
index 9e021cbfc6f..19b13ba4760 100644
--- a/pom.xml
+++ b/pom.xml
@@ -178,6 +178,29 @@
1.21.4
512m
+
+ -XX:+IgnoreUnrecognizedVMOptions
+ --add-opens=java.base/java.lang=ALL-UNNAMED
+ --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
+ --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
+ --add-opens=java.base/java.io=ALL-UNNAMED
+ --add-opens=java.base/java.net=ALL-UNNAMED
+ --add-opens=java.base/java.nio=ALL-UNNAMED
+ --add-opens=java.base/java.util=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
+ --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.cs=ALL-UNNAMED
+ --add-opens=java.base/sun.security.action=ALL-UNNAMED
+ --add-opens=java.base/sun.util.calendar=ALL-UNNAMED
+ -Dio.netty.tryReflectionSetAccessible=true
+ -Dio.netty.allocator.type=pooled
+ -Dio.netty.handler.ssl.defaultEndpointVerificationAlgorithm=NONE
+ --sun-misc-unsafe-memory-access=allow
+ --enable-native-access=ALL-UNNAMED
+ -XX:+EnableDynamicAgentLoading
+
@@ -450,6 +473,13 @@
test
+
+ org.testcontainers
+ cassandra
+ ${testcontainers.version}
+ test
+
+
org.apache.hadoop
hadoop-client-api
@@ -651,7 +681,7 @@
false
false
- -Xmx2g -Xms1g -Dfile.encoding=UTF-8
+ -Xmx2g -Xms1g -Dfile.encoding=UTF-8 ${extraJavaTestArgs}
true
diff --git a/spark/interpreter/pom.xml b/spark/interpreter/pom.xml
index 0e276a49ba5..a51f045ae8e 100644
--- a/spark/interpreter/pom.xml
+++ b/spark/interpreter/pom.xml
@@ -55,8 +55,6 @@
**/PySparkInterpreterMatplotlibTest.java
**/*Test.*
-
-
@@ -453,36 +451,6 @@
-
-
- java-17
-
- [17,)
-
-
-
- -XX:+IgnoreUnrecognizedVMOptions
- --add-modules=jdk.incubator.vector
- --add-opens=java.base/java.lang=ALL-UNNAMED
- --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
- --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
- --add-opens=java.base/java.io=ALL-UNNAMED
- --add-opens=java.base/java.net=ALL-UNNAMED
- --add-opens=java.base/java.nio=ALL-UNNAMED
- --add-opens=java.base/java.util=ALL-UNNAMED
- --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
- --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
- --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED
- --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
- --add-opens=java.base/sun.nio.cs=ALL-UNNAMED
- --add-opens=java.base/sun.security.action=ALL-UNNAMED
- --add-opens=java.base/sun.util.calendar=ALL-UNNAMED
- -Djdk.reflect.useDirectMethodHandle=false
- -Dio.netty.tryReflectionSetAccessible=true
-
-
-
-
diff --git a/zeppelin-integration/pom.xml b/zeppelin-integration/pom.xml
index fe665f2d01e..3368f7d0726 100644
--- a/zeppelin-integration/pom.xml
+++ b/zeppelin-integration/pom.xml
@@ -165,7 +165,7 @@
maven-surefire-plugin
- -Xmx2g -Xms1g -Dfile.encoding=UTF-8
+ -Xmx2g -Xms1g -Dfile.encoding=UTF-8 ${extraJavaTestArgs}
${tests.to.exclude}
diff --git a/zeppelin-interpreter-integration/pom.xml b/zeppelin-interpreter-integration/pom.xml
index a0a4e9ecd34..3197de27da3 100644
--- a/zeppelin-interpreter-integration/pom.xml
+++ b/zeppelin-interpreter-integration/pom.xml
@@ -174,7 +174,7 @@
1
false
- -Xmx3072m
+ -Xmx3072m ${extraJavaTestArgs}
${basedir}/../
diff --git a/zeppelin-server/pom.xml b/zeppelin-server/pom.xml
index 8dbdb575673..505c5ed75bb 100644
--- a/zeppelin-server/pom.xml
+++ b/zeppelin-server/pom.xml
@@ -585,7 +585,7 @@
1
false
- -Xmx3g -Xms1g -Dfile.encoding=UTF-8
+ -Xmx3g -Xms1g -Dfile.encoding=UTF-8 ${extraJavaTestArgs}
${project.build.directory}
diff --git a/zeppelin-test/src/main/java/org/apache/zeppelin/test/DownloadUtils.java b/zeppelin-test/src/main/java/org/apache/zeppelin/test/DownloadUtils.java
index 8a7dd6bdc4d..86b48c45310 100644
--- a/zeppelin-test/src/main/java/org/apache/zeppelin/test/DownloadUtils.java
+++ b/zeppelin-test/src/main/java/org/apache/zeppelin/test/DownloadUtils.java
@@ -455,6 +455,7 @@ public static String downloadFlink(String flinkVersion, String scalaVersion) {
if (targetFlinkHomeFolder.exists()) {
LOGGER.info("Skip to download Flink {}_{} as it is already downloaded.", flinkVersion,
scalaVersion);
+ patchFlinkScala(targetFlinkHomeFolder, flinkVersion, scalaVersion);
return targetFlinkHomeFolder.getAbsolutePath();
}
File flinkTGZ = new File(flinkDownloadFolder,
@@ -541,9 +542,52 @@ public static String downloadFlink(String flinkVersion, String scalaVersion) {
} catch (Exception e) {
throw new RuntimeException("Fail to download jar", e);
}
+ patchFlinkScala(targetFlinkHomeFolder, flinkVersion, scalaVersion);
return targetFlinkHomeFolder.getAbsolutePath();
}
+ /**
+ * Flink 1.x tgz bundles flink-scala_2.12 which shades scala 2.12.7.
+ * Scala 2.12.7's JrtClassPath.asURLs() crashes on JDK 17+ (scala/bug#11608, fixed in 2.12.9).
+ * Strip the shaded classes and copy in Scala 2.12.20 jars.
+ */
+ private static void patchFlinkScala(File flinkHome, String flinkVersion, String scalaVersion) {
+ if (!"2.12".equals(scalaVersion)) {
+ return;
+ }
+ if (SemanticVersion.of(flinkVersion).equalsOrNewerThan(SemanticVersion.of("2.0.0"))) {
+ return;
+ }
+ File libDir = new File(flinkHome, "lib");
+ for (File jar : libDir.listFiles((d, n) -> n.startsWith("flink-scala_") && n.endsWith(".jar"))) {
+ LOGGER.info("Stripping Scala 2.12.7 classes from {}", jar.getName());
+ try {
+ Process p = new ProcessBuilder("zip", "-d", jar.getAbsolutePath(), "scala/*")
+ .redirectErrorStream(true).start();
+ IOUtils.toString(p.getInputStream(), StandardCharsets.UTF_8);
+ p.waitFor();
+ } catch (Exception e) {
+ LOGGER.warn("Failed to strip Scala classes from {}", jar.getName(), e);
+ }
+ }
+ String scalaPatchVersion = "2.12.20";
+ for (String artifact : new String[]{"scala-library", "scala-compiler", "scala-reflect"}) {
+ String jarName = artifact + "-" + scalaPatchVersion + ".jar";
+ File dest = new File(libDir, jarName);
+ if (dest.exists()) {
+ continue;
+ }
+ String url = "https://repo1.maven.org/maven2/org/scala-lang/" + artifact + "/"
+ + scalaPatchVersion + "/" + jarName;
+ try {
+ LOGGER.info("Downloading {} to {}", jarName, dest);
+ download(url, 3, dest);
+ } catch (Exception e) {
+ throw new RuntimeException("Fail to download " + jarName, e);
+ }
+ }
+ }
+
private static void mvFile(String srcPath, String dstPath) throws IOException {
Path src = Paths.get(srcPath);
Path dst = Paths.get(dstPath);