KaiSong-UK opened a new pull request, #18424:
URL: https://github.com/apache/dolphinscheduler/pull/18424

   ## Description
   
   Fixes #18166: File parameter transfer feature is broken in DolphinScheduler 
3.4.1.
   
   ### Root Cause
   Commit 6f12d1ded9 (PR #17199) removed `TaskFilesTransferUtils.java`, which 
contained the critical `uploadOutputFiles()` and `downloadUpstreamFiles()` 
methods responsible for transferring FILE type parameters between upstream and 
downstream tasks.
   
   ### Changes
   1. **Restored `TaskFilesTransferUtils.java`**: Adapted from the pre-deletion 
version (parent commit 59d5c3e) to work with the current dev branch API, where 
`TaskExecutionContext.varPool` has changed from `String` (JSON) to 
`List<Property>`.
   2. **Restored `downloadUpstreamFiles()` call** in 
`PhysicalTaskExecutor.initializeTaskContext()`: Ensures that IN-type FILE 
parameters from upstream tasks are downloaded before the task executes.
   3. **Added `uploadOutputFiles()` call** in 
`PhysicalTaskExecutor.finalizeTask()`: Ensures that OUT-type FILE parameters 
generated by the task are uploaded to storage before cleanup, making them 
available to downstream tasks.
   
   ### Adaptations for current dev branch
   - `getVarPools()` now returns `List<Property>` directly from 
`taskExecutionContext.getVarPool()` instead of parsing JSON
   - `uploadOutputFiles()` sets varPool as `List<Property>` instead of JSON 
string
   - All imports updated to match current package structure


-- 
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