mohamedawnallah commented on PR #35467:
URL: https://github.com/apache/beam/pull/35467#issuecomment-3300354546
@damccorm –This PR is now ready for review. The precommit python ml test
failure is unrelated and seems a transient error:
```
=================================== FAILURES
===================================
_____________ PyODIForestTest.test_scoring_with_unmatched_features
_____________
[gw2] linux -- Python 3.9.22
/runner/_work/beam/beam/sdks/python/test-suites/tox/py39/build/srcs/sdks/python/target/.tox-py39-ml/py39-ml/bin/python
grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC
that terminated with:
status = StatusCode.DEADLINE_EXCEEDED
details = "Deadline Exceeded"
debug_error_string = "UNKNOWN:Error received from peer
{created_time:"2025-09-16T19:57:35.819235229+00:00", grpc_status:4,
grpc_message:"Deadline Exceeded"}"
>
During handling of the above exception, another exception occurred:
self = <apache_beam.ml.anomaly.detectors.pyod_adapter_test.PyODIForestTest
testMethod=test_scoring_with_unmatched_features>
def test_scoring_with_unmatched_features(self):
# The model is trained with two features: a, b, but the input features
of
# scoring has one more feature (target).
# In this case, we should either get rid of the extra feature(s) from
# the scoring input or set `features` when creating the offline
detector
# (see the `test_scoring_with_matched_features`)
detector = PyODFactory.create_detector(self.pickled_model_uri)
options = PipelineOptions([])
# This should raise a ValueError with message
# "X has 3 features, but IsolationForest is expecting 2 features as
input."
with self.assertRaisesRegex(Exception, "is expecting 2 features"):
with beam.Pipeline(options=options) as p:
> _ = (
p | beam.Create(self.get_test_data_with_target())
| beam.Map(
lambda x: beam.Row(
**dict(zip(["a", "b", "target"], map(int, x)))))
| beam.WithKeys(0)
| AnomalyDetection(detector=detector))
E AssertionError: "is expecting 2 features" does not match
"<_MultiThreadedRendezvous of RPC that terminated with:
E status = StatusCode.DEADLINE_EXCEEDED
E details = "Deadline Exceeded"
E debug_error_string = "UNKNOWN:Error received from peer
{created_time:"2025-09-16T19:57:35.819235229+00:00", grpc_status:4,
grpc_message:"Deadline Exceeded"}"
E >"
apache_beam/ml/anomaly/detectors/pyod_adapter_test.py:149: AssertionError
----------------------------- Captured stderr call -------------------------
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]