-
Notifications
You must be signed in to change notification settings - Fork 638
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 in deploying large payloads #13233
Comments
There are several solution ideas:
|
@sdorokhova Can you verify for me that Operate consumes the @RomanJRW Can you verify the same as above, but for Optimize? |
@sdorokhova Perfect! That's exactly what I mean. I should've mentioned that it concerns the ES indices I was hoping you weren't reading the BPMN/DMN resources from the |
13239: Deployment payload size regression tests r=korthout a=korthout ## Description <!-- Please explain the changes you made here. --> Adds a regression test for the maximum deployment payload size currently possible on a 3-partition cluster. This also cleans up the other tests related to the size of the deployment's payload in an effort to clarify what they truly verify: - `CreateLargeDeploymentTest.shouldRejectDeployIfResourceIsTooLarge` - tests that the incoming request's maxMessageSize is tested - is a regression test against #12591 - `DeploymentRejectionTest.shouldRejectDeploymentIfResourceIsTooLarge` - verifies that the deployment command is rejected when its resources fit the max message size but still exceed the batch record size (due to follow-up records) - `CreateDeploymentTest.shouldRejectDeployIfResourceIsTooLarge` - verifies that the client's request is rejected when its resources fit the max message size but still exceed the batch record size (due to follow-up records) > **Note** This pull request explicitly targets `stable/8.2` as all these tests succeed there, but some will not succeed on `main` due to #13233. ## Related issues <!-- Which issues are closed by this PR or are related --> relates to #13233 Co-authored-by: Nico Korthout <nico.korthout@camunda.com>
@megglos Correct, the regression only exists on |
This test should no longer be ignored when the regression is fixed. See: #13233
This test should no longer be ignored when the regression is fixed. See: #13233
13291: [Backport stable/8.1] Deployment payload size regression tests r=remcowesterhoud a=korthout ## Description <!-- Link to the PR that is back ported --> Backport of - #13239 There were conflicts, please see the commit messages. I also had to adjust a test case for this specific branch. ## Related issues <!-- Link to the related issues of the origin PR --> relates to #13233 Co-authored-by: Nico Korthout <nico.korthout@camunda.com>
13292: [Backport stable/8.0] Deployment payload size regression tests r=remcowesterhoud a=korthout ## Description <!-- Link to the PR that is back ported --> Backport of - #13239 There were conflicts, please see the commit messages. This backport misses the commit bdcb0d9 because the file `too_large_process.bpmn` did not exist on this branch. I also had to ignore / remove some test cases because the related bug was not fixed / feature was not implemented on this branch. And I had to adjust a test case for this specific branch. ## Related issues <!-- Link to the related issues of the origin PR --> relates to #13233 Co-authored-by: Nico Korthout <nico.korthout@camunda.com>
13290: [Forwardport main] Deployment payload size regression tests r=korthout a=korthout ## Description <!-- Link to the PR that is back ported --> Forwardport of - #13239 There were conflicts, please see the commit messages. ## Related issues <!-- Link to the related issues of the origin PR --> relates to #13233 Co-authored-by: Nico Korthout <nico.korthout@camunda.com>
Hey @korthout - apologies for slow response, I have had FTO. I can confirm the same for Optimize, that we read from |
Now that both Operate and Optimize have confirmed that they don't access the resource from the
Of course, we'd need to inform users that we're no longer writing the resource for that event in the Update Guide. As this would be breaking user space. The documentation should clarify that the resource is available in the |
We've introduced a regression on deploying large payloads on multi-partition clusters with
Deployment:Create
processor to new record distribution behavior #11661Before that pull request, a deployed resource was written in two follow-up events:
Deployment:CREATED
Process:CREATED
(orDecisionRequirements:CREATED
depending on resource)The specialized
DeploymentDistribution
would take the resource from theDeployment:CREATED
to distribute it to the other partitions.With #11456, a new event
CommandDistribution:STARTED
was introduced to store the command for distribution. For deployments, this contains the entire Deployment incl. the resource. This event is only appended on multi-partition clusters. But, when it is appended, it further reduces the maximum payload size because the follow-up events reach theMAX_BATCH_SIZE
restriction with a lower payload size.This regression lowers the maximum payload size of deployments from ~2MB down to ~1.4MB.
The regression does not exist on single partition clusters as these do not require the distribution of the deployment.
Suggested solution:
Deployment:CREATED
event, only in theProcess:CREATED
and theDecisionRequirements:CREATED
events (estimate: x-small)Of course, we'd need to inform users that we're no longer writing the resource for that event in the Update Guide. As this would be breaking user space. The documentation should clarify that the resource is available in the
Process:CREATED
and theDecisionRequirements:CREATED
instead.The text was updated successfully, but these errors were encountered: