Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Skip result deserialization for local activities and SideEffect when not replaying (mutableSideEffect already does this)

Open
#3,125 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
54/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
java
Domain
backend

Research direction

Start by reading SyncWorkflowContext.mutableSideEffectImpl, which the issue identifies as the existing pattern, then trace how SideEffect and Local Activities serialize and deserialize results. Check the relevant tests for replay and non-replay behavior; done means non-replaying execution returns the original result while replay still deserializes it.

Written by the indexing model from the issue text.

Description

enhancement

MutableSideEffect already avoids deserializing a result it just serialized as it keeps the original object and only deserializes when the workflow is replaying (SyncWorkflowContext.mutableSideEffectImpl)

Currently SideEffect and Local Activities dont do this - both serialize the result and immediately deserialize it again, even tho the original object is in same process.

Why it matters:
For cases where local activities can return larger results and/or run large num of local activities, the repeated deserialization can cost cpu.

Ask:
when workflow execution is not replaying, return the original object to SideEffect and Local Activity result similarly what MutableSideEffect does.

Dominant language
Java
Stars
434
Forks
260
Avg merge
2d 11h
Merged PRs (30d)
19

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from temporalio/sdk-java

All issues in temporalio/sdk-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.