This is an automated email from the ASF dual-hosted git repository.
peacewong pushed a commit to branch dev-1.2.0
in repository https://gitbox.apache.org/repos/asf/incubator-linkis.git
The following commit(s) were added to refs/heads/dev-1.2.0 by this push:
new c755a1e2c scala version (#2405)
c755a1e2c is described below
commit c755a1e2c0deafff9c9c1cd4fc0a60bfe61de3f6
Author: gabeng1996 <[email protected]>
AuthorDate: Sun Jul 3 22:18:13 2022 +0800
scala version (#2405)
---
.../linkis/engineplugin/spark/config/SparkConfiguration.scala | 1 +
.../engineplugin/spark/executor/SparkScalaExecutor.scala | 10 +++++++++-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git
a/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/config/SparkConfiguration.scala
b/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/config/SparkConfiguration.scala
index ca4311ded..f2bf3e62a 100644
---
a/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/config/SparkConfiguration.scala
+++
b/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/config/SparkConfiguration.scala
@@ -34,6 +34,7 @@ object SparkConfiguration extends Logging {
val SPARK_LOOP_INIT_TIME =
CommonVars[TimeType]("wds.linkis.engine.spark.spark-loop.init.time", new
TimeType("120s"))
val SPARK_LANGUAGE_REPL_INIT_TIME =
CommonVars[TimeType]("wds.linkis.engine.spark.language-repl.init.time", new
TimeType("30s"))
val SPARK_REPL_CLASSDIR = CommonVars[String]("spark.repl.classdir", "",
"默认master")
+ val SPARK_SCALA_VERSION = CommonVars("linkis.spark.scala.version", "2.11")
val PROXY_USER = CommonVars[String]("spark.proxy.user", "${UM}")
diff --git
a/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/executor/SparkScalaExecutor.scala
b/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/executor/SparkScalaExecutor.scala
index 938a0935a..a78418798 100644
---
a/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/executor/SparkScalaExecutor.scala
+++
b/linkis-engineconn-plugins/engineconn-plugins/spark/src/main/scala/org/apache/linkis/engineplugin/spark/executor/SparkScalaExecutor.scala
@@ -257,7 +257,10 @@ class SparkScalaExecutor(sparkEngineSession:
SparkEngineSession, id: Long) exten
sparkILoop.settings = settings
sparkILoop.createInterpreter()
- val in0 = getField(sparkILoop,
"scala$tools$nsc$interpreter$ILoop$$in0").asInstanceOf[Option[BufferedReader]]
+ val in0 = SparkConfiguration.SPARK_SCALA_VERSION.getValue match {
+ case "2.11" => getField(sparkILoop,
"scala$tools$nsc$interpreter$ILoop$$in0").asInstanceOf[Option[BufferedReader]]
+ case "2.12" => getDeclareField(sparkILoop,
"in0").asInstanceOf[Option[BufferedReader]]
+ }
val reader = in0.fold(sparkILoop.chooseReader(settings))(r =>
SimpleReader(r,
jOut, interactive = true))
@@ -271,6 +274,11 @@ class SparkScalaExecutor(sparkEngineSession:
SparkEngineSession, id: Long) exten
field.setAccessible(true)
field.get(obj)
}
+ private def getDeclareField(obj: Object, name: String): Object = {
+ val field = obj.getClass.getDeclaredField(name)
+ field.setAccessible(true)
+ field.get(obj)
+ }
def bindSparkSession = {
require(sparkContext != null)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]