Skip to content

Add REQUEST_TOO_LARGE workflow task failed cause and expose completion size limit - #838

Merged
simvlad merged 2 commits into
mainfrom
simvlad/pagination-errors
Jul 29, 2026
Merged

Add REQUEST_TOO_LARGE workflow task failed cause and expose completion size limit#838
simvlad merged 2 commits into
mainfrom
simvlad/pagination-errors

Conversation

@simvlad

@simvlad simvlad commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

What changed?
Added WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE to the workflow task failed cause enum. Added NamespaceInfo.Limits.workflow_task_completion_size_limit_error to communicate the server-enforced max RespondWorkflowTaskCompleted request size via DescribeNamespace.

Why?
When a workflow task completion exceeds the server's size limit we currently fail with the generic PAYLOADS_TOO_LARGE, which is misleading (no single payload is oversized). The new cause names the actual condition, and exposing the limit lets SDKs stay under it instead of discovering it by failing.

Breaking changes
None. Additive-only

Server PR
TODO

@simvlad
simvlad requested review from a team July 22, 2026 22:13
@simvlad
simvlad merged commit ae9d1d6 into main Jul 29, 2026
4 checks passed
@simvlad
simvlad deleted the simvlad/pagination-errors branch July 29, 2026 18:28
fretz12 pushed a commit that referenced this pull request Jul 29, 2026
…on size limit (#838)

**What changed?**
Added `WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE` to the workflow
task failed cause enum. Added
`NamespaceInfo.Limits.workflow_task_completion_size_limit_error` to
communicate the server-enforced max RespondWorkflowTaskCompleted request
size via DescribeNamespace.

**Why?**
When a workflow task completion exceeds the server's size limit we
currently fail with the generic `PAYLOADS_TOO_LARGE`, which is
misleading (no single payload is oversized). The new cause names the
actual condition, and exposing the limit lets SDKs stay under it instead
of discovering it by failing.

**Breaking changes**
None. Additive-only

**Server PR**
TODO
simvlad added a commit to temporalio/temporal that referenced this pull request Jul 31, 2026
…e limit (#11377)

## What changed?
- Workflow task completion buffer overflow now fails the WFT with
`WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE` instead of
`PAYLOADS_TOO_LARGE`.
- `DescribeNamespace` reports
`NamespaceInfo.Limits.workflow_task_completion_size_limit_error`,
  sourced from `history.workflowTaskCompletionBufferSizeLimit`.

API PR: temporalio/api#838

## Why?
`PAYLOADS_TOO_LARGE` is misleading here, no single payload is oversized,
the request total is. Exposing the limit lets SDKs page under it instead
of discovering it by failing.

## How did you test it?
- [x] built
- [ ] run locally and tested manually
- [x] covered by existing tests
- [x] added new unit test(s)
- [x] added new functional test(s)

## Potential risks
No
smuneebahmad pushed a commit to temporalio/temporal that referenced this pull request Aug 3, 2026
…e limit (#11377)

## What changed?
- Workflow task completion buffer overflow now fails the WFT with
`WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE` instead of
`PAYLOADS_TOO_LARGE`.
- `DescribeNamespace` reports
`NamespaceInfo.Limits.workflow_task_completion_size_limit_error`,
  sourced from `history.workflowTaskCompletionBufferSizeLimit`.

API PR: temporalio/api#838

## Why?
`PAYLOADS_TOO_LARGE` is misleading here, no single payload is oversized,
the request total is. Exposing the limit lets SDKs page under it instead
of discovering it by failing.

## How did you test it?
- [x] built
- [ ] run locally and tested manually
- [x] covered by existing tests
- [x] added new unit test(s)
- [x] added new functional test(s)

## Potential risks
No
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