Skip to content

Operator output port result cache (MVP) #5881

Description

@Xiao-zhen-Liu

Feature Summary

Texera runs a workflow from the start every time, even when the user changed only one operator near the end. This adds an operator output port result cache: on a re-run, an output port whose upstream computation is unchanged reads its saved result instead of recomputing it, for faster iteration.

The MVP always reuses a matched port's result (full reuse); there is no cost-based reuse decision and no eviction, which are future work. When no port is matched, the system behaves exactly as today, so the work can land inactive and turn on once results are saved.

Design and rationale: Discussion #5880.

Proposed Solution or Design

This umbrella issue tracks the tasks that deliver the feature (the sub-issues below). They are independent units of work; each changes behavior only when a cache result is matched, so each can be reviewed on the guarantee that an empty cache reproduces current behavior. Real prerequisites are noted in each task.

Notes:

  • Generated code (jOOQ for the table, protobuf for the metrics flag) is not committed; the changes ship the source and the build regenerates the rest.
  • The implementation is re-derived from the prototype branch onto current main, not merged from it directly.

Affected Area

Workflow Engine (Amber), Storage / Metadata, Workflow UI

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions