lordk911 commented on issue #8790:
URL: 
https://github.com/apache/dolphinscheduler/issues/8790#issuecomment-1072203221


   > > there is another scenario : one process with one task,the task have 4 
versions. so the table t_ds_process_task_relation_log will have 4 record, wich 
is : 
![企业微信截图_5101b10a-9c05-4b49-a565-b18f3317fa32](https://user-images.githubusercontent.com/19989300/158942198-ad91117a-3fe2-4783-b6ee-b0a88572b132.png)
   > > and table t_ds_process_task_relation has one record :
   > > 
![image](https://user-images.githubusercontent.com/19989300/158942312-428a0888-da8d-4bcd-a541-42c8cc6ea3b5.png)
   > > in version 2.0.0 edit this process is ok, because 
ProcessService.genDagData method read from t_ds_process_task_relation , but in 
2.0.5 ProcessService.genDagData read from t_ds_process_task_relation_log , so 
when to save the process there well be 4 record pass to 
ProcessService.transformTask method, which will cause Duplicate key error. 
@caishunfeng
   > 
   > I can't reproduce this duplicate key error on the bugfix pr.
   
   what I say is that : there is already some data in database as what I show, 
if I was a user of dolphin 2.0.0 , after I upgrage to 2.0.5 , as this scenario. 
the process could not be edited. because when I go into the process edit page , 
the data send to web ui is diffrent between 2.0.0 and 2.0.5 , they read 
diffrent metabase table, 2.0.5 will throw  Duplicate key error when going to 
ProcessService.transformTask method as line 2516, because 2.0.5 will send all 
versions of task_define infomation to web and then pass to api-server when 
click 'save'


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to