Skip to content

Commit c818556

Browse files
committed
Add pakages to R
1 parent 165f52f commit c818556

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

R/pkg/R/client.R

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ connectBackend <- function(hostname, port, timeout = 6000) {
3434
con
3535
}
3636

37-
launchBackend <- function(args, sparkHome, jars, sparkSubmitOpts) {
37+
launchBackend <- function(args, sparkHome, jars, sparkSubmitOpts, packages) {
3838
if (.Platform$OS.type == "unix") {
3939
sparkSubmitBinName = "spark-submit"
4040
} else {
@@ -51,7 +51,11 @@ launchBackend <- function(args, sparkHome, jars, sparkSubmitOpts) {
5151
jars <- paste("--jars", jars)
5252
}
5353

54-
combinedArgs <- paste(jars, sparkSubmitOpts, args, sep = " ")
54+
if (packages != "") {
55+
packages <- paste("--packages", packages)
56+
}
57+
58+
combinedArgs <- paste(jars, packages, sparkSubmitOpts, args, sep = " ")
5559
cat("Launching java with spark-submit command", sparkSubmitBin, combinedArgs, "\n")
5660
invisible(system2(sparkSubmitBin, combinedArgs, wait = F))
5761
}

R/pkg/R/sparkR.R

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ sparkR.stop <- function() {
8181
#' @param sparkExecutorEnv Named list of environment variables to be used when launching executors.
8282
#' @param sparkJars Character string vector of jar files to pass to the worker nodes.
8383
#' @param sparkRLibDir The path where R is installed on the worker nodes.
84+
#' @param sparkPackages Character string vector of packages
8485
#' @export
8586
#' @examples
8687
#'\dontrun{
@@ -100,7 +101,8 @@ sparkR.init <- function(
100101
sparkEnvir = list(),
101102
sparkExecutorEnv = list(),
102103
sparkJars = "",
103-
sparkRLibDir = "") {
104+
sparkRLibDir = "",
105+
sparkPackages="") {
104106

105107
if (exists(".sparkRjsc", envir = .sparkREnv)) {
106108
cat("Re-using existing Spark Context. Please stop SparkR with sparkR.stop() or restart R to create a new Spark Context\n")
@@ -129,7 +131,8 @@ sparkR.init <- function(
129131
args = path,
130132
sparkHome = sparkHome,
131133
jars = jars,
132-
sparkSubmitOpts = Sys.getenv("SPARKR_SUBMIT_ARGS", "sparkr-shell"))
134+
sparkSubmitOpts = Sys.getenv("SPARKR_SUBMIT_ARGS", "sparkr-shell"),
135+
sparkPackages = sparkPackages)
133136
# wait atmost 100 seconds for JVM to launch
134137
wait <- 0.1
135138
for (i in 1:25) {

0 commit comments

Comments
 (0)