Confluence will be down for maintenance June 14 2024 at 6AM PT.
Currently it is not possible to rollback jobs without first deleting the working directory. This needs to be fixed.
Related issues:
This would involve the following:
Not thought through.
3 Comments
Tom Glanzman
In item 2., bullet 2, in the second "potential fix", could not one simply use _N, where "N" is the process instance for that particular process as the archive directory name? That is, why use the entire (lengthy) execution instance path where one is only concerned with the instance for that particular process step?
In item 1., is it necessary to create two new directory levels (archive/nnnnn) rather than just one (archive_N)?
Tony Johnson
Using _N where N is the process instance # (large database number) is possible.
Using _N where N is the execution number (1,2,3...) is not possible because when a stream is rolled back the execution number of the process instance in the new stream is still 1. Thus we have to use a combination the process instance execution number and the execution number of all the streams (and substreams) above it, thus something like _1_3?
archive_nnnnn rather than archive/nnnnn is possible, although perhaps makes the job of managing to not move the already archived files into the new archive directory a little trickier.
Tom Glanzman
A slight variant of my original suggestion is to use "N" where N=1,2,3,... but having no relation to the instance number. This is how I have implemented my own private rollback preparation scheme. For example, prior to rolling back a run, I work out the path to the log directory and create a directory "archive_N" into which I place everything (unless it is another archive directory), e.g., after a 2nd run of this stream:
archive_1/ eventId.txt logFile.txt pipeline_env pipeline_summary pipeline_wrapper
The value of "N" is automatically incremented should a subsequent iteration be needed. This scheme provides a unique and concise naming convention, and it preserves all processing history.