-
Notifications
You must be signed in to change notification settings - Fork 63
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
Regression: Hierarchy export did not work anymore #5634
Comments
You are right, this leads to problems here :/:
I will see if i can find ways to adress that or we have to revert the change. Edit: I am wondering wether we really need to check if the export of the child was succesful before exporting the parent here. If the child process cannot be exported the parent might be exported but it would not have any consequences since the workflow step will not be closed. The only consequence would be the generation of a parent process export file which will be overridden if the child gets exported again, or?
|
Thank you @BartChris for your investigation.
This should be the case, that the workflow export task remain open if the child export is aborted.
What is happening with the exported data depends on how it is used after. As long as the exported data itself is correct and belong all data then it is independent if the parent process is exported to many times.
I can go with this. |
A stricter variation, which would require more changes, would be to consider an export only as valid if the child and every parent is exported succesfully. I am not sure how to implement that, but this would maybe also be a way to address the problem that a process can pass validation even if the parent process is invalid: #5280. |
You are right. But this is difficult to implement. For me it would be fine if every hierarchical level could be exported. If one or more exports are failing is or should not be part of handling the export in first place.
Maybe this should be done in a second task or after thinking about exporting processes in general like: We at SLUB need first a good solution without many changes as we would go productive in September 2023 and can not wait for a solution until a few days before we start the migration. Currently we are checking and maybe go live with the master branch from March 1st with some additional changes which are merged after March 1st. |
Describe the bug
After the merge of pull request #5482 the hierarchy export did not work any more like in the 3.5.0 release: Only the process itself get exported. If the exported process is a hierarchy process this process did not contain any references in the logical struct map to its children and if the the process is a child then the parent process did not get exported additional any more.
To Reproduce
Expected behavior
Release
Export of hierarchical processes was working in 3.5.0 but not after February 15 2023 after merging the pull request #5482.
Additional context
I looked into the changes of pull request #5482 and after reverting the change in line 139 from
false
back totrue
in the ExportDMS class (https://github.com/kitodo/kitodo-production/pull/5482/files#diff-ef37fd2392d47f53a42fe639cf809b1cd47934294a4cedc3662adaca7f7441a2R139) the hierarchical export was working again like before.Edit: i did not check what is happening if this export is broken after I changed the value back to
true
. /EditI can understand that the return value of this method was changed to
false
to stop the asynchronous export if an error occurred in this exported process but changing this value tofalse
is stopping the hierarchical export too independent if an error occur or not. The return value in this method and line should be set to this value depending on how this async export was but this could be complicated as the export is done later in a separate thread and not at the moment where the code is executed.The text was updated successfully, but these errors were encountered: