Skip to content

Commit dffa53f

Browse files
authored
Correctly exclude prism when using external transforms (apache#36049)
1 parent a2f9fb8 commit dffa53f

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

sdks/python/apache_beam/runners/direct/direct_runner.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,14 @@ def accept(self, pipeline, is_interactive):
137137
self.supported_by_prism_runner = False
138138
else:
139139
pipeline.visit(self)
140+
# Avoid circular import
141+
from apache_beam.pipeline import ExternalTransformFinder
142+
if ExternalTransformFinder.contains_external_transforms(pipeline):
143+
# TODO(https://github.com/apache/beam/issues/33623): Prism currently
144+
# seems to not be able to consistently bring up external transforms.
145+
# It does sometimes, but at volume suites start to fail. We will try
146+
# to enable this in a future release.
147+
self.supported_by_prism_runner = False
140148
return self.supported_by_prism_runner
141149

142150
def visit_transform(self, applied_ptransform):
@@ -145,12 +153,6 @@ def visit_transform(self, applied_ptransform):
145153
# being used.
146154
if isinstance(transform, TestStream):
147155
self.supported_by_prism_runner = False
148-
if isinstance(transform, beam.ExternalTransform):
149-
# TODO(https://github.com/apache/beam/issues/33623): Prism currently
150-
# seems to not be able to consistently bring up external transforms.
151-
# It does sometimes, but at volume suites start to fail. We will try
152-
# to enable this in a future release.
153-
self.supported_by_prism_runner = False
154156
if isinstance(transform, beam.ParDo):
155157
dofn = transform.dofn
156158
# TODO(https://github.com/apache/beam/issues/33623): Prism currently

0 commit comments

Comments
 (0)