The GitHub Actions job "Build and push images" on texera.git/main has succeeded.
Run started by GitHub user bobbai00 (triggered by bobbai00).

Head commit for run:
3344022f6f6646ddc66bf7b25e51e8525779f260 / Matthew B. <[email protected]>
fix: SourceOperator is_source default broken by name mangling (#5007)

### What changes were proposed in this PR?

Fixes a name-mangling bug in
amber/src/main/python/core/models/operator.py.
  
Operator declared __internal_is_source (double underscore), which Python
rewrites per class. So SourceOperator.__internal_is_source = True was
stored as _SourceOperator__internal_is_source, while the property kept
reading
_Operator__internal_is_source. Result: SourceOperator subclasses
defaulted to is_source = False, and only worked because ExecutorManager
called the setter afterward.

  Fix:

in SourceOperator and TableOperator.__init__, write to the base-class
mangled slot directly via _Operator__internal_is_source. Operator keeps
the __internal_is_source double-underscore form. Also removed a dead,
mangled line in TableOperator.__init__.

### Any related issues, documentation, or discussions?
Closes: #4736 


### How was this PR tested?
  Updated amber/src/test/python/core/models/test_operator.py:
- Removed the bug-pinning test that asserted on the old divergent
mangled attributes.
- Removed the xfail marker from the contract test, which now passes:
SourceOperator() reports is_source is True.

  All 29 tests in test_operator.py pass.


### Was this PR authored or co-authored using generative AI tooling?
Co-authored with Claude Opus 4.7 in Compliance with ASF

Report URL: https://github.com/apache/texera/actions/runs/25648145874

With regards,
GitHub Actions via GitBox

Reply via email to