-
Notifications
You must be signed in to change notification settings - Fork 530
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[INLONG-11401][Manager] Support Dolphinscheduler schedule engine #11468
Conversation
bd7fb5d
to
6bf84a2
Compare
55c7d24
to
b0b99c4
Compare
Nice work! |
Yes, natively, only Crontab expressions are accepted for task scheduling. And i also check DS related implements, their underlying implementation were similar to inlong's built-in engine, uses quartz for scheduling,the difference is that DS only use |
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...ava/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleContainerTestEnv.java
Outdated
Show resolved
Hide resolved
inlong-manager/manager-web/src/main/resources/application-dev.properties
Outdated
Show resolved
Hide resolved
inlong-manager/manager-web/src/main/resources/application-dev.properties
Show resolved
Hide resolved
inlong-manager/manager-web/src/main/resources/application-prod.properties
Outdated
Show resolved
Hide resolved
inlong-manager/manager-web/src/main/resources/application-test.properties
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
...src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleEngine.java
Outdated
Show resolved
Hide resolved
be574d1
be574d1
to
44da2e2
Compare
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Outdated
Show resolved
Hide resolved
...ule/src/main/java/org/apache/inlong/manager/schedule/exception/DolphinScheduleException.java
Show resolved
Hide resolved
5aec945
to
dafbafe
Compare
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
.../src/main/java/org/apache/inlong/manager/schedule/dolphinscheduler/DolphinScheduleUtils.java
Show resolved
Hide resolved
e5ded2e
Fixes #11401
Motivation
dolphinscheduler
package inorg.apache.inlong.manager.schedule
Modifications
Because DS officially does not provide SDK to call, only provides openAPI call mode, so all scheduling behavior is based on open-api requests
Provides some disaster recovery logic
ConcurrentHashMap
to store schedule data ensure thread safety during start, running or stopHow to use
inlong manager
performs dependency injection at startup via the @value annotation.start()
or.stop()
to manage DS engineVerifying this change
How is the token generated?
DS url
for example:
http://{ip}:{port}/dolphinscheduler
testRegisterScheduleInfo
the callback request was successfully sent to inlong, and the related tasks are processed in flink
log info:
log info:
(Please pick either of the following options)
This change is a trivial rework/code cleanup without any test coverage.
This change is already covered by existing tests, such as:
(please describe tests)
This change added tests and can be verified as follows:
(example:)
Documentation