alibaba / DataX

DataX是阿里云DataWorks数据集成的开源版本。
Other
15.86k stars 5.41k forks source link

多个任务同时执行时结束日志不正确 #2095

Open leafCheng1226 opened 6 months ago

leafCheng1226 commented 6 months ago

各位大神好,最近测试发现dataX在运行两个job:比如A是500W数据量的同步任务,B是10W数据量的同步任务。A先开始,但未结束时,B也开始运行了。之后B先结束,开始打印结束人统计信息,没有问题。但当A运行完之后,打印的信息却也是B的。请问这个问题应该如何解决呢? 就是下面这个log: dataxLog

FuYouJ commented 6 months ago

好像datax现在是不支持一个配置里面跑多个任务吧

leafCheng1226 commented 6 months ago

好像datax现在是不支持一个配置里面跑多个任务吧

我是在java项目里面调用的,其实一个配置也是只有一个数据在同步。只不过可能出现多个同步在同一个时间运行了。

ironZr commented 6 months ago

不要线程调用 我去年用的时候也犯了同样的错误 直接启进程跑

leafCheng1226 commented 5 months ago

不要线程调用 我去年用的时候也犯了同样的错误 直接启进程跑

嗯,我们解决了。没有使用进程的办法,是改了一下源码原来的逻辑是会把最新的job id的log贴到其他全部的正在运行的job的log上面去了,改成根据job id去merge log即可。

C-ZhengL commented 5 months ago

不要线程调用 我去年用的时候也犯了同样的错误 直接启进程跑

嗯,我们解决了。没有使用进程的办法,是改了一下源码原来的逻辑是会把最新的job id的log贴到其他全部的正在运行的job的log上面去了,改成根据job id去merge log即可。

怎么解决的呀?我这边同时启动多个任务,或者循环启动多个任务,数据库插件是一个,但是会报脏数据,如果每个任务执行完停了应用程序然后执行下一个任务就正常。

Lifu12 commented 3 months ago

@C-ZhengL 源码中应该是一个统计监控类, image 修改为 image