Commit Graph

199 Commits

Author SHA1 Message Date
Rick Cheng
5a6f1c88a3
[Fix-14503][Worker] Fix the problem of subprocess cannot be killed (#14504)
Co-authored-by: xiangzihao <460888207@qq.com>
2023-07-17 21:43:34 +08:00
Wenjun Ruan
0246327083
Polish config, expose rpc config in application.yml (#14501) 2023-07-11 09:29:31 +08:00
Wenjun Ruan
406aeaf659
Use jvm_args_env.sh to set JVM args (#14487) 2023-07-10 17:39:57 +08:00
Eric Gao
e86630bb7b
[Improvement][Metrics] Add more worker related metrics and fix some previous ones (#14254)
* Add more worker related metrics and fix some previous ones

* update metrics docs
2023-06-01 16:54:48 +08:00
Rick Cheng
428f1559a3
[Improv-14083][Resource Center] Handle deleteSource in OSS / S3 / GCS (#14084) 2023-05-22 20:44:43 +08:00
Wenjun Ruan
05df0269f6
Fix task exception might not exist in task instance log (#14085) 2023-05-21 09:55:35 +08:00
Aaron Wang
74ed7856bc
[Bug-14105][Task] Replace default tenant when downloading resource (#14106) 2023-05-16 18:11:58 +08:00
Aaron Wang
1e3ae7b942
[improv][Resource Center] Implement getResourceFileName in StorageOperator (#14097) 2023-05-15 14:02:30 +08:00
Rick Cheng
3eb4c0ed1d
[Improvement-14054][Worker] Kill multiple yarn apps at the same time (#14055)
* [Improvement-14054][Worker] Kill multiple yarn apps at the same time

* Update dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/am/YarnApplicationManager.java

Co-authored-by: Aaron Wang <wangweirao16@gmail.com>
2023-05-06 19:13:12 +08:00
Wenjun Ruan
cf91544b99
Refactor logic task (#13948) 2023-04-26 10:01:51 +08:00
klaokai
f6e0f2e471
[Bug] [worker] WorkerConfig output is wrong (#14000) (#14001) 2023-04-24 19:04:34 +08:00
Aaron Wang
731123cebc
[Bug][Worker] get worker status bug (#13992)
* get worker status bug

* modify configuration name
2023-04-24 09:51:47 +08:00
Aaron Wang
45586f71d5
[BUG][Resource Center] Task can not select main JAR (#13536) 2023-04-18 18:38:16 +08:00
Wenjun Ruan
61a689aa5a
Use percentage to represent memory/cpu usage (#13896) 2023-04-13 15:48:20 +08:00
Rick Cheng
7ee66f2d02
[Feature-13429][Remote Logging] Add support for writing task logs to Google Cloud Storage (#13777) 2023-04-06 17:49:33 +08:00
Wenjun Ruan
41a8ba9aab
Support alert server HA (#13865)
* Support alert server cluster

* Remove WORKER_ALERT_LISTEN_HOST in statefulset-dolphinscheduler-worker.yaml
2023-04-05 17:31:50 +08:00
Aaron Wang
d6fcf60534
[Improvement-13751][Worker] Support real-time pod log collection (#13752)
* Support real-time pod log collection

* datax task test have to mock ShellCommandExecutor with whole dependencies

* replace \n with EMPTY_STRING

* modify error log msg

* Update dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/AbstractCommandExecutor.java

Co-authored-by: caishunfeng <caishunfeng2021@gmail.com>

* throw exception in pod log collection thread

---------

Co-authored-by: caishunfeng <caishunfeng2021@gmail.com>
2023-04-05 16:13:45 +08:00
Wenjun Ruan
64833952fc
Remove the extra default tenant in workflow save page (#13867) 2023-04-04 17:14:40 +08:00
Wenjun Ruan
9df89cf0cf
Use bootstrap user as the default tenant (#13825) 2023-03-30 14:11:23 +08:00
Wenjun Ruan
68660ec96b
Refactor remote command (#13809)
* Refactor remote command

* Rename Command to Message
2023-03-29 17:54:57 +08:00
Wenjun Ruan
d1b6e6f02c
Take over task instance in master failover (#13798) 2023-03-28 16:02:57 +08:00
Wenjun Ruan
1f365819a6
Ignore unknown VM options in start.sh (#13719) 2023-03-10 17:34:09 +08:00
Wenjun Ruan
aef5524ee7
Clearer task runnable. (#13689)
* Clean unused method in AbstractTask

* Kill task by process.destroy

* wait 5/s after destroy process
2023-03-09 20:46:29 +08:00
Wenjun Ruan
c9066e8de9
Use MDC to filter task instance log (#13673)
* Use MDC to collect task instance log
* Use MDCAutoClosableContext to remove the MDC key
2023-03-06 17:44:23 +08:00
Wenjun Ruan
ca9df868f1
Fix task instance log order might be wrong due to async print (#13660) 2023-03-02 22:37:05 +08:00
fuchanghai
7bf3e3cdd6
[improve-#13201] update pid during running (#13206) 2023-02-22 14:22:49 +08:00
Aaron Wang
047fa2f65e
[Feature-13511] Submit Spark task directly on Kubernetes (#13550) 2023-02-21 23:26:21 +08:00
Rick Cheng
2bd65fb2df
[Feature][Remote Logging] Add support for writing task logs to OSS (#13332) 2023-02-13 16:38:26 +08:00
seedscoder
8d12dc0702
[Improvement-13491] Use lombok @Slf4j annotation to generate logger (#13509) 2023-02-07 20:32:53 +08:00
Wenjun Ruan
45694aa697
Fix MessageSender may be null due to class initialize late (#13446) 2023-01-28 20:53:32 +08:00
hokie-chan
3b980cb06a
[fix][worker][bug] master/worker crash when registry recover from SUSPENDED to RECONNECTED (#13328) 2023-01-03 19:24:11 +08:00
Aaron Wang
ccad56e88e
[Improvement][Master] Validate same content of input file when using task cache (#13298)
* support file content checksum

* fix inject null storageOperate bug
2023-01-03 11:38:13 +08:00
Wenjun Ruan
14ec4a2398
Remove dao module in worker (#13242) 2022-12-22 12:25:29 +08:00
Wenjun Ruan
70ccffeee2
Format task parameter as pretty json (#13173) 2022-12-13 16:30:21 +08:00
Yann Ann
6ef74073cc
[Improve-13001]migrate commons-collections -> commons-collections4 (#13002) 2022-12-10 23:50:19 +08:00
Wenjun Ruan
ffc9fb280a
Add gc timestampt (#13059) 2022-12-01 10:00:27 +08:00
Wenjun Ruan
32a8241ef2
Don't source env file in task, this will override tenant's environment (#13028) 2022-11-28 21:09:50 +08:00
Yann Ann
3106054ea7
[Improvement-12907] Change heartbeat log level to debug (#12980) 2022-11-25 17:37:30 +08:00
rickchengx
38b876733c
[Feature-10498] Mask the password in the log of sqoop task (#11589) 2022-11-24 14:54:54 +08:00
John Bampton
27c37b8828
Fix grammar and spelling (#12937) 2022-11-18 23:03:34 +08:00
Kerwin
401fb4edd4
Fix execute shell task exception no dolphinscheduler_env.sh file execute permission (#12909) 2022-11-17 21:43:35 +08:00
Wenjun Ruan
403c6a6bb6
Fix memory leak in worker due to message retry map (#12878) 2022-11-13 20:08:38 +08:00
JieguangZhou
a47b4d0672
[Feature][Task] Transfer files between tasks (#12552)
* add data transfer between tasks

* add delete DATA_TRANSFER API

* convert Result to DeleteDataTransferResponse

* add api UT

* fix final

* fix doc
2022-11-03 16:33:39 +08:00
Aaron Wang
08335b1032
[Improvement][Task] Improved way to collect yarn job's appIds (#12197)
* Provide aop way as an optional way to collect yarn job's applicationId, and import new module `dolphinscheduler-aop` to place the aop code.
* Add user property `appId.collect` for user to decide how to collect applicationId.
* Add new environment configuration for each type of yarn tasks to support aop in `dolphinscheduler_env.sh`
* Update docs to declare how to use aop way.
* Update `LogUtils` to support fetch applicationId in different ways based on the user property.

Co-authored-by: gabrywu <gabrywu@apache.com>
2022-10-31 16:52:53 +08:00
kezhenxu94
065d5caccc
Only expose necessary actuator endpoints (#12571) 2022-10-28 07:40:32 +08:00
HanayoZz
489e7fe4e2
[Feature-10495][Resource Center] Resource Center Refactor (#12076)
* resource center refactor - S3 services connection

Co-authored-by: caishunfeng <caishunfeng2021@gmail.com>
2022-10-26 13:53:44 +08:00
Wenjun Ruan
76a9e6d8a6
Add task executor threads full policy config in worker (#12510) 2022-10-26 10:29:22 +08:00
Wenjun Ruan
a0d37fc7ae
Set tenantDir permission (#12486) 2022-10-23 21:54:01 +08:00
caishunfeng
dedff70f90
[Improvement] Merge spi.utils into common.utils (#12502)
* improve JSONUtil

* merge spi.utils into common.utils

* split constants && remove some copy utils method

* remove StringUtils
2022-10-23 21:23:54 +08:00
fuchanghai
f0a34cddec
[improvement-#12416] Use CollectionUtils.isEmpty judge the collection isEmpty to avoid NPE (#12449) 2022-10-20 14:26:56 +08:00
Eric Gao
d46e4659d9
[Improvement][Style] Fix remaining style errors and wildcard imports (#12412)
* Fix remaining style errors and wildcard imports

* Upgrade spotless to the latest stable version, exclude .github folder from spotless check and fix dead link

* Fix spotless matching scope of markdown files
2022-10-19 11:08:04 +08:00
kezhenxu94
4ea7eec750
Use temurin Java docker images instead of deprecated ones (#12334) 2022-10-17 15:46:21 +08:00
Yann Ann
bc80f34056
[Migrate][Test] Migrate all UT cases from jUnit 4 to 5 in master, worker, and remote modules (#12362)
* migrate junit4 -> junit5 in master, worker, and remote modules
2022-10-15 21:58:31 +08:00
Eric Gao
2f37da0dbc
[Improvement][Test] Block the usage of powermock and move mockito dependencies from sub-modules to root pom (#12311)
* move mockito dependencies from sub-modules to root pom

* Add check in CI to block the usage of powermock
2022-10-14 12:06:51 +08:00
kezhenxu94
db1d319159
Reorganize some classes in common module, remove duplicate classes (#12321) 2022-10-13 10:23:27 +08:00
Eric Gao
9ab79e064c
[Improvement][Test] Fully remove the usage of powermock from the whole project (#12244)
* Fully remove the usage of powermock from the whole project

* Upgrade org.reflections to 0.10.12
2022-10-10 10:43:38 +08:00
Yann Ann
c87f6d89a4
[fix#12195] Change date to timestamp to support cross diff time zones (#12239)
* fix DS support cross time zone, use timestamp replace date
2022-10-01 12:50:42 +08:00
caishunfeng
40090d459e
[Improvement] remove log-server and server module (#12206)
* remove log-server module

* remove dolphinscheduler-server module
2022-09-30 16:41:41 +08:00
Wenjun Ruan
aacabc6ec7
Remove workerGroup in registry (#12217) 2022-09-30 13:58:53 +08:00
sgw
962fa6dbd5
[DS-12154][worker] Optimize the log printing of the worker module (#12183)
* [DS-12154][worker] Optimize the log printing of the worker module according to the log specification.
2022-09-29 16:01:29 +08:00
insist777
5b384f3fab
[Feature-11473][Task]Support test task (#11670)
* [improve] support test tasks

* [improve] support test tasks

* [improve] support test tasks

* [improve] support test tasks

* [improve] support test tasks

* Update TaskExecuteThread.java

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* try solve e2e q

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* Update DataSource.java

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* Update messages_zh_CN.properties

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* Update messages.properties

* Update messages_en_US.properties

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks

* [Feature] support test tasks
2022-09-17 13:40:56 +08:00
Wenjun Ruan
d3a77c68e6
Make LogServiceClient Singleton (#11777) 2022-09-14 16:18:08 +08:00
Daniel Y
009cb68011
[Improvement-11834] Upgrade docker base image to support python3.9 (#11835)
* use openjdk:8-jre-slim-bullseye instead of buster to support python3.9

* use openjdk:8-jre-slim-bullseye instead of buster across all components
2022-09-14 09:29:45 +08:00
limaiwang
25b78a8003
[Bug] [spark-sql] In spark-sql, select both SPARK1 and SPARK2 versions and execute ${SPARK_HOME2}/bin/spark-sql (#11721)
select different versions of spark-sql to execute different versions of spark-sql
2022-09-12 10:35:27 +08:00
LiuBodong
3ca9680b20
[Fix][Monitor]Monitor UI not show DisakAvailable and MemoryUsage correctly (#11870) 2022-09-11 19:11:03 +08:00
caishunfeng
2e61c76c22
[Improvement] Add remote task model (#11767) 2022-09-08 13:41:36 +08:00
Kengo Seki
444c7e6eb7
[Improvement] Replace commons-lang 2 function invocations with commons-lang3 (#11810)
* [Improvement] Replace commons-lang 2 function invocations with commons-lang3
2022-09-07 13:48:09 +08:00
冯剑
45ebd528d6
[Bug-11650][worker] #11650 fix SQL type task, stop task cause NPE (#11668) 2022-09-06 10:12:40 +08:00
kezhenxu94
277f137358
Add Kubernetes configmap reload to all components (#11730) 2022-09-02 12:03:19 +08:00
Wenjun Ruan
67e7f88d8b
Refactor heart beat task, use json to serialize/deserialize (#11702)
* Refactor heart beat task, use json to serialize/deserialize
2022-08-31 16:20:23 +08:00
Wenjun Ruan
03e1e6fe45
[Bug] [Worker] Optimize the getAppId method to avoid worker OOM when kill task (#11701)
* Fix kill job may cause worker oom
2022-08-31 15:25:01 +08:00
Wenjun Ruan
1b120e3a59
Refactor worker execute task process (#11540)
* Refactor worker execute task process
2022-08-26 13:33:51 +08:00
JinYong Li
3f2ca7bca3
[Fix-9980] [Server] fix heartBeatTaskCount bug (#11232)
* fix heartBeat bug

* modify class name

* fix conflict

Co-authored-by: JinyLeeChina <jiny.li@foxmail.com>
2022-08-23 11:30:13 +08:00
Wenjun Ruan
3516533017
Remove logger header in task log file (#11555) 2022-08-19 14:01:52 +08:00
Eric Gao
9330d6cfcd
[Doc][Security] Update instructions on worker groups (#11483)
* Update instructions on worker groups
2022-08-15 17:44:00 +08:00
Wenjun Ruan
7ff34c3947
[Feature-7024] Add waiting strategy to support master/worker can recover from registry lost (#11368)
* Add waiting strategy to support master/worker can recover from registry lost

* throw exception when zookeeper registry start failed due to interrupted
2022-08-13 09:52:03 +08:00
caishunfeng
0464123c2b
[Feature-11223] support stream task (#11350)
* add task execute type

* update task definition list paging

* update task instance list paging

* stream task start

* [Feature][UI] Some changes to execute task.
    * Set the connection edge to dashed line.
    * Add FLINK_STREAM task.

* add stream task

* flink savepoint and cancel

* fix query bug

* add stream task definition

* add task instance for stream task

* delete stream task definition state

* update api for stream task definition edit

* modify search for stream task instance

* add language

* delete task type search for stream task definition

* change task type search for stream task instance

* add jump button

* add savepoint

* add down log for stream task instance

* ui test

* stream task start

* run DAG

* [Fix][UI] Fix the stream task edgs not to be dashed when filling back.

* [Feature][UI] Remove some fields for FLINK_STREAM.

* add start modal

* add dryRun column for stream task instance

* fix duration

* fix pon

* fix build error

* Add success tip

* add auto sync for stream task instance

* remove forgien key for task instance

* license header

* UT fix

* modify locales

* recover common config

* fix UT

* add doc

Co-authored-by: Amy <amywang0104@163.com>
Co-authored-by: devosend <devosend@gmail.com>
2022-08-10 21:44:43 +08:00
Wenjun Ruan
8774415197
Split ExecutionStatus to WorkflowExecutionStatus and TaskExecutionStatus (#11340) 2022-08-10 11:00:23 +08:00
Eric Gao
9ca1eb96c4
[Improvement][Metrics] Add metrics for alert server (#11240)
* [Improvement][Metrics] Add metrics for alert server (#11131)

* Update related docs of metrics

* Add grafana demo dashboards for alert server metrics

* Refactor metric classes with UtilityClass annotation

* Refactor meter names in camelCase for checkstyle
2022-08-03 15:42:06 +08:00
xuhhui
bfff3a7c5d
fix error (#11206) 2022-07-30 18:20:20 +08:00
zhuxt2015
3701a24d15
[Improvement][Task Log] Task status log print description instead of code (#11009)
* use execution status instead of status code
2022-07-22 13:34:31 +08:00
Wenjun Ruan
5e9c7dad23
Add dolphinscheduler-bom to manage the dependency version (#11025) 2022-07-20 10:37:31 +08:00
zhuxt2015
a74d7ef665
[hotfix][Worker] Remove service dependency from worker module (#11008)
* worker remove service dependency
2022-07-17 22:16:35 +08:00
Wenjun Ruan
083ab2b5c9
Remove dao in worker (#10994) 2022-07-15 20:07:18 +08:00
Wenjun Ruan
2be1d4bf0a
Fix worker cannot shutdown due to resource close failed or heart beat check failed (#10979)
* Use try-with-resource to close resource, and add heart error threshold to avoid worker cannot close due to heart beat check failed

* Move heartbeat error threshold to applicaiton.yml
2022-07-15 20:06:53 +08:00
Wenjun Ruan
cade66a9b6
[Fix-10827] Fix network error cause worker cannot send message to master (#10886)
* Fix network error cause worker cannot send message to master
2022-07-12 14:08:42 +08:00
Eric Gao
2f7281c2d2
[Feature][Metrics] Add resource download related metrics for workers (#10749)
* [Feature][Metrics] Add resource download related metrics for workers (#9324)

* [Feature][Metrics] Fix bugs and add grafana demos for worker resource download metrics (#9324)

* [Feature][Metrics] Add docs to resource related metrics (#9324)

* [Feature][Metrics] Use tags to indicate status in metrics (#9324)

* [Feature][Metrics] Fix demos, docs and remove redundant code (#9324)

* [Feature][Metrics] Remove .pnpm-debug.log (#9324)

* [Feature][Metrics] Fix style check (#9324)

* [Feature][Metrics] Replace KB with bytes for the unit of resource file size in metrics (#9324)

* [Feature][Metrics] Make code neat (#9324)
2022-07-12 11:44:34 +08:00
Wenjun Ruan
f639a2eed4
[Fix-10854] Fix database restart may lost task instance status (#10866)
* Fix database update error doesn't rollback the task instance status

* Fix database error may cause workflow dead with running status
2022-07-11 09:57:00 +08:00
Wenjun Ruan
426567348e
Remove quartz in service (#10748)
* Remove quartz in service
2022-07-06 15:43:55 +08:00
Wenjun Ruan
67d14fb7b3
[Fix-10785] Fix state event handle error will not retry (#10786)
* Fix state event handle error will not retry

* Use state event handler to deal with the event
2022-07-06 14:53:28 +08:00
WangJPLeo
8f621ff98b
[Optimization] Calculate global parameter and local parameter at master. (#10704)
* Global parameter and local parameter calculation external expansion.

* k8s task ut fix.

* TimePlaceholderUtils import DateUtils fix

* follow the review comments to fix.

* follow the review comments to fix.

* e2e rerun
2022-06-30 22:45:25 +08:00
Wenjun Ruan
35b25da863
Validate master/worker config (#10649) 2022-06-28 20:17:43 +08:00
Wenjun Ruan
66624c5c86
[Bug] [Master] Worker failover will cause task cannot be failover (#10631)
* fix worker failover may lose event
2022-06-28 16:08:35 +08:00
pinkhello
719a9d4532
[Improvement][Worker] fixed naming of rpc package (#10614) 2022-06-26 10:30:09 +08:00
xiangzihao
1111371c9a
add datasource health check to the healthcheck endpoint (#10588) 2022-06-24 13:29:49 +08:00
xiangzihao
0f38217b12
fix_10514 (#10568) 2022-06-23 16:15:08 +08:00
Wenjun Ruan
db595b3eff
Optimize master log, use MDC to inject workflow instance id and task instance id in log (#10516)
* Optimize master log, add workflow instance id and task instance id in log

* Use MDC to set the workflow info in log4j

* Add workflowInstanceId and taskInstanceId in MDC
2022-06-23 11:45:06 +08:00
Eric Gao
cc06eaaf54
[Improvement][Metrics] Apply micrometer naming convention to metrics (#10477)
* Apply micrometer naming convention to worker metrics
* Apply micrometer naming convention all current metrics
* Fix remaining metrics names, update English docs and add Chinese docs
* Fix metrics names in grafana-demo dashboards
2022-06-21 14:27:06 +08:00
Wenjun Ruan
ad2646ff1f
Fix TaskProcessorFactory#getTaskProcessor get common processor is not thread safe (#10479)
* Fix TaskProcessorFactory#getTaskProcessor get common processor is not thread safe
2022-06-16 21:46:18 +08:00
Wenjun Ruan
78c5fcc6ac
Add mysql registry plugin (#10406)
* Add mysql registry plugin
2022-06-13 11:24:42 +08:00