This is an automated email from the ASF dual-hosted git repository.
zhongjiajie pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new 08a4c7981f [improve] Remove the spark version of spark task (#11860)
08a4c7981f is described below
commit 08a4c7981fcfdbdf2f363bc0b790d92077c94441
Author: rickchengx <[email protected]>
AuthorDate: Wed Sep 21 20:27:28 2022 +0800
[improve] Remove the spark version of spark task (#11860)
---
.../cluster-test/mysql/dolphinscheduler_env.sh | 5 +-
.../postgresql/dolphinscheduler_env.sh | 5 +-
deploy/kubernetes/dolphinscheduler/values.yaml | 3 +-
docs/docs/en/architecture/configuration.md | 5 +-
docs/docs/en/architecture/task-structure.md | 32 +++++----
docs/docs/en/faq.md | 2 +-
docs/docs/en/guide/expansion-reduction.md | 5 +-
docs/docs/en/guide/installation/kubernetes.md | 51 ++------------
docs/docs/en/guide/installation/pseudo-cluster.md | 5 +-
docs/docs/en/guide/task/spark.md | 1 -
docs/docs/en/guide/upgrade/incompatible.md | 2 +
docs/docs/zh/architecture/configuration.md | 5 +-
docs/docs/zh/architecture/task-structure.md | 32 +++++----
docs/docs/zh/faq.md | 2 +-
docs/docs/zh/guide/expansion-reduction.md | 5 +-
docs/docs/zh/guide/installation/kubernetes.md | 51 ++------------
docs/docs/zh/guide/installation/pseudo-cluster.md | 5 +-
docs/docs/zh/guide/task/spark.md | 1 -
docs/docs/zh/guide/upgrade/incompatible.md | 2 +
.../api/service/EnvironmentServiceTest.java | 5 +-
.../common/enums/SparkVersion.java | 49 --------------
.../dao/mapper/ClusterMapperTest.java | 25 ++++---
.../dao/mapper/EnvironmentMapperTest.java | 25 ++++---
.../pydolphinscheduler/UPDATING.md | 1 +
.../examples/yaml_define/Spark.yaml | 1 -
.../src/pydolphinscheduler/tasks/spark.py | 10 ---
.../pydolphinscheduler/tests/tasks/test_spark.py | 3 +-
.../dataquality/spark/SparkParameters.java | 13 ----
.../plugin/task/dq/DataQualityTask.java | 34 ++++++----
.../plugin/task/spark/SparkCommand.java | 65 ------------------
.../plugin/task/spark/SparkConstants.java | 10 +++
.../plugin/task/spark/SparkParameters.java | 13 ----
.../plugin/task/spark/SparkTask.java | 29 ++++----
.../plugin/task/spark/SparkVersion.java | 22 -------
.../plugin/task/spark/SparkTaskTest.java | 77 +++++-----------------
dolphinscheduler-ui/src/locales/en_US/project.ts | 1 -
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 1 -
.../task/components/node/fields/use-spark.ts | 18 -----
.../projects/task/components/node/format-data.ts | 1 -
.../task/components/node/tasks/use-spark.ts | 1 -
.../views/projects/task/components/node/types.ts | 1 -
script/env/dolphinscheduler_env.sh | 5 +-
42 files changed, 151 insertions(+), 478 deletions(-)
diff --git a/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
b/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
index 458fb9d5b2..bb2d54e693 100755
--- a/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
+++ b/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
@@ -37,11 +37,10 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-zo
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
diff --git a/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
b/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
index cc9364e31d..085676f82f 100644
--- a/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
+++ b/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
@@ -37,11 +37,10 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-zo
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
diff --git a/deploy/kubernetes/dolphinscheduler/values.yaml
b/deploy/kubernetes/dolphinscheduler/values.yaml
index 16780e168a..1929a153a2 100644
--- a/deploy/kubernetes/dolphinscheduler/values.yaml
+++ b/deploy/kubernetes/dolphinscheduler/values.yaml
@@ -160,8 +160,7 @@ common:
# dolphinscheduler env
HADOOP_HOME: "/opt/soft/hadoop"
HADOOP_CONF_DIR: "/opt/soft/hadoop/etc/hadoop"
- SPARK_HOME1: "/opt/soft/spark1"
- SPARK_HOME2: "/opt/soft/spark2"
+ SPARK_HOME: "/opt/soft/spark"
PYTHON_HOME: "/usr/bin/python"
JAVA_HOME: "/usr/local/openjdk-8"
HIVE_HOME: "/opt/soft/hive"
diff --git a/docs/docs/en/architecture/configuration.md
b/docs/docs/en/architecture/configuration.md
index 6bf156fa66..45d7341277 100644
--- a/docs/docs/en/architecture/configuration.md
+++ b/docs/docs/en/architecture/configuration.md
@@ -347,14 +347,13 @@ export JAVA_HOME=${JAVA_HOME:-/opt/soft/java}
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
```
### Log related configuration
diff --git a/docs/docs/en/architecture/task-structure.md
b/docs/docs/en/architecture/task-structure.md
index 73042e3dcc..dc0b9d520a 100644
--- a/docs/docs/en/architecture/task-structure.md
+++ b/docs/docs/en/architecture/task-structure.md
@@ -256,21 +256,20 @@ No.|parameter name||type|description |note
| 13 | | executorMemory | String | executor memory
|
| 14 | | executorCores | String | executor cores
|
| 15 | | programType | String | program type
| JAVA,SCALA,PYTHON |
-| 16 | | sparkVersion | String | Spark version
| SPARK1 , SPARK2 |
-| 17 | | localParams | Array | customized local
parameters |
-| 18 | | resourceList | Array | resource files
|
-| 19 | description | | String | description
| |
-| 20 | runFlag | | String | execution flag
| |
-| 21 | conditionResult | | Object | condition branch
| |
-| 22 | | successNode | Array | jump to node if
success | |
-| 23 | | failedNode | Array | jump to node if
failure |
-| 24 | dependence | | Object | task dependency
| mutual exclusion with params |
-| 25 | maxRetryTimes | | String | max retry times
| |
-| 26 | retryInterval | | String | retry interval
| |
-| 27 | timeout | | Object | timeout
| |
-| 28 | taskInstancePriority | | String | task priority
| |
-| 29 | workerGroup | | String | Worker group
| |
-| 30 | preTasks | | Array | preposition tasks
| |
+| 16 | | localParams | Array | customized local
parameters |
+| 17 | | resourceList | Array | resource files
|
+| 18 | description | | String | description
| |
+| 19 | runFlag | | String | execution flag
| |
+| 20 | conditionResult | | Object | condition branch
| |
+| 21 | | successNode | Array | jump to node if
success | |
+| 22 | | failedNode | Array | jump to node if
failure |
+| 23 | dependence | | Object | task dependency
| mutual exclusion with params |
+| 24 | maxRetryTimes | | String | max retry times
| |
+| 25 | retryInterval | | String | retry interval
| |
+| 26 | timeout | | Object | timeout
| |
+| 27 | taskInstancePriority | | String | task priority
| |
+| 28 | workerGroup | | String | Worker group
| |
+| 29 | preTasks | | Array | preposition tasks
| |
**Node data example:**
@@ -302,8 +301,7 @@ No.|parameter name||type|description |note
"executorCores":2,
"mainArgs":"10",
"others":"",
- "programType":"SCALA",
- "sparkVersion":"SPARK2"
+ "programType":"SCALA"
},
"description":"",
"runFlag":"NORMAL",
diff --git a/docs/docs/en/faq.md b/docs/docs/en/faq.md
index 5981f47cf3..60d642723c 100644
--- a/docs/docs/en/faq.md
+++ b/docs/docs/en/faq.md
@@ -229,7 +229,7 @@ export PYTHON_HOME=/bin/python
Note: This is **PYTHON_HOME** , which is the absolute path of the python
command, not the simple PYTHON_HOME. Also note that when exporting the PATH,
you need to directly
```
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
```
2,For versions prior to 1.0.3, the Python task only supports
the Python version of the system. It does not support specifying the Python
version.
diff --git a/docs/docs/en/guide/expansion-reduction.md
b/docs/docs/en/guide/expansion-reduction.md
index c58a85e9e2..f453699d14 100644
--- a/docs/docs/en/guide/expansion-reduction.md
+++ b/docs/docs/en/guide/expansion-reduction.md
@@ -79,14 +79,13 @@ Attention:
```shell
export HADOOP_HOME=/opt/soft/hadoop
export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop
- # export SPARK_HOME1=/opt/soft/spark1
- export SPARK_HOME2=/opt/soft/spark2
+ export SPARK_HOME=/opt/soft/spark
export PYTHON_HOME=/opt/soft/python
export JAVA_HOME=/opt/soft/jav
export HIVE_HOME=/opt/soft/hive
export FLINK_HOME=/opt/soft/flink
export DATAX_HOME=/opt/soft/datax/bin/datax.py
- export
PATH=$HADOOP_HOME/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
+ export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
```
diff --git a/docs/docs/en/guide/installation/kubernetes.md
b/docs/docs/en/guide/installation/kubernetes.md
index d93a243c0d..8671e65a4e 100644
--- a/docs/docs/en/guide/installation/kubernetes.md
+++ b/docs/docs/en/guide/installation/kubernetes.md
@@ -360,7 +360,7 @@ kubectl cp -n test spark-2.4.7-bin-hadoop2.7.tgz
dolphinscheduler-worker-0:/opt/
Because the volume `sharedStoragePersistence` is mounted on `/opt/soft`, all
files in `/opt/soft` will not be lost.
-5. Attach the container and ensure that `SPARK_HOME2` exists.
+5. Attach the container and ensure that `SPARK_HOME` exists.
```bash
kubectl exec -it dolphinscheduler-worker-0 bash
@@ -369,7 +369,7 @@ cd /opt/soft
tar zxf spark-2.4.7-bin-hadoop2.7.tgz
rm -f spark-2.4.7-bin-hadoop2.7.tgz
ln -s spark-2.4.7-bin-hadoop2.7 spark2 # or just mv
-$SPARK_HOME2/bin/spark-submit --version
+$SPARK_HOME/bin/spark-submit --version
```
The last command will print the Spark version if everything goes well.
@@ -377,7 +377,7 @@ The last command will print the Spark version if everything
goes well.
6. Verify Spark under a Shell task.
```
-$SPARK_HOME2/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME2/examples/jars/spark-examples_2.11-2.4.7.jar
+$SPARK_HOME/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME/examples/jars/spark-examples_2.11-2.4.7.jar
```
Check whether the task log contains the output like `Pi is roughly 3.146015`.
@@ -386,7 +386,6 @@ Check whether the task log contains the output like `Pi is
roughly 3.146015`.
The file `spark-examples_2.11-2.4.7.jar` needs to be uploaded to the resources
first, and then create a Spark task with:
-- Spark Version: `SPARK2`
- Main Class: `org.apache.spark.examples.SparkPi`
- Main Package: `spark-examples_2.11-2.4.7.jar`
- Deploy Mode: `local`
@@ -399,47 +398,6 @@ Spark on YARN (Deploy Mode is `cluster` or `client`)
requires Hadoop support. Si
Ensure that `$HADOOP_HOME` and `$HADOOP_CONF_DIR` exists.
-### How to Support Spark 3?
-
-In fact, the way to submit applications with `spark-submit` is the same,
regardless of Spark 1, 2 or 3. In other words, the semantics of `SPARK_HOME2`
is the second `SPARK_HOME` instead of `SPARK2`'s `HOME`, so just set
`SPARK_HOME2=/path/to/spark3`.
-
-Take Spark 3.1.1 as an example:
-
-1. Download the Spark 3.1.1 release binary `spark-3.1.1-bin-hadoop2.7.tgz`.
-
-2. Ensure that `common.sharedStoragePersistence.enabled` is turned on.
-
-3. Run a DolphinScheduler release in Kubernetes (See **Install
DolphinScheduler**).
-
-4. Copy the Spark 3.1.1 release binary into the Docker container.
-
-```bash
-kubectl cp spark-3.1.1-bin-hadoop2.7.tgz dolphinscheduler-worker-0:/opt/soft
-kubectl cp -n test spark-3.1.1-bin-hadoop2.7.tgz
dolphinscheduler-worker-0:/opt/soft # with test namespace
-```
-
-5. Attach the container and ensure that `SPARK_HOME2` exists.
-
-```bash
-kubectl exec -it dolphinscheduler-worker-0 bash
-kubectl exec -n test -it dolphinscheduler-worker-0 bash # with test namespace
-cd /opt/soft
-tar zxf spark-3.1.1-bin-hadoop2.7.tgz
-rm -f spark-3.1.1-bin-hadoop2.7.tgz
-ln -s spark-3.1.1-bin-hadoop2.7 spark2 # or just mv
-$SPARK_HOME2/bin/spark-submit --version
-```
-
-The last command will print the Spark version if everything goes well.
-
-6. Verify Spark under a Shell task.
-
-```
-$SPARK_HOME2/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME2/examples/jars/spark-examples_2.12-3.1.1.jar
-```
-
-Check whether the task log contains the output like `Pi is roughly 3.146015`.
-
### How to Support Shared Storage Between Master, Worker and Api Server?
For example, Master, Worker and API server may use Hadoop at the same time.
@@ -579,8 +537,7 @@ common:
| `common.configmap.SW_GRPC_LOG_SERVER_PORT` | Set
grpc log server port for skywalking
| `11800`
|
| `common.configmap.HADOOP_HOME` | Set
`HADOOP_HOME` for DolphinScheduler's task environment
| `/opt/soft/hadoop`
|
| `common.configmap.HADOOP_CONF_DIR` | Set
`HADOOP_CONF_DIR` for DolphinScheduler's task environment
| `/opt/soft/hadoop/etc/hadoop`
|
-| `common.configmap.SPARK_HOME1` | Set
`SPARK_HOME1` for DolphinScheduler's task environment
| `/opt/soft/spark1`
|
-| `common.configmap.SPARK_HOME2` | Set
`SPARK_HOME2` for DolphinScheduler's task environment
| `/opt/soft/spark2`
|
+| `common.configmap.SPARK_HOME` | Set
`SPARK_HOME` for DolphinScheduler's task environment
| `/opt/soft/spark`
|
| `common.configmap.PYTHON_HOME` | Set
`PYTHON_HOME` for DolphinScheduler's task environment
| `/usr/bin/python`
|
| `common.configmap.JAVA_HOME` | Set
`JAVA_HOME` for DolphinScheduler's task environment
| `/usr/local/openjdk-8`
|
| `common.configmap.HIVE_HOME` | Set
`HIVE_HOME` for DolphinScheduler's task environment
| `/opt/soft/hive`
|
diff --git a/docs/docs/en/guide/installation/pseudo-cluster.md
b/docs/docs/en/guide/installation/pseudo-cluster.md
index 23fbe341d2..4bd063f329 100644
--- a/docs/docs/en/guide/installation/pseudo-cluster.md
+++ b/docs/docs/en/guide/installation/pseudo-cluster.md
@@ -131,14 +131,13 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-lo
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
```
## Initialize the Database
diff --git a/docs/docs/en/guide/task/spark.md b/docs/docs/en/guide/task/spark.md
index a791192dfa..76d3a7cb5c 100644
--- a/docs/docs/en/guide/task/spark.md
+++ b/docs/docs/en/guide/task/spark.md
@@ -20,7 +20,6 @@ Spark task type for executing Spark application. When
executing the Spark task,
| **Parameter** |
**Description**
|
|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
| Program type | Supports Java, Scala, Python, and SQL.
|
-| Spark version | Support Spark1 and Spark2.
|
| The class of main function | The **full path** of Main Class, the entry
point of the Spark program.
|
| Main jar package | The Spark jar package (upload by Resource
Center).
|
| SQL scripts | SQL statements in .sql files that Spark sql
runs.
|
diff --git a/docs/docs/en/guide/upgrade/incompatible.md
b/docs/docs/en/guide/upgrade/incompatible.md
index fcdd7dd199..e17ae2f132 100644
--- a/docs/docs/en/guide/upgrade/incompatible.md
+++ b/docs/docs/en/guide/upgrade/incompatible.md
@@ -4,6 +4,8 @@ This document records the incompatible updates between each
version. You need to
## dev
+* Remove the spark version of spark task
([#11860](https://github.com/apache/dolphinscheduler/pull/11860)).
+
## 3.0.0
* Copy and import workflow without 'copy' suffix
[#10607](https://github.com/apache/dolphinscheduler/pull/10607)
diff --git a/docs/docs/zh/architecture/configuration.md
b/docs/docs/zh/architecture/configuration.md
index abd39650f9..500f08c9c8 100644
--- a/docs/docs/zh/architecture/configuration.md
+++ b/docs/docs/zh/architecture/configuration.md
@@ -339,14 +339,13 @@ export JAVA_HOME=${JAVA_HOME:-/opt/soft/java}
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
```
## 日志相关配置
diff --git a/docs/docs/zh/architecture/task-structure.md
b/docs/docs/zh/architecture/task-structure.md
index 36ec2537f6..aad8454a19 100644
--- a/docs/docs/zh/architecture/task-structure.md
+++ b/docs/docs/zh/architecture/task-structure.md
@@ -255,21 +255,20 @@
| 13 | | executorMemory | String | executor内存 |
| 14 | | executorCores | String | executor核数 |
| 15 | | programType | String | 程序类型 |
JAVA,SCALA,PYTHON |
-| 16 | | sparkVersion | String | Spark 版本 | SPARK1 ,
SPARK2 |
-| 17 | | localParams | Array | 自定义参数 |
-| 18 | | resourceList | Array | 资源文件 |
-| 19 | description | | String | 描述 |
|
-| 20 | runFlag | | String | 运行标识 |
|
-| 21 | conditionResult | | Object | 条件分支 |
|
-| 22 | | successNode | Array | 成功跳转节点 |
|
-| 23 | | failedNode | Array | 失败跳转节点 |
-| 24 | dependence | | Object | 任务依赖 | 与params互斥
|
-| 25 | maxRetryTimes | | String | 最大重试次数 |
|
-| 26 | retryInterval | | String | 重试间隔 |
|
-| 27 | timeout | | Object | 超时控制 |
|
-| 28 | taskInstancePriority | | String | 任务优先级 |
|
-| 29 | workerGroup | | String | Worker 分组 |
|
-| 30 | preTasks | | Array | 前置任务 |
|
+| 16 | | localParams | Array | 自定义参数 |
+| 17 | | resourceList | Array | 资源文件 |
+| 18 | description | | String | 描述 |
|
+| 19 | runFlag | | String | 运行标识 |
|
+| 20 | conditionResult | | Object | 条件分支 |
|
+| 21 | | successNode | Array | 成功跳转节点 |
|
+| 22 | | failedNode | Array | 失败跳转节点 |
+| 23 | dependence | | Object | 任务依赖 | 与params互斥
|
+| 24 | maxRetryTimes | | String | 最大重试次数 |
|
+| 25 | retryInterval | | String | 重试间隔 |
|
+| 26 | timeout | | Object | 超时控制 |
|
+| 27 | taskInstancePriority | | String | 任务优先级 |
|
+| 28 | workerGroup | | String | Worker 分组 |
|
+| 29 | preTasks | | Array | 前置任务 |
|
**节点数据样例:**
@@ -301,8 +300,7 @@
"executorCores":2,
"mainArgs":"10",
"others":"",
- "programType":"SCALA",
- "sparkVersion":"SPARK2"
+ "programType":"SCALA"
},
"description":"",
"runFlag":"NORMAL",
diff --git a/docs/docs/zh/faq.md b/docs/docs/zh/faq.md
index 3b7c56ab52..0e2aaaca89 100644
--- a/docs/docs/zh/faq.md
+++ b/docs/docs/zh/faq.md
@@ -208,7 +208,7 @@ export PYTHON_HOME=/bin/python
注意:这了 **PYTHON_HOME** ,是 python 命令的绝对路径,而不是单纯的 PYTHON_HOME,还需要注意的是 export PATH
的时候,需要直接
```
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
```
## Q:Worker Task 通过 sudo -u 租户 sh xxx.command 会产生子进程,在 kill 的时候,是否会杀掉
diff --git a/docs/docs/zh/guide/expansion-reduction.md
b/docs/docs/zh/guide/expansion-reduction.md
index 5d3652bae1..bf8a2ab702 100644
--- a/docs/docs/zh/guide/expansion-reduction.md
+++ b/docs/docs/zh/guide/expansion-reduction.md
@@ -79,14 +79,13 @@ sed -i 's/Defaults requirett/#Defaults requirett/g'
/etc/sudoers
```shell
export HADOOP_HOME=/opt/soft/hadoop
export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop
- #export SPARK_HOME1=/opt/soft/spark1
- export SPARK_HOME2=/opt/soft/spark2
+ export SPARK_HOME=/opt/soft/spark
export PYTHON_HOME=/opt/soft/python
export JAVA_HOME=/opt/soft/java
export HIVE_HOME=/opt/soft/hive
export FLINK_HOME=/opt/soft/flink
export DATAX_HOME=/opt/soft/datax/bin/datax.py
- export
PATH=$HADOOP_HOME/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
+ export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
```
diff --git a/docs/docs/zh/guide/installation/kubernetes.md
b/docs/docs/zh/guide/installation/kubernetes.md
index 3de1c51b09..e93cb8db7c 100644
--- a/docs/docs/zh/guide/installation/kubernetes.md
+++ b/docs/docs/zh/guide/installation/kubernetes.md
@@ -360,7 +360,7 @@ kubectl cp -n test spark-2.4.7-bin-hadoop2.7.tgz
dolphinscheduler-worker-0:/opt/
因为存储卷 `sharedStoragePersistence` 被挂载到 `/opt/soft`, 因此 `/opt/soft` 中的所有文件都不会丢失
-5. 登录到容器并确保 `SPARK_HOME2` 存在
+5. 登录到容器并确保 `SPARK_HOME` 存在
```bash
kubectl exec -it dolphinscheduler-worker-0 bash
@@ -369,7 +369,7 @@ cd /opt/soft
tar zxf spark-2.4.7-bin-hadoop2.7.tgz
rm -f spark-2.4.7-bin-hadoop2.7.tgz
ln -s spark-2.4.7-bin-hadoop2.7 spark2 # or just mv
-$SPARK_HOME2/bin/spark-submit --version
+$SPARK_HOME/bin/spark-submit --version
```
如果一切执行正常,最后一条命令将会打印 Spark 版本信息
@@ -377,7 +377,7 @@ $SPARK_HOME2/bin/spark-submit --version
6. 在一个 Shell 任务下验证 Spark
```
-$SPARK_HOME2/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME2/examples/jars/spark-examples_2.11-2.4.7.jar
+$SPARK_HOME/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME/examples/jars/spark-examples_2.11-2.4.7.jar
```
检查任务日志是否包含输出 `Pi is roughly 3.146015`
@@ -386,7 +386,6 @@ $SPARK_HOME2/bin/spark-submit --class
org.apache.spark.examples.SparkPi $SPARK_H
文件 `spark-examples_2.11-2.4.7.jar` 需要先被上传到资源中心,然后创建一个 Spark 任务并设置:
-- Spark版本: `SPARK2`
- 主函数的Class: `org.apache.spark.examples.SparkPi`
- 主程序包: `spark-examples_2.11-2.4.7.jar`
- 部署方式: `local`
@@ -399,47 +398,6 @@ Spark on YARN (部署方式为 `cluster` 或 `client`) 需要 Hadoop 支持. 类
确保 `$HADOOP_HOME` 和 `$HADOOP_CONF_DIR` 存在
-### 如何支持 Spark 3?
-
-事实上,使用 `spark-submit` 提交应用的方式是相同的, 无论是 Spark 1, 2 或 3. 换句话说,`SPARK_HOME2`
的语义是第二个 `SPARK_HOME`, 而非 `SPARK2` 的 `HOME`, 因此只需设置
`SPARK_HOME2=/path/to/spark3` 即可
-
-以 Spark 3.1.1 为例:
-
-1. 下载 Spark 3.1.1 发布的二进制包 `spark-3.1.1-bin-hadoop2.7.tgz`
-
-2. 确保 `common.sharedStoragePersistence.enabled` 开启
-
-3. 部署 dolphinscheduler (详见**安装 dolphinscheduler**)
-
-4. 复制 Spark 3.1.1 二进制包到 Docker 容器中
-
-```bash
-kubectl cp spark-3.1.1-bin-hadoop2.7.tgz dolphinscheduler-worker-0:/opt/soft
-kubectl cp -n test spark-3.1.1-bin-hadoop2.7.tgz
dolphinscheduler-worker-0:/opt/soft # with test namespace
-```
-
-5. 登录到容器并确保 `SPARK_HOME2` 存在
-
-```bash
-kubectl exec -it dolphinscheduler-worker-0 bash
-kubectl exec -n test -it dolphinscheduler-worker-0 bash # with test namespace
-cd /opt/soft
-tar zxf spark-3.1.1-bin-hadoop2.7.tgz
-rm -f spark-3.1.1-bin-hadoop2.7.tgz
-ln -s spark-3.1.1-bin-hadoop2.7 spark2 # or just mv
-$SPARK_HOME2/bin/spark-submit --version
-```
-
-如果一切执行正常,最后一条命令将会打印 Spark 版本信息
-
-6. 在一个 Shell 任务下验证 Spark
-
-```
-$SPARK_HOME2/bin/spark-submit --class org.apache.spark.examples.SparkPi
$SPARK_HOME2/examples/jars/spark-examples_2.12-3.1.1.jar
-```
-
-检查任务日志是否包含输出 `Pi is roughly 3.146015`
-
### 如何在 Master、Worker 和 Api 服务之间支持共享存储?
例如, Master、Worker 和 Api 服务可能同时使用 Hadoop
@@ -579,8 +537,7 @@ common:
| `common.configmap.SW_GRPC_LOG_SERVER_PORT` | Set
grpc log server port for skywalking
| `11800`
|
| `common.configmap.HADOOP_HOME` | Set
`HADOOP_HOME` for DolphinScheduler's task environment
| `/opt/soft/hadoop`
|
| `common.configmap.HADOOP_CONF_DIR` | Set
`HADOOP_CONF_DIR` for DolphinScheduler's task environment
| `/opt/soft/hadoop/etc/hadoop`
|
-| `common.configmap.SPARK_HOME1` | Set
`SPARK_HOME1` for DolphinScheduler's task environment
| `/opt/soft/spark1`
|
-| `common.configmap.SPARK_HOME2` | Set
`SPARK_HOME2` for DolphinScheduler's task environment
| `/opt/soft/spark2`
|
+| `common.configmap.SPARK_HOME` | Set
`SPARK_HOME` for DolphinScheduler's task environment
| `/opt/soft/spark`
|
| `common.configmap.PYTHON_HOME` | Set
`PYTHON_HOME` for DolphinScheduler's task environment
| `/usr/bin/python`
|
| `common.configmap.JAVA_HOME` | Set
`JAVA_HOME` for DolphinScheduler's task environment
| `/usr/local/openjdk-8`
|
| `common.configmap.HIVE_HOME` | Set
`HIVE_HOME` for DolphinScheduler's task environment
| `/opt/soft/hive`
|
diff --git a/docs/docs/zh/guide/installation/pseudo-cluster.md
b/docs/docs/zh/guide/installation/pseudo-cluster.md
index b7917c0b0a..12e0366e19 100644
--- a/docs/docs/zh/guide/installation/pseudo-cluster.md
+++ b/docs/docs/zh/guide/installation/pseudo-cluster.md
@@ -126,14 +126,13 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-lo
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
```
## 初始化数据库
diff --git a/docs/docs/zh/guide/task/spark.md b/docs/docs/zh/guide/task/spark.md
index 590ff5c3ec..80c8ccdfe2 100644
--- a/docs/docs/zh/guide/task/spark.md
+++ b/docs/docs/zh/guide/task/spark.md
@@ -18,7 +18,6 @@ Spark 任务类型用于执行 Spark 应用。对于 Spark 节点,worker 支
- 默认参数说明请参考[DolphinScheduler任务参数附录](appendix.md#默认任务参数)。
- 程序类型:支持 Java、Scala、Python 和 SQL 四种语言。
-- Spark 版本:支持 Spark1 和 Spark2。
- 主函数的 Class:Spark 程序的入口 Main class 的全路径。
- 主程序包:执行 Spark 程序的 jar 包(通过资源中心上传)。
- SQL脚本:Spark sql 运行的 .sql 文件中的 SQL 语句。
diff --git a/docs/docs/zh/guide/upgrade/incompatible.md
b/docs/docs/zh/guide/upgrade/incompatible.md
index 9b154d37f5..59ec1e673e 100644
--- a/docs/docs/zh/guide/upgrade/incompatible.md
+++ b/docs/docs/zh/guide/upgrade/incompatible.md
@@ -4,6 +4,8 @@
## dev
+* Remove the spark version of spark task
([#11860](https://github.com/apache/dolphinscheduler/pull/11860)).
+
## 3.0.0
* Copy and import workflow without 'copy' suffix
[#10607](https://github.com/apache/dolphinscheduler/pull/10607)
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
index ebb47e788d..44aaf72e32 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
@@ -292,8 +292,7 @@ public class EnvironmentServiceTest {
private String getConfig() {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
- + "export SPARK_HOME1=/opt/soft/spark1\n"
- + "export SPARK_HOME2=/opt/soft/spark2\n"
+ + "export SPARK_HOME=/opt/soft/spark\n"
+ "export PYTHON_HOME=/opt/soft/python\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
@@ -301,7 +300,7 @@ public class EnvironmentServiceTest {
+ "export DATAX_HOME=/opt/soft/datax\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/SparkVersion.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/SparkVersion.java
deleted file mode 100644
index 0092b31b77..0000000000
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/SparkVersion.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.dolphinscheduler.common.enums;
-
-import com.baomidou.mybatisplus.annotation.EnumValue;
-
-public enum SparkVersion {
-
- /**
- * 0 SPARK1
- * 1 SPARK2
- * 2 SPARKSQL
- */
- SPARK1(0, "SPARK1"),
- SPARK2(1, "SPARK2"),
- SPARKSQL(2, "SPARKSQL");
-
- SparkVersion(int code, String descp) {
- this.code = code;
- this.descp = descp;
- }
-
- @EnumValue
- private final int code;
- private final String descp;
-
- public int getCode() {
- return code;
- }
-
- public String getDescp() {
- return descp;
- }
-}
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
index 5ade44f625..6e98f4cc1f 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
@@ -43,7 +43,7 @@ public class ClusterMapperTest extends BaseDaoTest {
* @return Cluster
*/
private Cluster insertOne() {
- //insertOne
+ // insertOne
Cluster cluster = new Cluster();
cluster.setName("testCluster");
cluster.setCode(1L);
@@ -77,10 +77,10 @@ public class ClusterMapperTest extends BaseDaoTest {
*/
@Test
public void testUpdate() {
- //insertOne
+ // insertOne
Cluster cluster = insertOne();
cluster.setDescription("new description info");
- //update
+ // update
int update = clusterMapper.updateById(cluster);
Assert.assertEquals(update, 1);
}
@@ -101,7 +101,7 @@ public class ClusterMapperTest extends BaseDaoTest {
@Test
public void testQuery() {
insertOne();
- //query
+ // query
List<Cluster> clusters = clusterMapper.selectList(null);
Assert.assertEquals(clusters.size(), 1);
}
@@ -113,7 +113,7 @@ public class ClusterMapperTest extends BaseDaoTest {
public void testQueryByClusterName() {
Cluster entity = insertOne();
Cluster cluster = clusterMapper.queryByClusterName(entity.getName());
- Assert.assertEquals(entity.toString(),cluster.toString());
+ Assert.assertEquals(entity.toString(), cluster.toString());
}
/**
@@ -123,7 +123,7 @@ public class ClusterMapperTest extends BaseDaoTest {
public void testQueryByClusterCode() {
Cluster entity = insertOne();
Cluster cluster = clusterMapper.queryByClusterCode(entity.getCode());
- Assert.assertEquals(entity.toString(),cluster.toString());
+ Assert.assertEquals(entity.toString(), cluster.toString());
}
/**
@@ -134,7 +134,7 @@ public class ClusterMapperTest extends BaseDaoTest {
Cluster entity = insertOne();
List<Cluster> clusters = clusterMapper.queryAllClusterList();
Assert.assertEquals(clusters.size(), 1);
- Assert.assertEquals(entity.toString(),clusters.get(0).toString());
+ Assert.assertEquals(entity.toString(), clusters.get(0).toString());
}
/**
@@ -144,11 +144,11 @@ public class ClusterMapperTest extends BaseDaoTest {
public void testQueryClusterListPaging() {
Cluster entity = insertOne();
Page<Cluster> page = new Page<>(1, 10);
- IPage<Cluster> clusterIPage =
clusterMapper.queryClusterListPaging(page,"");
+ IPage<Cluster> clusterIPage =
clusterMapper.queryClusterListPaging(page, "");
List<Cluster> clusterList = clusterIPage.getRecords();
Assert.assertEquals(clusterList.size(), 1);
- clusterIPage = clusterMapper.queryClusterListPaging(page,"abc");
+ clusterIPage = clusterMapper.queryClusterListPaging(page, "abc");
clusterList = clusterIPage.getRecords();
Assert.assertEquals(clusterList.size(), 0);
}
@@ -173,8 +173,7 @@ public class ClusterMapperTest extends BaseDaoTest {
private String getConfig() {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
- + "export SPARK_HOME1=/opt/soft/spark1\n"
- + "export SPARK_HOME2=/opt/soft/spark2\n"
+ + "export SPARK_HOME=/opt/soft/spark\n"
+ "export PYTHON_HOME=/opt/soft/python\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
@@ -182,10 +181,10 @@ public class ClusterMapperTest extends BaseDaoTest {
+ "export DATAX_HOME=/opt/soft/datax\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
+ "#echo \"HADOOP_CLASSPATH=\"$HADOOP_CLASSPATH";
}
-}
\ No newline at end of file
+}
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
index 491c6ace2a..236684675d 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
@@ -43,7 +43,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
* @return Environment
*/
private Environment insertOne() {
- //insertOne
+ // insertOne
Environment environment = new Environment();
environment.setName("testEnv");
environment.setCode(1L);
@@ -77,10 +77,10 @@ public class EnvironmentMapperTest extends BaseDaoTest {
*/
@Test
public void testUpdate() {
- //insertOne
+ // insertOne
Environment environment = insertOne();
environment.setDescription("new description info");
- //update
+ // update
int update = environmentMapper.updateById(environment);
Assert.assertEquals(update, 1);
}
@@ -101,7 +101,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
@Test
public void testQuery() {
insertOne();
- //query
+ // query
List<Environment> environments = environmentMapper.selectList(null);
Assert.assertEquals(environments.size(), 1);
}
@@ -113,7 +113,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
public void testQueryByEnvironmentName() {
Environment entity = insertOne();
Environment environment =
environmentMapper.queryByEnvironmentName(entity.getName());
- Assert.assertEquals(entity.toString(),environment.toString());
+ Assert.assertEquals(entity.toString(), environment.toString());
}
/**
@@ -123,7 +123,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
public void testQueryByEnvironmentCode() {
Environment entity = insertOne();
Environment environment =
environmentMapper.queryByEnvironmentCode(entity.getCode());
- Assert.assertEquals(entity.toString(),environment.toString());
+ Assert.assertEquals(entity.toString(), environment.toString());
}
/**
@@ -134,7 +134,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
Environment entity = insertOne();
List<Environment> environments =
environmentMapper.queryAllEnvironmentList();
Assert.assertEquals(environments.size(), 1);
- Assert.assertEquals(entity.toString(),environments.get(0).toString());
+ Assert.assertEquals(entity.toString(), environments.get(0).toString());
}
/**
@@ -144,11 +144,11 @@ public class EnvironmentMapperTest extends BaseDaoTest {
public void testQueryEnvironmentListPaging() {
Environment entity = insertOne();
Page<Environment> page = new Page<>(1, 10);
- IPage<Environment> environmentIPage =
environmentMapper.queryEnvironmentListPaging(page,"");
+ IPage<Environment> environmentIPage =
environmentMapper.queryEnvironmentListPaging(page, "");
List<Environment> environmentList = environmentIPage.getRecords();
Assert.assertEquals(environmentList.size(), 1);
- environmentIPage =
environmentMapper.queryEnvironmentListPaging(page,"abc");
+ environmentIPage = environmentMapper.queryEnvironmentListPaging(page,
"abc");
environmentList = environmentIPage.getRecords();
Assert.assertEquals(environmentList.size(), 0);
}
@@ -173,8 +173,7 @@ public class EnvironmentMapperTest extends BaseDaoTest {
private String getConfig() {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
- + "export SPARK_HOME1=/opt/soft/spark1\n"
- + "export SPARK_HOME2=/opt/soft/spark2\n"
+ + "export SPARK_HOME=/opt/soft/spark\n"
+ "export PYTHON_HOME=/opt/soft/python\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
@@ -182,10 +181,10 @@ public class EnvironmentMapperTest extends BaseDaoTest {
+ "export DATAX_HOME=/opt/soft/datax\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
+ "#echo \"HADOOP_CLASSPATH=\"$HADOOP_CLASSPATH";
}
-}
\ No newline at end of file
+}
diff --git a/dolphinscheduler-python/pydolphinscheduler/UPDATING.md
b/dolphinscheduler-python/pydolphinscheduler/UPDATING.md
index e918b1ec1b..b298c3b1ad 100644
--- a/dolphinscheduler-python/pydolphinscheduler/UPDATING.md
+++ b/dolphinscheduler-python/pydolphinscheduler/UPDATING.md
@@ -25,6 +25,7 @@ It started after version 2.0.5 released
## dev
* Remove parameter ``task_location`` in process definition and Java Gateway
service ([#11681](https://github.com/apache/dolphinscheduler/pull/11681))
+* Remove the spark version of spark task
([#11860](https://github.com/apache/dolphinscheduler/pull/11860)).
## 3.0.0
diff --git
a/dolphinscheduler-python/pydolphinscheduler/examples/yaml_define/Spark.yaml
b/dolphinscheduler-python/pydolphinscheduler/examples/yaml_define/Spark.yaml
index 6132b8d749..e45514bbf1 100644
--- a/dolphinscheduler-python/pydolphinscheduler/examples/yaml_define/Spark.yaml
+++ b/dolphinscheduler-python/pydolphinscheduler/examples/yaml_define/Spark.yaml
@@ -27,4 +27,3 @@ tasks:
main_package: test_java.jar
program_type: SCALA
deploy_mode: local
- spark_version: SPARK1
diff --git
a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/spark.py
b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/spark.py
index 565daad71d..eb9c621043 100644
---
a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/spark.py
+++
b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/spark.py
@@ -23,13 +23,6 @@ from pydolphinscheduler.constants import TaskType
from pydolphinscheduler.core.engine import Engine, ProgramType
-class SparkVersion(str):
- """Spark version, for now it just contain `SPARK1` and `SPARK2`."""
-
- SPARK1 = "SPARK1"
- SPARK2 = "SPARK2"
-
-
class DeployMode(str):
"""SPARK deploy mode, for now it just contain `LOCAL`, `CLIENT` and
`CLUSTER`."""
@@ -43,7 +36,6 @@ class Spark(Engine):
_task_custom_attr = {
"deploy_mode",
- "spark_version",
"driver_cores",
"driver_memory",
"num_executors",
@@ -61,7 +53,6 @@ class Spark(Engine):
main_package: str,
program_type: Optional[ProgramType] = ProgramType.SCALA,
deploy_mode: Optional[DeployMode] = DeployMode.CLUSTER,
- spark_version: Optional[SparkVersion] = SparkVersion.SPARK2,
app_name: Optional[str] = None,
driver_cores: Optional[int] = 1,
driver_memory: Optional[str] = "512M",
@@ -83,7 +74,6 @@ class Spark(Engine):
**kwargs
)
self.deploy_mode = deploy_mode
- self.spark_version = spark_version
self.app_name = app_name
self.driver_cores = driver_cores
self.driver_memory = driver_memory
diff --git
a/dolphinscheduler-python/pydolphinscheduler/tests/tasks/test_spark.py
b/dolphinscheduler-python/pydolphinscheduler/tests/tasks/test_spark.py
index ed83f9f953..1fdb1fa400 100644
--- a/dolphinscheduler-python/pydolphinscheduler/tests/tasks/test_spark.py
+++ b/dolphinscheduler-python/pydolphinscheduler/tests/tasks/test_spark.py
@@ -19,7 +19,7 @@
from unittest.mock import patch
-from pydolphinscheduler.tasks.spark import DeployMode, ProgramType, Spark,
SparkVersion
+from pydolphinscheduler.tasks.spark import DeployMode, ProgramType, Spark
@patch(
@@ -50,7 +50,6 @@ def test_spark_get_define(mock_resource):
},
"programType": program_type,
"deployMode": deploy_mode,
- "sparkVersion": SparkVersion.SPARK2,
"driverCores": 1,
"driverMemory": "512M",
"numExecutors": 2,
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/dataquality/spark/SparkParameters.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/dataquality/spark/SparkParameters.java
index a76e63fae4..7b6fc3f0b5 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/dataquality/spark/SparkParameters.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parameters/dataquality/spark/SparkParameters.java
@@ -95,11 +95,6 @@ public class SparkParameters extends AbstractParameters {
*/
private ProgramType programType;
- /**
- * spark version
- */
- private String sparkVersion;
-
/**
* resource list
*/
@@ -217,14 +212,6 @@ public class SparkParameters extends AbstractParameters {
this.programType = programType;
}
- public String getSparkVersion() {
- return sparkVersion;
- }
-
- public void setSparkVersion(String sparkVersion) {
- this.sparkVersion = sparkVersion;
- }
-
@Override
public boolean checkParameters() {
return mainJar != null && programType != null;
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-dataquality/src/main/java/org/apache/dolphinscheduler/plugin/task/dq/DataQualityTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-dataquality/src/main/java/org/apache/dolphinscheduler/plugin/task/dq/DataQualityTask.java
index 51b402d1d4..f3227ccbbe 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-dataquality/src/main/java/org/apache/dolphinscheduler/plugin/task/dq/DataQualityTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-dataquality/src/main/java/org/apache/dolphinscheduler/plugin/task/dq/DataQualityTask.java
@@ -64,9 +64,9 @@ import java.util.Map;
public class DataQualityTask extends AbstractYarnTask {
/**
- * spark2 command
+ * spark command
*/
- private static final String SPARK2_COMMAND =
"${SPARK_HOME2}/bin/spark-submit";
+ private static final String SPARK_COMMAND =
"${SPARK_HOME}/bin/spark-submit";
private DataQualityParameters dataQualityParameters;
@@ -81,7 +81,8 @@ public class DataQualityTask extends AbstractYarnTask {
public void init() {
logger.info("data quality task params {}",
dqTaskExecutionContext.getTaskParams());
- dataQualityParameters =
JSONUtils.parseObject(dqTaskExecutionContext.getTaskParams(),
DataQualityParameters.class);
+ dataQualityParameters =
+ JSONUtils.parseObject(dqTaskExecutionContext.getTaskParams(),
DataQualityParameters.class);
if (null == dataQualityParameters) {
logger.error("data quality params is null");
@@ -92,15 +93,15 @@ public class DataQualityTask extends AbstractYarnTask {
throw new RuntimeException("data quality task params is not
valid");
}
- Map<String,String> inputParameter =
dataQualityParameters.getRuleInputParameter();
- for (Map.Entry<String,String> entry: inputParameter.entrySet()) {
+ Map<String, String> inputParameter =
dataQualityParameters.getRuleInputParameter();
+ for (Map.Entry<String, String> entry : inputParameter.entrySet()) {
if (entry != null && entry.getValue() != null) {
entry.setValue(entry.getValue().trim());
}
}
- DataQualityTaskExecutionContext dataQualityTaskExecutionContext
- =
dqTaskExecutionContext.getDataQualityTaskExecutionContext();
+ DataQualityTaskExecutionContext dataQualityTaskExecutionContext =
+ dqTaskExecutionContext.getDataQualityTaskExecutionContext();
operateInputParameter(inputParameter, dataQualityTaskExecutionContext);
@@ -114,7 +115,9 @@ public class DataQualityTask extends AbstractYarnTask {
dataQualityParameters
.getSparkParameters()
.setMainArgs("\""
- +
StringUtils.replaceDoubleBrackets(StringUtils.escapeJava(JSONUtils.toJsonString(dataQualityConfiguration)))
+ "\"");
+ + StringUtils.replaceDoubleBrackets(
+
StringUtils.escapeJava(JSONUtils.toJsonString(dataQualityConfiguration)))
+ + "\"");
dataQualityParameters
.getSparkParameters()
@@ -123,7 +126,8 @@ public class DataQualityTask extends AbstractYarnTask {
setMainJarName();
}
- private void operateInputParameter(Map<String, String> inputParameter,
DataQualityTaskExecutionContext dataQualityTaskExecutionContext) {
+ private void operateInputParameter(Map<String, String> inputParameter,
+ DataQualityTaskExecutionContext
dataQualityTaskExecutionContext) {
DateTimeFormatter df =
DateTimeFormatter.ofPattern(YYYY_MM_DD_HH_MM_SS);
LocalDateTime time = LocalDateTime.now();
String now = df.format(time);
@@ -138,11 +142,12 @@ public class DataQualityTask extends AbstractYarnTask {
inputParameter.put(TASK_INSTANCE_ID,
String.valueOf(dqTaskExecutionContext.getTaskInstanceId()));
if (StringUtils.isEmpty(inputParameter.get(DATA_TIME))) {
- inputParameter.put(DATA_TIME,ArgsUtils.wrapperSingleQuotes(now));
+ inputParameter.put(DATA_TIME, ArgsUtils.wrapperSingleQuotes(now));
}
if (StringUtils.isNotEmpty(inputParameter.get(REGEXP_PATTERN))) {
-
inputParameter.put(REGEXP_PATTERN,StringUtils.escapeJava(StringUtils.escapeJava(inputParameter.get(REGEXP_PATTERN))));
+ inputParameter.put(REGEXP_PATTERN,
+
StringUtils.escapeJava(StringUtils.escapeJava(inputParameter.get(REGEXP_PATTERN))));
}
if
(StringUtils.isNotEmpty(dataQualityTaskExecutionContext.getHdfsPath())) {
@@ -152,7 +157,7 @@ public class DataQualityTask extends AbstractYarnTask {
+ UNDERLINE +
dqTaskExecutionContext.getProcessInstanceId()
+ UNDERLINE +
dqTaskExecutionContext.getTaskName());
} else {
- inputParameter.put(ERROR_OUTPUT_PATH,"");
+ inputParameter.put(ERROR_OUTPUT_PATH, "");
}
}
@@ -160,12 +165,13 @@ public class DataQualityTask extends AbstractYarnTask {
protected String buildCommand() {
List<String> args = new ArrayList<>();
- args.add(SPARK2_COMMAND);
+ args.add(SPARK_COMMAND);
args.addAll(SparkArgsUtils.buildArgs(dataQualityParameters.getSparkParameters()));
// replace placeholder
Map<String, Property> paramsMap =
dqTaskExecutionContext.getPrepareParamsMap();
- String command =
ParameterUtils.convertParameterPlaceholders(String.join(" ", args),
ParamUtils.convert(paramsMap));
+ String command =
+ ParameterUtils.convertParameterPlaceholders(String.join(" ",
args), ParamUtils.convert(paramsMap));
logger.info("data quality task command: {}", command);
return command;
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkCommand.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkCommand.java
deleted file mode 100644
index 11609f37f2..0000000000
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkCommand.java
+++ /dev/null
@@ -1,65 +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.dolphinscheduler.plugin.task.spark;
-
-public enum SparkCommand {
-
- /**
- * 0 SPARK1SUBMIT
- * 1 SPARK2SUBMIT
- * 2 SPARK1SQL
- * 3 SPARK2SQL
- */
- SPARK1SUBMIT(0, "SPARK1SUBMIT", "${SPARK_HOME1}/bin/spark-submit",
SparkVersion.SPARK1),
- SPARK2SUBMIT(1, "SPARK2SUBMIT", "${SPARK_HOME2}/bin/spark-submit",
SparkVersion.SPARK2),
-
- SPARK1SQL(2, "SPARK1SQL", "${SPARK_HOME1}/bin/spark-sql",
SparkVersion.SPARK1),
-
- SPARK2SQL(3, "SPARK2SQL", "${SPARK_HOME2}/bin/spark-sql",
SparkVersion.SPARK2);
-
- private final int code;
- private final String descp;
- /**
- * usage: spark-submit [options] <app jar | python file> [app arguments]
- */
- private final String command;
- private final SparkVersion sparkVersion;
-
- SparkCommand(int code, String descp, String command, SparkVersion
sparkVersion) {
- this.code = code;
- this.descp = descp;
- this.command = command;
- this.sparkVersion = sparkVersion;
- }
-
- public int getCode() {
- return code;
- }
-
- public String getDescp() {
- return descp;
- }
-
- public String getCommand() {
- return command;
- }
-
- public SparkVersion getSparkVersion() {
- return sparkVersion;
- }
-}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkConstants.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkConstants.java
index 1dacddbf83..0ca069ca34 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkConstants.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkConstants.java
@@ -79,4 +79,14 @@ public class SparkConstants {
*/
public static final String SQL_FROM_FILE = "-f";
+ /**
+ * spark submit command for sql
+ */
+ public static final String SPARK_SQL_COMMAND =
"${SPARK_HOME}/bin/spark-sql";
+
+ /**
+ * spark submit command
+ */
+ public static final String SPARK_SUBMIT_COMMAND =
"${SPARK_HOME}/bin/spark-submit";
+
}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkParameters.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkParameters.java
index 78aed34af1..2532c978b9 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkParameters.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkParameters.java
@@ -95,11 +95,6 @@ public class SparkParameters extends AbstractParameters {
*/
private ProgramType programType;
- /**
- * spark version
- */
- private String sparkVersion;
-
/**
* spark sql script
*/
@@ -222,14 +217,6 @@ public class SparkParameters extends AbstractParameters {
this.programType = programType;
}
- public String getSparkVersion() {
- return sparkVersion;
- }
-
- public void setSparkVersion(String sparkVersion) {
- this.sparkVersion = sparkVersion;
- }
-
public String getRawScript() {
return rawScript;
}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTask.java
index 2e40ecf696..958f703432 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTask.java
@@ -97,20 +97,13 @@ public class SparkTask extends AbstractYarnTask {
*/
List<String> args = new ArrayList<>();
- // spark version
- String sparkCommand = SparkCommand.SPARK2SUBMIT.getCommand();
-
- // If the programType is non-SQL, execute bin/spark-submit
- if
(SparkCommand.SPARK1SUBMIT.getSparkVersion().name().equals(sparkParameters.getSparkVersion()))
{
- sparkCommand = SparkCommand.SPARK1SUBMIT.getCommand();
- }
-
+ String sparkCommand;
// If the programType is SQL, execute bin/spark-sql
if (sparkParameters.getProgramType() == ProgramType.SQL) {
- sparkCommand = SparkCommand.SPARK2SQL.getCommand();
- if
(SparkCommand.SPARK1SQL.getSparkVersion().name().equals(sparkParameters.getSparkVersion()))
{
- sparkCommand = SparkCommand.SPARK1SQL.getCommand();
- }
+ sparkCommand = SparkConstants.SPARK_SQL_COMMAND;
+ } else {
+ // If the programType is non-SQL, execute bin/spark-submit
+ sparkCommand = SparkConstants.SPARK_SUBMIT_COMMAND;
}
args.add(sparkCommand);
@@ -121,7 +114,8 @@ public class SparkTask extends AbstractYarnTask {
// replace placeholder, and combining local and global parameters
Map<String, Property> paramsMap =
taskExecutionContext.getPrepareParamsMap();
- String command =
ParameterUtils.convertParameterPlaceholders(String.join(" ", args),
ParamUtils.convert(paramsMap));
+ String command =
+ ParameterUtils.convertParameterPlaceholders(String.join(" ",
args), ParamUtils.convert(paramsMap));
logger.info("spark task command: {}", command);
@@ -137,7 +131,8 @@ public class SparkTask extends AbstractYarnTask {
List<String> args = new ArrayList<>();
args.add(SparkConstants.MASTER);
- String deployMode =
StringUtils.isNotEmpty(sparkParameters.getDeployMode()) ?
sparkParameters.getDeployMode() : SparkConstants.DEPLOY_MODE_LOCAL;
+ String deployMode =
StringUtils.isNotEmpty(sparkParameters.getDeployMode()) ?
sparkParameters.getDeployMode()
+ : SparkConstants.DEPLOY_MODE_LOCAL;
if (!SparkConstants.DEPLOY_MODE_LOCAL.equals(deployMode)) {
args.add(SparkConstants.SPARK_ON_YARN);
args.add(SparkConstants.DEPLOY_MODE);
@@ -160,7 +155,8 @@ public class SparkTask extends AbstractYarnTask {
}
String others = sparkParameters.getOthers();
- if (!SparkConstants.DEPLOY_MODE_LOCAL.equals(deployMode) &&
(StringUtils.isEmpty(others) || !others.contains(SparkConstants.SPARK_QUEUE))) {
+ if (!SparkConstants.DEPLOY_MODE_LOCAL.equals(deployMode)
+ && (StringUtils.isEmpty(others) ||
!others.contains(SparkConstants.SPARK_QUEUE))) {
String queue = sparkParameters.getQueue();
if (StringUtils.isNotEmpty(queue)) {
args.add(SparkConstants.SPARK_QUEUE);
@@ -224,7 +220,8 @@ public class SparkTask extends AbstractYarnTask {
}
private String generateScriptFile() {
- String scriptFileName = String.format("%s/%s_node.sql",
taskExecutionContext.getExecutePath(), taskExecutionContext.getTaskAppId());
+ String scriptFileName = String.format("%s/%s_node.sql",
taskExecutionContext.getExecutePath(),
+ taskExecutionContext.getTaskAppId());
File file = new File(scriptFileName);
Path path = file.toPath();
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkVersion.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkVersion.java
deleted file mode 100644
index baafafe2e4..0000000000
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/main/java/org/apache/dolphinscheduler/plugin/task/spark/SparkVersion.java
+++ /dev/null
@@ -1,22 +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.dolphinscheduler.plugin.task.spark;
-
-public enum SparkVersion {
- SPARK1, SPARK2
-}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/test/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTaskTest.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/test/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTaskTest.java
index 4edd28fd1e..7adb24bfc1 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/test/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTaskTest.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-spark/src/test/java/org/apache/dolphinscheduler/plugin/task/spark/SparkTaskTest.java
@@ -17,12 +17,15 @@
package org.apache.dolphinscheduler.plugin.task.spark;
-import java.util.Collections;
+import static org.powermock.api.mockito.PowerMockito.spy;
+import static org.powermock.api.mockito.PowerMockito.when;
import org.apache.dolphinscheduler.plugin.task.api.TaskExecutionContext;
import org.apache.dolphinscheduler.plugin.task.api.model.ResourceInfo;
import org.apache.dolphinscheduler.spi.utils.JSONUtils;
+import java.util.Collections;
+
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -31,20 +34,17 @@ import
org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
-import static org.powermock.api.mockito.PowerMockito.spy;
-import static org.powermock.api.mockito.PowerMockito.when;
-
@RunWith(PowerMockRunner.class)
@PrepareForTest({
- JSONUtils.class
+ JSONUtils.class
})
@PowerMockIgnore({"javax.*"})
public class SparkTaskTest {
@Test
- public void testBuildCommandWithSpark2Sql() throws Exception {
- String parameters = buildSparkParametersWithSparkSql(ProgramType.SQL,
"SPARK2");
+ public void testBuildCommandWithSparkSql() throws Exception {
+ String parameters = buildSparkParametersWithSparkSql();
TaskExecutionContext taskExecutionContext =
PowerMockito.mock(TaskExecutionContext.class);
when(taskExecutionContext.getTaskParams()).thenReturn(parameters);
when(taskExecutionContext.getExecutePath()).thenReturn("/tmp");
@@ -53,28 +53,7 @@ public class SparkTaskTest {
SparkTask sparkTask = spy(new SparkTask(taskExecutionContext));
sparkTask.init();
Assert.assertEquals(sparkTask.buildCommand(),
- "${SPARK_HOME2}/bin/spark-sql " +
- "--master yarn " +
- "--deploy-mode client " +
- "--driver-cores 1 " +
- "--driver-memory 512M " +
- "--num-executors 2 " +
- "--executor-cores 2 " +
- "--executor-memory 1G " +
- "--name sparksql " +
- "-f /tmp/5536_node.sql");
- }
- @Test
- public void testBuildCommandWithSpark1Sql() throws Exception {
- String parameters = buildSparkParametersWithSparkSql(ProgramType.SQL,
"SPARK1");
- TaskExecutionContext taskExecutionContext =
PowerMockito.mock(TaskExecutionContext.class);
- when(taskExecutionContext.getTaskParams()).thenReturn(parameters);
- when(taskExecutionContext.getExecutePath()).thenReturn("/tmp");
- when(taskExecutionContext.getTaskAppId()).thenReturn("5536");
- SparkTask sparkTask = spy(new SparkTask(taskExecutionContext));
- sparkTask.init();
- Assert.assertEquals(sparkTask.buildCommand(),
- "${SPARK_HOME1}/bin/spark-sql " +
+ "${SPARK_HOME}/bin/spark-sql " +
"--master yarn " +
"--deploy-mode client " +
"--driver-cores 1 " +
@@ -87,30 +66,8 @@ public class SparkTaskTest {
}
@Test
- public void testBuildCommandWithSpark2Submit() throws Exception {
- String parameters =
buildSparkParametersWithSparkSubmit(ProgramType.SCALA, "SPARK2");
- TaskExecutionContext taskExecutionContext =
PowerMockito.mock(TaskExecutionContext.class);
- when(taskExecutionContext.getTaskParams()).thenReturn(parameters);
- when(taskExecutionContext.getExecutePath()).thenReturn("/tmp");
- when(taskExecutionContext.getTaskAppId()).thenReturn("5536");
- SparkTask sparkTask = spy(new SparkTask(taskExecutionContext));
- sparkTask.init();
- Assert.assertEquals(sparkTask.buildCommand(),
- "${SPARK_HOME2}/bin/spark-submit " +
- "--master yarn " +
- "--deploy-mode client " +
- "--class
org.apache.dolphinscheduler.plugin.task.spark.SparkTaskTest " +
- "--driver-cores 1 " +
- "--driver-memory 512M " +
- "--num-executors 2 " +
- "--executor-cores 2 " +
- "--executor-memory 1G " +
- "--name spark " +
- "lib/dolphinscheduler-task-spark.jar");
- }
- @Test
- public void testBuildCommandWithSpark1Submit() throws Exception {
- String parameters =
buildSparkParametersWithSparkSubmit(ProgramType.SCALA, "SPARK1");
+ public void testBuildCommandWithSparkSubmit() {
+ String parameters = buildSparkParametersWithSparkSubmit();
TaskExecutionContext taskExecutionContext =
PowerMockito.mock(TaskExecutionContext.class);
when(taskExecutionContext.getTaskParams()).thenReturn(parameters);
when(taskExecutionContext.getExecutePath()).thenReturn("/tmp");
@@ -118,7 +75,7 @@ public class SparkTaskTest {
SparkTask sparkTask = spy(new SparkTask(taskExecutionContext));
sparkTask.init();
Assert.assertEquals(sparkTask.buildCommand(),
- "${SPARK_HOME1}/bin/spark-submit " +
+ "${SPARK_HOME}/bin/spark-submit " +
"--master yarn " +
"--deploy-mode client " +
"--class
org.apache.dolphinscheduler.plugin.task.spark.SparkTaskTest " +
@@ -130,16 +87,16 @@ public class SparkTaskTest {
"--name spark " +
"lib/dolphinscheduler-task-spark.jar");
}
- private String buildSparkParametersWithSparkSql(ProgramType programType,
String sparkVersion) {
+
+ private String buildSparkParametersWithSparkSql() {
SparkParameters sparkParameters = new SparkParameters();
sparkParameters.setLocalParams(Collections.emptyList());
sparkParameters.setRawScript("selcet 11111;");
- sparkParameters.setProgramType(programType);
+ sparkParameters.setProgramType(ProgramType.SQL);
sparkParameters.setMainClass("");
sparkParameters.setDeployMode("client");
sparkParameters.setAppName("sparksql");
sparkParameters.setOthers("");
- sparkParameters.setSparkVersion(sparkVersion);
sparkParameters.setDriverCores(1);
sparkParameters.setDriverMemory("512M");
sparkParameters.setNumExecutors(2);
@@ -147,15 +104,15 @@ public class SparkTaskTest {
sparkParameters.setExecutorCores(2);
return JSONUtils.toJsonString(sparkParameters);
}
- private String buildSparkParametersWithSparkSubmit(ProgramType
programType, String sparkVersion) {
+
+ private String buildSparkParametersWithSparkSubmit() {
SparkParameters sparkParameters = new SparkParameters();
sparkParameters.setLocalParams(Collections.emptyList());
- sparkParameters.setProgramType(programType);
+ sparkParameters.setProgramType(ProgramType.SCALA);
sparkParameters.setMainClass("org.apache.dolphinscheduler.plugin.task.spark.SparkTaskTest");
sparkParameters.setDeployMode("client");
sparkParameters.setAppName("spark");
sparkParameters.setOthers("");
- sparkParameters.setSparkVersion(sparkVersion);
sparkParameters.setDriverCores(1);
sparkParameters.setDriverMemory("512M");
sparkParameters.setNumExecutors(2);
diff --git a/dolphinscheduler-ui/src/locales/en_US/project.ts
b/dolphinscheduler-ui/src/locales/en_US/project.ts
index 6d73a7ef21..1cd99025fa 100644
--- a/dolphinscheduler-ui/src/locales/en_US/project.ts
+++ b/dolphinscheduler-ui/src/locales/en_US/project.ts
@@ -400,7 +400,6 @@ export default {
value_required_tips: 'value(required)',
pre_tasks: 'Pre tasks',
program_type: 'Program Type',
- spark_version: 'Spark Version',
main_class: 'Main Class',
main_class_tips: 'Please enter main class',
main_package: 'Main Package',
diff --git a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
index cce292ec6e..d99fdf275f 100644
--- a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
+++ b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
@@ -396,7 +396,6 @@ export default {
value_required_tips: 'value(必填)',
pre_tasks: '前置任务',
program_type: '程序类型',
- spark_version: 'Spark版本',
main_class: '主函数的Class',
main_class_tips: '请填写主函数的Class',
main_package: '主程序包',
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-spark.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-spark.ts
index 89ac7800d7..de100d770e 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-spark.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-spark.ts
@@ -55,13 +55,6 @@ export function useSpark(model: { [field: string]: any }):
IJsonItem[] {
}
}
},
- {
- type: 'select',
- field: 'sparkVersion',
- span: 12,
- name: t('project.node.spark_version'),
- options: SPARK_VERSIONS
- },
{
type: 'input',
field: 'mainClass',
@@ -152,14 +145,3 @@ export const PROGRAM_TYPES = [
value: 'SQL'
}
]
-
-export const SPARK_VERSIONS = [
- {
- label: 'SPARK2',
- value: 'SPARK2'
- },
- {
- label: 'SPARK1',
- value: 'SPARK1'
- }
-]
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
index 554107aac1..8e49c49980 100644
--- a/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
+++ b/dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts
@@ -62,7 +62,6 @@ export function formatParams(data: INodeData): {
}
if (data.taskType === 'SPARK') {
- taskParams.sparkVersion = data.sparkVersion
taskParams.driverCores = data.driverCores
taskParams.driverMemory = data.driverMemory
taskParams.numExecutors = data.numExecutors
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
index 9d508805fc..9a1d0aa1df 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-spark.ts
@@ -44,7 +44,6 @@ export function useSpark({
delayTime: 0,
timeout: 30,
programType: 'SCALA',
- sparkVersion: 'SPARK2',
rawScript: '',
deployMode: 'local',
driverCores: 1,
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
index 2d3451da08..88b4076f0a 100644
--- a/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
+++ b/dolphinscheduler-ui/src/views/projects/task/components/node/types.ts
@@ -229,7 +229,6 @@ interface ITaskParams {
rawScript?: string
initScript?: string
programType?: string
- sparkVersion?: string
flinkVersion?: string
jobManagerMemory?: string
taskManagerMemory?: string
diff --git a/script/env/dolphinscheduler_env.sh
b/script/env/dolphinscheduler_env.sh
index 5ce29f3678..c7e3878ac7 100755
--- a/script/env/dolphinscheduler_env.sh
+++ b/script/env/dolphinscheduler_env.sh
@@ -24,8 +24,7 @@ export JAVA_HOME=${JAVA_HOME:-/opt/soft/java}
# Tasks related configurations, need to change the configuration if you use
the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
-export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
-export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
+export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
@@ -33,4 +32,4 @@ export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
export SEATUNNEL_HOME=${SEATUNNEL_HOME:-/opt/soft/seatunnel}
export CHUNJUN_HOME=${CHUNJUN_HOME:-/opt/soft/chunjun}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$SEATUNNEL_HOME/bin:$CHUNJUN_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$SEATUNNEL_HOME/bin:$CHUNJUN_HOME/bin:$PATH