Skip to content

Cross-cutting data attached to a workflow instance by WorkflowExecutionListener should survive process restarts #1645

Description

@mathecruz

What would you like to be added

Cross-cutting data attached to a workflow instance by WorkflowExecutionListener should survive process
restarts when persistence is enabled.

Why is this needed

When a workflow instance is resumed after a JVM restart, any data that lifecycle listeners
previously associated with that instance is lost. This breaks use cases where listeners need
continuity across restarts — such as keeping a distributed trace connected across the full lifetime
of a workflow, maintaining a correlation ID. There is currently no
supported way to preserve this kind of data through a restart without polluting the workflow's own
data model with infrastructure concerns.

Activity

  1. added
    javaPull requests that update java code
    on Aug 29, 2026
  2. fjtirado commented on Aug 31, 2026

    @fjtirado
    Collaborator

    You mean that additional objects associated to workflow instance should be stored? You put the emphasis on the listener, when actually anyone with access to a WorkflowIntance reference can add additional information to the instance.

  3. mathecruz commented on Aug 31, 2026

    @mathecruz
    CollaboratorAuthor

    Yes, I added the emphasis to WorkflowExecutionListener because the need to store additional data to be survived by JVM came from opentelemetry module, which make use of WorkflowExecutionListener to manage OTel spans. I think I should be more generic in the issue's description.

    The fact is: currently we can not add additional data to be stored during persistence, to be recovered after a recover.

  4. mathecruz commented on Aug 31, 2026

    @mathecruz
    CollaboratorAuthor

    This need came originally from this quarkiverse/quarkus-flow#902 (comment) in quarkus-flow project. I created a project to reproduce the behavior, if want to try https://github.com/mcruzdev/flowable.

  5. fjtirado commented on Aug 31, 2026

    @fjtirado
    Collaborator

    Yes, the feature is clear.
    The problem is to serialize the additional object into the db. That might be possible or not. In any case lets try.

  6. self-assigned this
    on Aug 31, 2026
  7. removed theissue type on Sep 28, 2026
  8. added theissue type on Sep 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

javaPull requests that update java code

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions