[
https://issues.apache.org/jira/browse/BEAM-7874?focusedWorklogId=290840&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-290840
]
ASF GitHub Bot logged work on BEAM-7874:
----------------------------------------
Author: ASF GitHub Bot
Created on: 07/Aug/19 22:49
Start Date: 07/Aug/19 22:49
Worklog Time Spent: 10m
Work Description: Hannah-Jiang commented on pull request #9218:
[BEAM-7874], [BEAM-7873] Distributed FnApiRunner bugfixs
URL: https://github.com/apache/beam/pull/9218#discussion_r311794392
##########
File path: sdks/python/apache_beam/runners/portability/fn_api_runner.py
##########
@@ -1386,7 +1386,8 @@ def get_worker_handlers(self, environment_id,
num_workers):
# assume it's using grpc if environment is not EMBEDDED_PYTHON.
if environment.urn != python_urns.EMBEDDED_PYTHON and \
self._grpc_server is None:
- self._grpc_server = GrpcServer(self._state, self._job_provision_info)
+ self._grpc_server = GrpcServer(
+ self._state, self._job_provision_info, num_workers)
Review comment:
Now I think I understand your comment, hopefully my understanding is correct.
Here is how I decide to throw an error.
keep `max_workers` with GrpcServer(), and whenever we need more threads than
`max_workers`, it throws out an error.
`max_workers = num_workers * len(self._environments)`
I still don't understand why we need to multiply ` len(self._environments)`
and how `num_workers` may change at each stage. Isn't if fixed?
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 290840)
Time Spent: 1h 40m (was: 1.5h)
> FnApi only supports up to 10 workers
> ------------------------------------
>
> Key: BEAM-7874
> URL: https://issues.apache.org/jira/browse/BEAM-7874
> Project: Beam
> Issue Type: Bug
> Components: sdk-py-core
> Reporter: Hannah Jiang
> Assignee: Hannah Jiang
> Priority: Blocker
> Fix For: 2.15.0
>
> Time Spent: 1h 40m
> Remaining Estimate: 0h
>
> Because max_workers of grpc servers are hardcoded to 10, it only supports up
> to 10 workers, and if we pass more direct_num_workers greater than 10,
> pipeline hangs, because not all workers get connected to the runner.
> [https://github.com/apache/beam/blob/master/sdks/python/apache_beam/runners/portability/fn_api_runner.py#L1141]
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)