Symptom
When running a Mass Data Run job on a sub node with more than 50 instances with Parallel Processing enabled since the creation, the run doesn't split the runs in packages of 50.
The expectation would be that the MDR job would split the selected instances into multiple packages of 50 instances each. However, this did not occur, and the job executed in Sequential Processing.
Environment
- SAP Cloud Applications Studio
- SAP Cloud for Customer
- SAP Business ByDesign
Reproducing the Issue
- Schedule and run a Mass Data Run with enabled Parallel Processing since its creation with more than 50 instances.
- Notice in the results that the MDRO ran in sequential processing.
Cause
During MDRO execution, all instances are processed in packages of 5000 instances each.
If parallel processing is enabled, a maximum of 6 packages of 50 each are created in each cluster with all packages executed parallelly.
The cause of the issue is that when parallel processing is enabled, packages of 50 instances each are only created if the Business Object (BO) Node on which the MDR is created is separately lockable.
By default, only the root node of BOs are separately lockable, but this is not the case for sub-nodes.
Due to subnodes not being separately lockable, packaging will not happen during MDR execution.
Note:
- If parallel processing is not enabled (or enabled, but on a node/subnode not separately lockable) and the MDRO processes more than 5000 instances, all instances in a package are processed in a single package of 5000 and one instance is processed after another (sequential).
Resolution
To make a node/subnode separately lockable, an annotation must be added to the sub node definition in BODL.
Keywords
SDK, Business Object Node, Lock, Annotation, ABSL, MDRO, Packaging, MDR. , KBA , AP-RC-BDS-MDR , ByDesign Studio Mass Data Run , Problem