Defect #1215
closedException in transformation script stops personal processes
100%
Description
In my case user had invalid required attribute from HR system. So provisioning into AD should failed.
But this fail caused stop of the contracting procces for all other users.
From this point, the process will never run again, because it is trying to handle the invalid user first and failed every time.
Files
Related issues
Updated by Radek Tomiška over 6 years ago
- Assignee changed from Radek Tomiška to Petr Michal
Add please affected version and other required informations, at least scenario to reproduce this issue (sync or manually LRT execution, which LRT ... ?).
Updated by Radek Tomiška about 6 years ago
- Status changed from New to In Progress
- Assignee changed from Petr Michal to Radek Tomiška
- Target version set to Onyx (9.3.0)
Updated by Radek Tomiška about 6 years ago
- Related to Defect #1309: HrEnableContractProcess ends with error added
Updated by Radek Tomiška about 6 years ago
- Related to Task #1290: Separate processing of items in tasks added
Updated by Radek Tomiška about 6 years ago
- Status changed from In Progress to Needs feedback
- Assignee changed from Radek Tomiška to Vít Švanda
- % Done changed from 0 to 90
I implemented two new options (methods) to stateful LRT interface ('SchedulableStatefulExecutor'):
- 'continueOnException' - LRT will continue, after some item fails
- 'requireNewTransaction' - Each item will be processed in new transaction - ensures successfully processed item will be commited after other item or LRT task fails. Use this property everywhere, when LRT can be executed synchronously (e.g. for synchronization dependent task, which are executed synchronously and wrapped which one parent transaction).
Both new methods of 'AbstractSchedulableStatefulExecutor' super class returns 'false' by default to maintain backward compatibility (e.g. tasks for automatic roles solves this feature themselves or some other tasks doesn't need this features at all).
Doc:
https://wiki.czechidm.com/devel/documentation/application_configuration/dev/scheduled_tasks/task-scheduler#stateful_task_executors
Commit:
https://github.com/bcvsolutions/CzechIdMng/commit/91a837a7b862a1e17be506beae4f88a404b97c94
https://github.com/bcvsolutions/CzechIdMng/commit/0cd19ac12a6319dd662a3e3d578dd41167ae5d5a
This two properties are used for HR processed (all three) => each item is processed separately. Use this new properties in your custom LRT, when the same behavior is needed.
Could you do a feedback pls?
Updated by Ondřej Kopr about 6 years ago
- Assignee changed from Vít Švanda to Ondřej Kopr
Updated by Ondřej Kopr about 6 years ago
- File recalc.png recalc.png added
- Status changed from Needs feedback to Resolved
- Assignee changed from Ondřej Kopr to Radek Tomiška
- % Done changed from 90 to 100
I checked updated hr process recalculation and it works with throw exception.
I also checked throw exception during automatic role recalculation and it also works.
Thank you for update. Add this settings for all LRT is good idea. This is my first meeting with PlatformTransactionManager
Updated by Radek Tomiška about 6 years ago
- Status changed from Resolved to Closed