Skip to content

fix: old workflows failing to run after input port field rename#4379

Merged
aglinxinyuan merged 5 commits into
mainfrom
xinyuan-fix-json
Apr 14, 2026
Merged

fix: old workflows failing to run after input port field rename#4379
aglinxinyuan merged 5 commits into
mainfrom
xinyuan-fix-json

Conversation

@aglinxinyuan
Copy link
Copy Markdown
Contributor

@aglinxinyuan aglinxinyuan commented Apr 13, 2026

What changes were proposed in this PR?

This PR adds a backward-compatibility fix for older saved workflows that still contain the legacy allowMultiInputs field in serialized input port definitions.

After the input port model was changed to use disallowMultiInputs, older workflow JSON in the database could no longer be deserialized correctly and workflow execution failed with an UnrecognizedPropertyException. This PR updates backend deserialization for PortDescription to ignore the obsolete allowMultiInputs field so those existing workflows can still run without requiring migration or manual cleanup.

We can remove this change later.

Any related issues, documentation, discussions?

Closes #4378

How was this PR tested?

Tested with the workflow generated by an older version of Texera (before PR #4342).

Was this PR authored or co-authored using generative AI tooling?

No.

@aglinxinyuan aglinxinyuan self-assigned this Apr 13, 2026
Copilot AI review requested due to automatic review settings April 13, 2026 23:13
@github-actions github-actions Bot added frontend Changes related to the frontend GUI and removed fix labels Apr 13, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a frontend backward-compatibility shim to allow executing older saved workflows whose port JSON still contains the legacy allowMultiInputs field, by stripping that legacy field from the logical plan payload sent to the backend.

Changes:

  • Sanitize operator inputPorts in ExecuteWorkflowService.getLogicalPlanRequest to remove allowMultiInputs before sending the plan to the backend.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread frontend/src/app/workspace/service/execute-workflow/execute-workflow.service.ts Outdated
Comment thread frontend/src/app/workspace/service/execute-workflow/execute-workflow.service.ts Outdated
Comment thread frontend/src/app/workspace/service/execute-workflow/execute-workflow.service.ts Outdated
@github-actions github-actions Bot added common and removed frontend Changes related to the frontend GUI labels Apr 13, 2026
Copy link
Copy Markdown
Contributor

@Xiao-zhen-Liu Xiao-zhen-Liu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@aglinxinyuan aglinxinyuan enabled auto-merge (squash) April 14, 2026 00:01
@aglinxinyuan aglinxinyuan merged commit b74f9c9 into main Apr 14, 2026
11 checks passed
@aglinxinyuan aglinxinyuan deleted the xinyuan-fix-json branch April 14, 2026 00:06
SarahAsad23 pushed a commit to madisonmlin/texera that referenced this pull request May 20, 2026
…he#4379)

### What changes were proposed in this PR?
This PR adds a backward-compatibility fix for older saved workflows that
still contain the legacy allowMultiInputs field in serialized input port
definitions.

After the input port model was changed to use disallowMultiInputs, older
workflow JSON in the database could no longer be deserialized correctly
and workflow execution failed with an UnrecognizedPropertyException.
This PR updates backend deserialization for PortDescription to ignore
the obsolete allowMultiInputs field so those existing workflows can
still run without requiring migration or manual cleanup.

We can remove this change later.

### Any related issues, documentation, discussions?
Closes apache#4378

### How was this PR tested?
Tested with the workflow generated by an older version of Texera (before
PR apache#4342).


### Was this PR authored or co-authored using generative AI tooling?
No.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

backward compatibility issue with old workflows

3 participants