[
https://issues.apache.org/jira/browse/BEAM-12244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17490913#comment-17490913
]
Jeremy Lewi commented on BEAM-12244:
------------------------------------
The PR is still open; https://github.com/apache/beam/pull/14671
It looks like there was concern in the PR that the proposed change would break
environments.
It looks like progress has stalled trying to come up with an intelligent
solution that does the right thing automatically.
For the sake of unblocking this what if we went with the simpler to implement
solution of just adding a flag to let users directly control this?
Who are the primary approvers for the Python SDK and could decide whether that
would be sufficient at least as a stopgap?
> Failure to connect to expansion service with GRPC local secure channel
> ----------------------------------------------------------------------
>
> Key: BEAM-12244
> URL: https://issues.apache.org/jira/browse/BEAM-12244
> Project: Beam
> Issue Type: Bug
> Components: cross-language, io-py-kafka
> Reporter: Nir Gazit
> Priority: P3
> Time Spent: 5h 10m
> Remaining Estimate: 0h
>
> There seem to be a discrepancy between how Beam Python SDK connects to the
> job endpoint and the artifact endpoint (where it always uses insecure GRPC
> connection), and the expansion service (where it [tries to
> use|https://github.com/apache/beam/blob/master/sdks/python/apache_beam/transforms/external.py#L322]
> local secure channel if available in the GRPC module).
> This has caused an error to be thrown when trying to connect to a remote
> Flink cluster:
> {code:none}
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/apache_beam/transforms/ptransform.py",
> line 573, in __ror__
> result = p.apply(self, pvalueish, label)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/apache_beam/pipeline.py",
> line 689, in apply
> pvalueish_result = self.runner.apply(transform, pvalueish, self._options)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/apache_beam/runners/runner.py",
> line 188, in apply
> return m(transform, input, options)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/apache_beam/runners/runner.py",
> line 218, in apply_PTransform
> return transform.expand(input)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/apache_beam/transforms/external.py",
> line 325, in expand
> response = service.Expand(request)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/grpc/_channel.py",
> line 923, in __call__
> return _end_unary_response_blocking(state, call, False, None)
> File
> "/Users/nir.gazit/.pyenv/versions/beam/lib/python3.7/site-packages/grpc/_channel.py",
> line 826, in _end_unary_response_blocking
> raise _InactiveRpcError(state)
> grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated
> with:
> status = StatusCode.UNAVAILABLE
> details = "failed to connect to all addresses"
> debug_error_string =
> "{"created":"@1619629304.651319000","description":"Failed to pick
> subchannel","file":"src/core/ext/filters/client_channel/client_channel.cc","file_line":5397,"referenced_errors":[{"created":"@1619629304.651278000","description":"failed
> to connect to all
> addresses","file":"src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc","file_line":398,"grpc_status":14}]}"
> {code}
> I think all GRPC services (job, artifact, expansion) should use the same way
> to connect (currently insecure_channel)
--
This message was sent by Atlassian Jira
(v8.20.1#820001)