Asynchronous provisioning and ProvisioningQueueTaskExecutor doesn't execute provisioning operation
It is really hard to debug and simulate. But there is use case:
On enviroment is enabled asynchronous provisioning for system and LRT ProvisioningQueueTaskExecutor has the cron 0 0/1 * * * ? (every minute).
While LRT start execute provisioning queue and some process or user create new items for same queue. The next execution of LRT ProvisioningQueueTaskExecutor doesn't process new operation in queue and these operations still exists in Create state. Manually executions works good.
This is little bit problem for synchronization because while update entity it will be throw many new operations and these operation it will not nevermore executed.
Maybe problem with staful LRTs.
Locally I can simulate exactly same behavior.
Affected versions: probably all from Asynchronous provisioning feature.
Tested version: 9.3.*
#4 Updated by Radek Tomiška 8 months ago
- Status changed from New to Needs feedback
- Assignee changed from Radek Tomiška to Ondřej Kopr
- Target version set to Onyx (9.3.3)
- % Done changed from 0 to 90
I was able to find and fix this issue - it was related to stateful task executors and i had to add synchronization blocks into provisioning executor (insert vs. process the queue).
Could you do a feedback please?
#5 Updated by Ondřej Kopr 8 months ago
- File test.gif test.gif added
- Status changed from Needs feedback to Resolved
- Assignee changed from Ondřej Kopr to Radek Tomiška
- % Done changed from 90 to 100
Awesome, thank you for fix this issue. I tested exactly same behavior and now it works now. Second run successfully processed all items in provisioning queue. Thank you.