diff --git a/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java b/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java index 244d00f49c0..fa37e0fb30d 100644 --- a/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java +++ b/flink/flink-scala-2.12/src/main/java/org/apache/zeppelin/flink/FlinkInterpreter.java @@ -22,7 +22,6 @@ import org.apache.flink.configuration.Configuration; import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment; import org.apache.flink.table.api.TableEnvironment; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.*; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.slf4j.Logger; @@ -91,8 +90,8 @@ private FlinkScalaInterpreter loadFlinkScalaInterpreter() throws Exception { Class clazz = Class.forName(innerIntpClassName); return (FlinkScalaInterpreter) - clazz.getConstructor(Properties.class, ClassLoader.class, ZeppelinConfiguration.class) - .newInstance(getProperties(), flinkScalaClassLoader, zConf); + clazz.getConstructor(Properties.class, ClassLoader.class) + .newInstance(getProperties(), flinkScalaClassLoader); } @Override diff --git a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala index 070daf6a2b8..b7af4ad3b10 100644 --- a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala +++ b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScala212Interpreter.scala @@ -24,15 +24,13 @@ import java.util.Properties import org.apache.zeppelin.interpreter.InterpreterContext import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion -import org.apache.zeppelin.conf.ZeppelinConfiguration import scala.tools.nsc.Settings import scala.tools.nsc.interpreter.{IMain, JPrintWriter} class FlinkScala212Interpreter(override val properties: Properties, - override val flinkScalaClassLoader: ClassLoader, - override val zConf: ZeppelinConfiguration) - extends FlinkScalaInterpreter(properties, flinkScalaClassLoader, zConf) { + override val flinkScalaClassLoader: ClassLoader) + extends FlinkScalaInterpreter(properties, flinkScalaClassLoader) { override def completion(buf: String, cursor: Int, diff --git a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala index c2ceb60360c..a11003b8bc2 100644 --- a/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala +++ b/flink/flink-scala-2.12/src/main/scala/org/apache/zeppelin/flink/FlinkScalaInterpreter.scala @@ -44,7 +44,6 @@ import org.apache.flink.table.catalog.hive.HiveCatalog import org.apache.flink.table.functions.{AggregateFunction, ScalarFunction, TableAggregateFunction, TableFunction} import org.apache.flink.table.module.hive.HiveModule import org.apache.flink.yarn.cli.FlinkYarnSessionCli -import org.apache.zeppelin.conf.ZeppelinConfiguration import org.apache.zeppelin.dep.DependencyResolver import org.apache.zeppelin.flink.internal.FlinkShell import org.apache.zeppelin.flink.internal.FlinkShell._ @@ -66,8 +65,7 @@ import scala.tools.nsc.interpreter.{Completion, IMain, IR, JPrintWriter, Results * @param properties */ abstract class FlinkScalaInterpreter(val properties: Properties, - val flinkScalaClassLoader: ClassLoader, - val zConf: ZeppelinConfiguration) { + val flinkScalaClassLoader: ClassLoader) { private lazy val LOGGER: Logger = LoggerFactory.getLogger(getClass) @@ -800,7 +798,12 @@ abstract class FlinkScalaInterpreter(val properties: Properties, val flinkPackageJars = if (!StringUtils.isBlank(properties.getProperty("flink.execution.packages", ""))) { val packages = properties.getProperty("flink.execution.packages") - val dependencyResolver = new DependencyResolver(System.getProperty("user.home") + "/.m2/repository", zConf) + val dependencyResolver = new DependencyResolver( + System.getProperty("user.home") + "/.m2/repository", + properties.getProperty("zeppelin.proxy.url"), + properties.getProperty("zeppelin.proxy.user"), + properties.getProperty("zeppelin.proxy.password"), + properties.getProperty("zeppelin.interpreter.dep.mvnRepo")) packages.split(",") .flatMap(e => JavaConversions.asScalaBuffer(dependencyResolver.load(e))) .map(e => e.getAbsolutePath).toSeq diff --git a/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java b/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java index 82c5b9d3541..efbf1493884 100644 --- a/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java +++ b/markdown/src/main/java/org/apache/zeppelin/markdown/FlexmarkParser.java @@ -28,11 +28,11 @@ import com.vladsch.flexmark.html.HtmlRenderer; import com.vladsch.flexmark.parser.Parser; import com.vladsch.flexmark.util.data.MutableDataSet; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.Arrays; +import java.util.Properties; import static com.vladsch.flexmark.ext.emoji.EmojiImageType.UNICODE_ONLY; @@ -44,7 +44,9 @@ public class FlexmarkParser implements MarkdownParser { private Parser parser; private HtmlRenderer renderer; - public FlexmarkParser(ZeppelinConfiguration zConf) { + public FlexmarkParser(Properties properties) { + boolean escapeHtml = Boolean.parseBoolean( + properties.getProperty("zeppelin.notebook.markdown.escape.html", "true")); MutableDataSet options = new MutableDataSet(); options.set(Parser.EXTENSIONS, Arrays.asList(StrikethroughExtension.create(), TablesExtension.create(), @@ -55,7 +57,7 @@ public FlexmarkParser(ZeppelinConfiguration zConf) { EmojiExtension.create())); options.set(HtmlRenderer.SOFT_BREAK, "
\n"); options.set(EmojiExtension.USE_IMAGE_TYPE, UNICODE_ONLY); - options.set(HtmlRenderer.ESCAPE_HTML, zConf.isZeppelinNotebookMarkdownEscapeHtml()); + options.set(HtmlRenderer.ESCAPE_HTML, escapeHtml); parser = Parser.builder(options).build(); renderer = HtmlRenderer.builder(options).build(); } diff --git a/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java b/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java index 46733e43a0d..871c2f8eb0c 100644 --- a/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java +++ b/markdown/src/main/java/org/apache/zeppelin/markdown/Markdown.java @@ -74,7 +74,7 @@ public MarkdownParser createMarkdownParser(String parserType) { LOGGER.debug("Creating {} markdown interpreter", parserType); if (MarkdownParserType.FLEXMARK.toString().equals(parserType)) { - return new FlexmarkParser(zConf); + return new FlexmarkParser(getProperties()); } else { // default parser return new Markdown4jParser(); diff --git a/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java b/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java index 01540b09c4c..ef9327e89e1 100644 --- a/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java +++ b/markdown/src/test/java/org/apache/zeppelin/markdown/FlexmarkParserTest.java @@ -17,7 +17,6 @@ package org.apache.zeppelin.markdown; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.InterpreterResult; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; @@ -44,7 +43,6 @@ public void setUp() throws Exception { Properties props = new Properties(); props.put(Markdown.MARKDOWN_PARSER_TYPE, Markdown.PARSER_TYPE_FLEXMARK); md = new Markdown(props); - md.setZeppelinConfiguration(ZeppelinConfiguration.load()); md.open(); } diff --git a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java index ea3ad80e319..943f0591756 100644 --- a/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java +++ b/zeppelin-integration/src/test/java/org/apache/zeppelin/integration/PersonalizeActionsIT.java @@ -210,8 +210,8 @@ void testGraphAction() throws Exception { clickAndWait(By.xpath("//div[@class='modal-dialog'][contains(.,'Do you want to personalize your analysis?')" + "]//div[@class='modal-footer']//button[contains(.,'OK')]")); - clickableWait(By.xpath(getParagraphXPath(1) + - "//button[contains(@uib-tooltip, 'Bar Chart')]"), MAX_BROWSER_TIMEOUT_SEC).click(); + clickAndWait(By.xpath(getParagraphXPath(1) + + "//button[contains(@uib-tooltip, 'Bar Chart')]")); assertEquals("fa fa-bar-chart", manager.getWebDriver().findElement(By.xpath(getParagraphXPath(1) + "//button[contains(@class," + diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java index b44e096e4a1..1b3693a20e3 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/AbstractDependencyResolver.java @@ -24,7 +24,6 @@ import java.util.LinkedList; import java.util.List; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.eclipse.aether.RepositorySystem; import org.eclipse.aether.RepositorySystemSession; import org.eclipse.aether.repository.Authentication; @@ -49,26 +48,28 @@ public abstract class AbstractDependencyResolver { protected RepositorySystemSession session; private Proxy proxy = null; - protected AbstractDependencyResolver(String localRepoPath, ZeppelinConfiguration zConf) { - if (zConf.getZeppelinProxyUrl() != null) { + protected AbstractDependencyResolver(String localRepoPath, + String proxyUrl, String proxyUser, String proxyPassword, String mvnRepoUrl) { + if (proxyUrl != null) { try { - URL proxyUrl = new URL(zConf.getZeppelinProxyUrl()); - Authentication auth = new AuthenticationBuilder().addUsername(zConf.getZeppelinProxyUser()).addPassword(zConf.getZeppelinProxyPassword()).build(); - proxy = new Proxy(proxyUrl.getProtocol(), proxyUrl.getHost(), proxyUrl.getPort(), auth); + URL parsedProxyUrl = new URL(proxyUrl); + Authentication auth = new AuthenticationBuilder() + .addUsername(proxyUser).addPassword(proxyPassword).build(); + proxy = new Proxy(parsedProxyUrl.getProtocol(), parsedProxyUrl.getHost(), + parsedProxyUrl.getPort(), auth); } catch (MalformedURLException e) { - LOGGER.error("Proxy Url {} is not valid - skipping Proxy config", zConf.getZeppelinProxyUrl(), e); + LOGGER.error("Proxy Url {} is not valid - skipping Proxy config", proxyUrl, e); } } session = Booter.newRepositorySystemSession(system, localRepoPath); - repos.addAll(Booter.newCentralRepositorys(proxy, zConf)); // add maven central + repos.addAll(Booter.newCentralRepositorys(proxy, mvnRepoUrl)); // add maven central repos.add(Booter.newLocalRepository()); } - protected AbstractDependencyResolver(String localRepoPath, Proxy proxy, - ZeppelinConfiguration zConf) { + protected AbstractDependencyResolver(String localRepoPath, Proxy proxy, String mvnRepoUrl) { this.proxy = proxy; session = Booter.newRepositorySystemSession(system, localRepoPath); - repos.addAll(Booter.newCentralRepositorys(proxy, zConf)); // add maven central + repos.addAll(Booter.newCentralRepositorys(proxy, mvnRepoUrl)); // add maven central repos.add(Booter.newLocalRepository()); } diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java index b0e89b96a42..16822c6ae74 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/Booter.java @@ -18,7 +18,6 @@ package org.apache.zeppelin.dep; import org.apache.commons.lang3.Validate; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.maven.repository.internal.MavenRepositorySystemUtils; import org.eclipse.aether.DefaultRepositorySystemSession; import org.eclipse.aether.RepositorySystem; @@ -83,10 +82,10 @@ static String resolveLocalRepoPath(String localRepoPath) { } public static List newCentralRepositorys(Proxy proxy, - ZeppelinConfiguration zConf) { + String mvnRepoUrl) { String mvnRepoEnv = System.getenv("ZEPPELIN_INTERPRETER_DEP_MVNREPO"); if (mvnRepoEnv == null) { - mvnRepoEnv = zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO); + mvnRepoEnv = mvnRepoUrl; } if (mvnRepoEnv == null) { mvnRepoEnv = "https://repo1.maven.org/maven2/"; diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java index cd7eea5a05a..e513ac2b66b 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/dep/DependencyResolver.java @@ -27,7 +27,6 @@ import org.apache.commons.io.FileUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.eclipse.aether.RepositoryException; import org.eclipse.aether.artifact.Artifact; import org.eclipse.aether.artifact.DefaultArtifact; @@ -56,12 +55,13 @@ public class DependencyResolver extends AbstractDependencyResolver { "org.apache.zeppelin:zeppelin-interpreter", "org.apache.zeppelin:zeppelin-server"}; - public DependencyResolver(String localRepoPath, ZeppelinConfiguration zConf) { - super(localRepoPath, zConf); + public DependencyResolver(String localRepoPath, + String proxyUrl, String proxyUser, String proxyPassword, String mvnRepoUrl) { + super(localRepoPath, proxyUrl, proxyUser, proxyPassword, mvnRepoUrl); } - public DependencyResolver(String localRepoPath, Proxy proxy, ZeppelinConfiguration zConf) { - super(localRepoPath, proxy, zConf); + public DependencyResolver(String localRepoPath, Proxy proxy, String mvnRepoUrl) { + super(localRepoPath, proxy, mvnRepoUrl); } public List load(String artifact) diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java index 9c3c9e59f50..bf09cb7106b 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/Interpreter.java @@ -22,7 +22,6 @@ import org.apache.commons.lang3.reflect.FieldUtils; import org.apache.zeppelin.annotation.Experimental; import org.apache.zeppelin.annotation.ZeppelinApi; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.apache.zeppelin.scheduler.Scheduler; import org.apache.zeppelin.scheduler.SchedulerFactory; @@ -150,7 +149,6 @@ public Scheduler getScheduler() { private URL[] classloaderUrls; protected Properties properties; protected String userName; - protected ZeppelinConfiguration zConf; @ZeppelinApi public Interpreter(Properties properties) { @@ -200,10 +198,6 @@ public String getUserName() { return this.userName; } - public void setZeppelinConfiguration(ZeppelinConfiguration zConf) { - this.zConf = zConf; - } - public void setInterpreterGroup(InterpreterGroup interpreterGroup) { this.interpreterGroup = interpreterGroup; } diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java index f7b17e362e6..116d2604884 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/InterpreterOption.java @@ -20,8 +20,6 @@ import java.util.ArrayList; import java.util.List; -import org.apache.zeppelin.conf.ZeppelinConfiguration; - /** * */ @@ -29,7 +27,7 @@ public class InterpreterOption { public static final transient String SHARED = "shared"; public static final transient String SCOPED = "scoped"; public static final transient String ISOLATED = "isolated"; - private transient ZeppelinConfiguration zConf; + private transient boolean usernameForceLowerCase; // always set it as true, keep this field just for backward compatibility boolean remote = true; @@ -60,8 +58,8 @@ public void setHost(String host) { this.host = host; } - public void setConf(ZeppelinConfiguration zConf) { - this.zConf = zConf; + public void setUsernameForceLowerCase(boolean usernameForceLowerCase) { + this.usernameForceLowerCase = usernameForceLowerCase; } public boolean permissionIsSet() { @@ -73,7 +71,7 @@ public void setUserPermission(boolean setPermission) { } public List getOwners() { - if (null != owners && zConf.isUsernameForceLowerCase()) { + if (null != owners && usernameForceLowerCase) { List lowerCaseUsers = new ArrayList<>(); for (String owner : owners) { lowerCaseUsers.add(owner.toLowerCase()); @@ -117,7 +115,7 @@ public static InterpreterOption fromInterpreterOption(InterpreterOption other) { option.setPermission = other.setPermission; option.owners = (null == other.owners) ? new ArrayList<>() : new ArrayList<>(other.owners); - option.zConf = other.zConf; + option.usernameForceLowerCase = other.usernameForceLowerCase; return option; } diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java index ec236ce1f28..f794a582837 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LazyOpenInterpreter.java @@ -21,7 +21,6 @@ import java.util.List; import java.util.Properties; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion; import org.apache.zeppelin.scheduler.Scheduler; @@ -205,11 +204,6 @@ public void setUserName(String userName) { this.intp.setUserName(userName); } - @Override - public void setZeppelinConfiguration(ZeppelinConfiguration zConf) { - this.intp.setZeppelinConfiguration(zConf); - } - @Override public String getUserName() { return this.intp.getUserName(); diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java index 8f44b2f962d..71528adf6d6 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/LifecycleManager.java @@ -19,19 +19,20 @@ package org.apache.zeppelin.interpreter; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer; +import java.util.Properties; + /** * Abstract base class for managing the lifecycle of interpreters */ public abstract class LifecycleManager { - protected ZeppelinConfiguration zConf; + protected Properties properties; protected RemoteInterpreterServer remoteInterpreterServer; - public LifecycleManager(ZeppelinConfiguration zConf, RemoteInterpreterServer remoteInterpreterServer) { - this.zConf = zConf; + public LifecycleManager(Properties properties, RemoteInterpreterServer remoteInterpreterServer) { + this.properties = properties; this.remoteInterpreterServer = remoteInterpreterServer; } diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java index da09c0fbd61..33609826874 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/NullLifecycleManager.java @@ -18,18 +18,19 @@ package org.apache.zeppelin.interpreter.lifecycle; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.LifecycleManager; import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer; +import java.util.Properties; + /** * Do nothing for the lifecycle of interpreter. User need to explicitly start/stop interpreter. */ public class NullLifecycleManager extends LifecycleManager { - public NullLifecycleManager(ZeppelinConfiguration zConf, + public NullLifecycleManager(Properties properties, RemoteInterpreterServer remoteInterpreterServer) { - super(zConf, remoteInterpreterServer); + super(properties, remoteInterpreterServer); } @Override diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java index e6bb97c7b09..75c96580771 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/lifecycle/TimeoutLifecycleManager.java @@ -18,13 +18,14 @@ package org.apache.zeppelin.interpreter.lifecycle; import org.apache.thrift.TException; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.interpreter.LifecycleManager; import org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer; import org.apache.zeppelin.scheduler.ExecutorFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.time.Duration; +import java.util.Properties; import java.util.concurrent.ScheduledExecutorService; import static java.util.concurrent.TimeUnit.MILLISECONDS; @@ -41,15 +42,20 @@ public class TimeoutLifecycleManager extends LifecycleManager { private static final Logger LOGGER = LoggerFactory.getLogger(TimeoutLifecycleManager.class); + private static final long DEFAULT_CHECK_INTERVAL = 60000L; + private static final long DEFAULT_TIMEOUT_THRESHOLD = 3600000L; + private long lastBusyTimeInMillis; - public TimeoutLifecycleManager(ZeppelinConfiguration zConf, + public TimeoutLifecycleManager(Properties properties, RemoteInterpreterServer remoteInterpreterServer) { - super(zConf, remoteInterpreterServer); - long checkInterval = zConf.getTime(ZeppelinConfiguration.ConfVars - .ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_TIMEOUT_CHECK_INTERVAL); - long timeoutThreshold = zConf.getTime( - ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_LIFECYCLE_MANAGER_TIMEOUT_THRESHOLD); + super(properties, remoteInterpreterServer); + long checkInterval = parseTimeValue(properties.getProperty( + "zeppelin.interpreter.lifecyclemanager.timeout.checkinterval", + String.valueOf(DEFAULT_CHECK_INTERVAL))); + long timeoutThreshold = parseTimeValue(properties.getProperty( + "zeppelin.interpreter.lifecyclemanager.timeout.threshold", + String.valueOf(DEFAULT_TIMEOUT_THRESHOLD))); ScheduledExecutorService checkScheduler = ExecutorFactory.singleton() .createOrGetScheduled("TimeoutLifecycleManager", 1); checkScheduler.scheduleAtFixedRate(() -> { @@ -64,10 +70,21 @@ public TimeoutLifecycleManager(ZeppelinConfiguration zConf, LOGGER.debug("Check idle time of interpreter"); } }, checkInterval, checkInterval, MILLISECONDS); - LOGGER.info("TimeoutLifecycleManager is started with checkInterval: {}, timeoutThreshold: ΒΈ{}", checkInterval, + LOGGER.info("TimeoutLifecycleManager is started with checkInterval: {}, timeoutThreshold: {}", checkInterval, timeoutThreshold); } + static long parseTimeValue(String value) { + try { + return Long.parseLong(value); + } catch (NumberFormatException e) { + if (value.endsWith("ms")) { + return Long.parseLong(value.substring(0, value.length() - 2)); + } + return Duration.parse("PT" + value).toMillis(); + } + } + @Override public void onInterpreterProcessStarted(String interpreterGroupId) { LOGGER.info("Interpreter process: {} is started", interpreterGroupId); diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java index 6728e7f441c..e733fd57f8c 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServer.java @@ -25,7 +25,6 @@ import org.apache.thrift.server.TThreadPoolServer; import org.apache.thrift.transport.TServerSocket; import org.apache.thrift.transport.TTransportException; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.dep.DependencyResolver; import org.apache.zeppelin.display.AngularObject; import org.apache.zeppelin.display.AngularObjectRegistry; @@ -144,7 +143,7 @@ public class RemoteInterpreterServer extends Thread // pod (RemoteInterpreterServer) private boolean isForceShutdown = true; - private ZeppelinConfiguration zConf; + private Properties zProperties; private static Thread shutdownThread; @@ -200,10 +199,8 @@ public void run() { @Override public void init(Map properties) throws InterpreterRPCException, TException { - this.zConf = ZeppelinConfiguration.load(); - for (Map.Entry entry : properties.entrySet()) { - this.zConf.setProperty(entry.getKey(), entry.getValue()); - } + this.zProperties = new Properties(); + this.zProperties.putAll(properties); try { lifecycleManager = createLifecycleManager(); @@ -213,8 +210,8 @@ public void init(Map properties) throws InterpreterRPCException, } if (!isTest) { - int connectionPoolSize = - this.zConf.getInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_CONNECTION_POOL_SIZE); + int connectionPoolSize = Integer.parseInt( + zProperties.getProperty("zeppelin.interpreter.connection.poolsize", "100")); LOGGER.info("Creating RemoteInterpreterEventClient with connection pool size: {}", connectionPoolSize); intpEventClient = new RemoteInterpreterEventClient(intpEventServerHost, intpEventServerPort, @@ -249,8 +246,8 @@ public void shutdown() throws InterpreterRPCException, TException { shutDownThread.start(); } - public ZeppelinConfiguration getConf() { - return this.zConf; + public Properties getProperties() { + return this.zProperties; } public LifecycleManager getLifecycleManager() { @@ -270,11 +267,13 @@ public boolean isRunning() { } private LifecycleManager createLifecycleManager() throws Exception { - String lifecycleManagerClass = zConf.getLifecycleManagerClass(); + String lifecycleManagerClass = zProperties.getProperty( + "zeppelin.interpreter.lifecyclemanager.class", + "org.apache.zeppelin.interpreter.lifecycle.NullLifecycleManager"); Class clazz = Class.forName(lifecycleManagerClass); LOGGER.info("Creating interpreter lifecycle manager: {}", lifecycleManagerClass); - return (LifecycleManager) clazz.getConstructor(ZeppelinConfiguration.class, RemoteInterpreterServer.class) - .newInstance(zConf, this); + return (LifecycleManager) clazz.getConstructor(Properties.class, RemoteInterpreterServer.class) + .newInstance(zProperties, this); } public static void main(String[] args) throws Exception { @@ -335,7 +334,11 @@ public void createInterpreter(String interpreterGroupId, String sessionId, Strin properties.get("zeppelin.interpreter.output.limit")); } - depLoader = new DependencyResolver(localRepoPath, zConf); + depLoader = new DependencyResolver(localRepoPath, + zProperties.getProperty("zeppelin.proxy.url"), + zProperties.getProperty("zeppelin.proxy.user"), + zProperties.getProperty("zeppelin.proxy.password"), + zProperties.getProperty("zeppelin.interpreter.dep.mvnRepo")); appLoader = new ApplicationLoader(resourcePool, depLoader); resultCacheInSeconds = @@ -361,7 +364,6 @@ public void createInterpreter(String interpreterGroupId, String sessionId, Strin interpreter.setInterpreterGroup(interpreterGroup); interpreter.setUserName(userName); - interpreter.setZeppelinConfiguration(zConf); interpreterGroup.addInterpreterToSession(new LazyOpenInterpreter(interpreter), sessionId); @@ -484,7 +486,7 @@ public void reconnect(String host, int port) throws InterpreterRPCException, TEx this.intpEventServerHost = host; this.intpEventServerPort = port; intpEventClient = new RemoteInterpreterEventClient(intpEventServerHost, intpEventServerPort, - this.zConf.getInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_CONNECTION_POOL_SIZE)); + Integer.parseInt(zProperties.getProperty("zeppelin.interpreter.connection.poolsize", "100"))); intpEventClient.setIntpGroupId(interpreterGroupId); this.angularObjectRegistry = new AngularObjectRegistry(interpreterGroup.getId(), intpEventClient); diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java index e3213467fc9..a4178704b59 100644 --- a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java +++ b/zeppelin-interpreter/src/main/java/org/apache/zeppelin/scheduler/SchedulerFactory.java @@ -17,7 +17,6 @@ package org.apache.zeppelin.scheduler; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.util.ExecutorUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,12 +49,23 @@ public static SchedulerFactory singleton() { } private SchedulerFactory() { - int threadPoolSize = ZeppelinConfiguration - .getStaticInt(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_SCHEDULER_POOL_SIZE); + int threadPoolSize = getSchedulerPoolSize(); LOGGER.info("Scheduler Thread Pool Size: {}", threadPoolSize); executor = ExecutorFactory.singleton().createOrGet(SCHEDULER_EXECUTOR_NAME, threadPoolSize); } + private static int getSchedulerPoolSize() { + String envValue = System.getenv("ZEPPELIN_INTERPRETER_SCHEDULER_POOL_SIZE"); + if (envValue != null) { + return Integer.parseInt(envValue); + } + String propValue = System.getProperty("zeppelin.scheduler.threadpool.size"); + if (propValue != null) { + return Integer.parseInt(propValue); + } + return 100; + } + public void destroy() { LOGGER.info("Destroy all executors"); synchronized (schedulers) { diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java deleted file mode 100644 index 55c68d48a29..00000000000 --- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/conf/ZeppelinConfigurationTest.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.zeppelin.conf; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertThrows; - -import java.time.format.DateTimeParseException; - -import org.junit.jupiter.api.Test; - -class ZeppelinConfigurationTest { - - @Test - void testTimeUnitToMill() { - assertEquals(10L, ZeppelinConfiguration.timeUnitToMill("10ms")); - assertEquals(2000L, ZeppelinConfiguration.timeUnitToMill("2s")); - assertEquals(60000L, ZeppelinConfiguration.timeUnitToMill("1m")); - assertEquals(3600000L, ZeppelinConfiguration.timeUnitToMill("1h")); - } - - @Test - void testTimeUnitToMill_WithoutUnit_1() { - assertThrows(DateTimeParseException.class, () -> { - ZeppelinConfiguration.timeUnitToMill("60000"); - }); - } - - @Test - void testTimeUnitToMill_WithoutUnit_2() { - assertThrows(DateTimeParseException.class, () -> { - ZeppelinConfiguration.timeUnitToMill("0"); - }); - } -} diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java index a2619db3085..7ea565d5284 100644 --- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java +++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/BooterTest.java @@ -17,7 +17,6 @@ package org.apache.zeppelin.dep; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.eclipse.aether.repository.RemoteRepository; import org.junit.jupiter.api.Test; @@ -56,8 +55,8 @@ void should_throw_exception_for_null() { @Test void getInterpreterMvnRepoPathTest() { - ZeppelinConfiguration zConf = ZeppelinConfiguration.load("zeppelin-site-test.xml"); - List remoteRepositories = Booter.newCentralRepositorys(null, zConf); + String mvnRepoUrl = "https://repo1.maven.org/maven2/,https://repo2.maven.org/maven2/"; + List remoteRepositories = Booter.newCentralRepositorys(null, mvnRepoUrl); assertNotNull(remoteRepositories); assertEquals(2, remoteRepositories.size()); assertEquals("https://repo1.maven.org/maven2/", remoteRepositories.get(0).getUrl()); diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java index f51b683a75d..1a41ab4858a 100644 --- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java +++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/dep/DependencyResolverTest.java @@ -18,7 +18,6 @@ package org.apache.zeppelin.dep; import org.apache.commons.io.FileUtils; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.eclipse.aether.RepositoryException; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; @@ -45,7 +44,7 @@ static void setUp() throws Exception { System.currentTimeMillis()); testPath = tmpDir.getAbsolutePath() + "/test-repo"; testCopyPath = new File(tmpDir, "test-copy-repo"); - resolver = new DependencyResolver(testPath, ZeppelinConfiguration.load()); + resolver = new DependencyResolver(testPath, null, null, null, null); } @AfterAll diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java index 3344a38338f..39b392eb4aa 100644 --- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java +++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/helium/ApplicationLoaderTest.java @@ -18,7 +18,6 @@ package org.apache.zeppelin.helium; import org.apache.commons.io.FileUtils; -import org.apache.zeppelin.conf.ZeppelinConfiguration; import org.apache.zeppelin.dep.DependencyResolver; import org.apache.zeppelin.interpreter.InterpreterOutput; import org.apache.zeppelin.resource.LocalResourcePool; @@ -54,7 +53,7 @@ void loadUnloadApplication() throws Exception { // given LocalResourcePool resourcePool = new LocalResourcePool("pool1"); DependencyResolver dep = - new DependencyResolver(tmpDir.getAbsolutePath(), ZeppelinConfiguration.load()); + new DependencyResolver(tmpDir.getAbsolutePath(), null, null, null, null); ApplicationLoader appLoader = new ApplicationLoader(resourcePool, dep); HeliumPackage pkg1 = createPackageInfo(MockApplication1.class.getName(), "artifact1"); diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java index c1700cdef1b..58ef866a744 100644 --- a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java +++ b/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreterServerTest.java @@ -82,7 +82,7 @@ private void startRemoteInterpreterServer(RemoteInterpreterServer server, int ti server.getPort())); server.init(new HashMap<>()); - assertNotNull(server.getConf()); + assertNotNull(server.getProperties()); assertNotNull(server.getLifecycleManager()); } diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java b/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java index a845bf869a1..d1f330b993c 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/service/InterpreterService.java @@ -71,7 +71,13 @@ public void installInterpreter( String interpreterBaseDir = zConf.getInterpreterDir(); String localRepoPath = zConf.getInterpreterLocalRepoPath(); - final DependencyResolver dependencyResolver = new DependencyResolver(localRepoPath, zConf); + final DependencyResolver dependencyResolver = new DependencyResolver( + localRepoPath, + zConf.getZeppelinProxyUrl(), + zConf.getZeppelinProxyUser(), + zConf.getZeppelinProxyPassword(), + zConf.getString( + ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO)); // TODO(jl): Make a rule between an interpreter name and an installation directory List possibleInterpreterDirectories = new ArrayList<>(); diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java index a73c2563d48..d7a89f30abb 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/service/InterpreterServiceTest.java @@ -102,7 +102,7 @@ void downloadInterpreter() throws IOException { Path specificInterpreterPath = Files.createDirectory(Paths.get(interpreterDir.toString(), interpreterName)); DependencyResolver dependencyResolver = - new DependencyResolver(localRepoDir.toString(), ZeppelinConfiguration.load()); + new DependencyResolver(localRepoDir.toString(), null, null, null, null); doNothing().when(mockInterpreterSettingManager).refreshInterpreterTemplates(); diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinLocationStrategy.java diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java index 2adaa55a42b..f26bc54f0e7 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSetting.java @@ -197,7 +197,7 @@ public Builder setDependencies(List dependencies) { public Builder setConf(ZeppelinConfiguration zConf) { interpreterSetting.zConf = zConf; - interpreterSetting.option.setConf(zConf); + interpreterSetting.option.setUsernameForceLowerCase(zConf.isUsernameForceLowerCase()); return this; } @@ -664,7 +664,7 @@ public ZeppelinConfiguration getConf() { public InterpreterSetting setConf(ZeppelinConfiguration zConf) { this.zConf = zConf; - this.option.setConf(zConf); + this.option.setUsernameForceLowerCase(zConf.isUsernameForceLowerCase()); return this; } diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java index 1f25479aa98..e2959382206 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java @@ -178,7 +178,10 @@ public InterpreterSettingManager(ZeppelinConfiguration zConf, this.interpreterDirPath = Paths.get(zConf.getInterpreterDir()); LOGGER.debug("InterpreterRootPath: {}", interpreterDirPath); this.dependencyResolver = - new DependencyResolver(zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_LOCALREPO), zConf); + new DependencyResolver(zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_LOCALREPO), + zConf.getZeppelinProxyUrl(), zConf.getZeppelinProxyUser(), + zConf.getZeppelinProxyPassword(), + zConf.getString(ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO)); this.interpreterRepositories = new ArrayList<>(); for (RemoteRepository repo : dependencyResolver.getRepos()) { this.interpreterRepositories.add(Repository.fromRemoteRepository(repo)); diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java index 4c9a3ae3cd7..3038e01452e 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/install/InstallInterpreter.java @@ -163,7 +163,8 @@ public void install(String name, String artifact) { proxy = new Proxy(proxyUrl.getProtocol(), proxyUrl.getHost(), proxyUrl.getPort(), auth); } DependencyResolver depResolver = - new DependencyResolver(localRepoDir, proxy, zConf); + new DependencyResolver(localRepoDir, proxy, + zConf.getString(ZeppelinConfiguration.ConfVars.ZEPPELIN_INTERPRETER_DEP_MVNREPO)); File installDir = new File(interpreterBaseDir, name); if (installDir.exists()) { diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterClient.java diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLaunchContext.java diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncher.java diff --git a/zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java similarity index 100% rename from zeppelin-interpreter/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java rename to zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/recovery/RecoveryStorage.java diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java index 859e4e2ddcb..6bd2e202325 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/remote/RemoteInterpreter.java @@ -77,7 +77,6 @@ public RemoteInterpreter(Properties properties, this.sessionId = sessionId; this.className = className; this.setUserName(userName); - this.setZeppelinConfiguration(zConf); } public boolean isOpened() { diff --git a/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java index f7df6715d55..7d4051687bf 100644 --- a/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java +++ b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/InterpreterSettingTest.java @@ -577,7 +577,7 @@ void testLoadDependency() throws InterruptedException { .setGroup("group") .setOption(interpreterOption) .setIntepreterSettingManager(interpreterSettingManager) - .setDependencyResolver(new DependencyResolver("/tmp", zConf)) + .setDependencyResolver(new DependencyResolver("/tmp", null, null, null, null)) .setConf(zConf) .create(); diff --git a/zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java b/zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java similarity index 100% rename from zeppelin-interpreter/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java rename to zeppelin-zengine/src/test/java/org/apache/zeppelin/interpreter/launcher/InterpreterLauncherTest.java