There seem to be consensus here around adding this feature. I filed
BEAM-7933 <https://issues.apache.org/jira/browse/BEAM-7933> and assigned it
to me. @Robert I'll check the places where it makes sense to re-use the
timeout value for RPCs.
I should be able to publish a pr sometime around next week.

Thanks,
Enrico

On Fri, Aug 9, 2019 at 12:41 AM Robert Bradshaw <rober...@google.com> wrote:

> If we do provide a configuration value for this, I would make it have a
> fairly large default and ure-use the flag for all RPCs of similar nature,
> not tweeks for this particular service only.
>
> On Fri, Aug 9, 2019 at 2:58 AM Ahmet Altay <al...@google.com> wrote:
>
>> Default plus a flag to override sounds reasonable. Although from Dataflow
>> experience I do not remember timeouts causing issues and each new added
>> flag adds complexity. What do others think?
>>
>> On Thu, Aug 8, 2019 at 11:38 AM Kyle Weaver <kcwea...@google.com> wrote:
>>
>>> If we do make a default, I still think it should be configurable via a
>>> flag. I can't think of why the prepare, stage artifact, job state, or job
>>> message requests might take more than 60 seconds, but you never know,
>>> particularly with artifact staging, which might be uploading artifacts to
>>> distributed storage.
>>>
>>> I assume the run request itself would not be subject to timeouts, as
>>> running the pipeline can be assumed to take significantly longer than the
>>> setup work.
>>>
>>> Kyle Weaver | Software Engineer | github.com/ibzib | kcwea...@google.com
>>>
>>>
>>> On Thu, Aug 8, 2019 at 11:20 AM Enrico Canzonieri <enr...@yelp.com>
>>> wrote:
>>>
>>>> Default timeout with no flag may work as well.
>>>> The main consideration here is whether some api calls may take longer
>>>> than 60 seconds because of the complexity of the users' Beam pipeline. E.g.
>>>> Could job_service.Prepare() take longer than 60 seconds if the given Beam
>>>> pipeline is extremely complex?
>>>>
>>>> Basically if there are cases when the user code may cause the call
>>>> duration to increase to the point the timeout prevents submitting the app
>>>> itself then we should consider having a flag.
>>>>
>>>> On 2019/08/07 20:13:12, Ahmet Altay wrote:
>>>> > Could we pick a default timeout value instead of introducing a flag?
>>>> We use>
>>>> > 60 seconds as the default timeout for http client [1], we can do the
>>>> same>
>>>> > here.>
>>>> >
>>>> > [1]>
>>>> >
>>>> https://github.com/apache/beam/blob/3a182d64c86ad038692800f5c343659ab0b935b0/sdks/python/apache_beam/internal/http_client.py#L32>
>>>>
>>>> >
>>>> > On Wed, Aug 7, 2019 at 11:53 AM enrico canzonieri >
>>>> > wrote:>
>>>> >
>>>> > > Hello,>
>>>> > >>
>>>> > > I noticed that the calls to the JobServer from the Python SDK do
>>>> not have>
>>>> > > timeouts. If I'm not mistaken that means that the call to
>>>> pipeline.run()>
>>>> > > could hang forever if the JobServer is not running (or failing to
>>>> start).>
>>>> > > E.g.>
>>>> > >
>>>> https://github.com/apache/beam/blob/master/sdks/python/apache_beam/runners/portability/portable_runner.py#L307>
>>>>
>>>> > > the call to Prepare() doesn't provide any timeout value and the
>>>> same>
>>>> > > applies to other JobServer requests.>
>>>> > > I was considering adding a --job-server-request-timeout to the>
>>>> > > PortableOptions>
>>>> > > >
>>>> > > class to be used in the JobServer interactions inside
>>>> probable_runner.py.>
>>>> > > Is there any specific reason why the timeout is not currently
>>>> supported?>
>>>> > > Does anybody have any objection adding the jobserver timeout? I
>>>> could>
>>>> > > volunteer to file a ticket and submit a pr for this.>
>>>> > >>
>>>> > > Cheers,>
>>>> > > Enrico Canzonieri>
>>>> > >>
>>>> >
>>>>
>>>>

Reply via email to