Skip to content

Remove inheritVariables for processBatches call activities - #1893

Merged
stiv03 merged 2 commits into
masterfrom
feature/remove-inherit-variables-processBatches
Aug 14, 2026
Merged

Remove inheritVariables for processBatches call activities#1893
stiv03 merged 2 commits into
masterfrom
feature/remove-inherit-variables-processBatches

Conversation

@stiv03

@stiv03 stiv03 commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

LMCROSSITXSADEPLOY-3029

Replace flowable:inheritVariables="true" on the processBatches call activities in rollback-mta, xs2-deploy and xs2-bg-deploy with an explicit flowable:in variable list, so only the variables the subprocess actually needs are passed instead of the whole parent variable map.

The required set was derived from:

  • the processBatches step (ExtractBatchedServicesWithResolvedDynamicParametersStep) and its SyncFlowableStep base (correlationId, isSecurityEnabled, stepPhase),
  • the variables it forwards to createOrUpdateServicesSubProcess (already an explicit flowable:in list), minus variables produced inside processBatches itself: servicesToCreate (written, never read) and serviceToProcess (the child multi-instance element variable). dynamicResolvableParameters is kept because the step reads it before overwriting it. batchToProcess remains the caller's multi-instance element variable and is injected per iteration.

@stiv03
stiv03 marked this pull request as draft August 7, 2026 12:57
@stiv03
stiv03 force-pushed the feature/remove-inherit-variables-processBatches branch 2 times, most recently from 16ec113 to 527dfef Compare August 11, 2026 06:56
@stiv03
stiv03 marked this pull request as ready for review August 12, 2026 05:41
</extensionElements>
</sequenceFlow>
<callActivity id="processBatchesSequentially" name="Process Resource Batches Sequentially" flowable:async="true" calledElement="processBatches" flowable:calledElementType="key" flowable:inheritVariables="true" flowable:completeAsync="true" flowable:fallbackToDefaultTenant="false">
<callActivity id="processBatchesSequentially" name="Process Resource Batches Sequentially" flowable:async="true" calledElement="processBatches" flowable:calledElementType="key" flowable:completeAsync="true" flowable:fallbackToDefaultTenant="false">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Variable externalLoggingServiceConfigurations seems to be missing for the new cloud logging feature. Maybe needed in all diagrams

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added it

@IvanBorislavovDimitrov

Copy link
Copy Markdown
Contributor

Add LMCROSSITXSADEPLOY-3029 in commit as well

stiv03 added 2 commits August 13, 2026 10:07
Replace flowable:inheritVariables="true" on the processBatches call
activities in rollback-mta, xs2-deploy and xs2-bg-deploy with an explicit
flowable:in variable list, so only the variables the subprocess actually
needs are passed instead of the whole parent variable map.

The required set was derived from:
- the processBatches step (ExtractBatchedServicesWithResolvedDynamicParametersStep)
  and its SyncFlowableStep base (correlationId, isSecurityEnabled, stepPhase),
- the variables it forwards to createOrUpdateServicesSubProcess (already an
  explicit flowable:in list),
minus variables produced inside processBatches itself: servicesToCreate
(written, never read) and serviceToProcess (the child multi-instance element
variable). dynamicResolvableParameters is kept because the step reads it before
overwriting it. batchToProcess remains the caller's multi-instance element
variable and is injected per iteration.

Verified: FlowableEngineTest and
ExtractBatchedServicesWithResolvedDynamicParametersStep tests pass.
Add externalLoggingServiceConfigurations to the processBatches flowable:in
list in all three diagrams (xs2-deploy, xs2-bg-deploy, rollback-mta). The
createOrUpdateServices child call activity forwards this variable and every
step reads it via ProcessStepHelper for cloud logging export, so it must be
passed into the processBatches subprocess now that inheritance is removed.

Addresses review comment on PR #1893.
@stiv03
stiv03 force-pushed the feature/remove-inherit-variables-processBatches branch from 527dfef to 4bb5beb Compare August 13, 2026 09:42
@sonarqubecloud

Copy link
Copy Markdown

@Yavor16 Yavor16 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you check if the following variables must be added:
isServiceBindingKeyOperationInProgress
waitBindServiceTimeout
wasServiceBindingKeyOperationAlreadyDone

@stiv03
stiv03 merged commit f446a2a into master Aug 14, 2026
7 of 8 checks passed
@stiv03
stiv03 deleted the feature/remove-inherit-variables-processBatches branch August 14, 2026 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants