Python expression results are dropped by worker transport
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Domain
- api, backend, distributed-systems
Research direction
Start at the Python RPC server's set_one_of(ControlReturn, response) transport path and inspect the ControlReturn oneof alongside EvaluatedValue. Add the missing response member, then reproduce the issue with an EvaluatedValue containing 42 and confirm the transported ControlReturn preserves it.
Written by the indexing model from the issue text.
Description
What happened?
The worker service returns EvaluatedValue for EvaluatePythonExpression, but ControlReturn has no oneof member for that message type. The generic RPC wrapper therefore creates an empty return and silently drops the evaluated expression result.
Before: expression evaluates to a value -> worker wraps the reply -> empty ControlReturn reaches the coordinator
After: expression evaluates to a value -> EvaluatedValue is packed -> the result reaches the coordinator
Expected behavior:
ControlReturn should include the worker's EvaluatedValue response so expression results survive transport.
How to reproduce?
Create an EvaluatedValue containing 42 and pass it through the same set_one_of(ControlReturn, response) transport path used by the Python RPC server.
Observed on 70c21145887920528d7d5540e3fb790b43e8b759:
packed_member=None
envelope=ControlReturn()
response_value=42
Version/Branch
1.3.0-incubating-SNAPSHOT (main)
Commit Hash (Optional)
70c21145887920528d7d5540e3fb790b43e8b759
- Dominant language
- Scala
- Stars
- 316
- Forks
- 189
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 198
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/texera
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
ergoplatform/ergodocs#614 ·
-
area:ci enhancement requires-triage
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
apache/datafusion-comet#6078 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug delta-datalayout flink
Difficulty 2/5 1-3 hours Newbie friendliness 86/100