You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Clint Priest (Jira)" <ji...@apache.org> on 2020/05/15 22:39:00 UTC
[jira] [Comment Edited] (BEAM-7514) Support streaming on the Python
fn_api_runner
[ https://issues.apache.org/jira/browse/BEAM-7514?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17108684#comment-17108684 ]
Clint Priest edited comment on BEAM-7514 at 5/15/20, 10:38 PM:
---------------------------------------------------------------
The specific exception I'm getting is this:
{code:java}
File "C:\code\python\venv\beam\lib\site-packages\apache_beam\transforms\trigger.py", line 782, in get_current_time
return self._clock.time()
AttributeError: 'NoneType' object has no attribute 'time'
{code}
I traced this back a few steps, more during the setup/initialization and found this comment in `fn_api_runner.py:389`
{code:java}
# TODO(pabloem, BEAM-7514): Trigger driver needs access to the clock
# note that this only comes through if windowing is default - but what
# about having multiple firings on the global window.
# May need to revise.
{code}
The cause is related to using a WindowInto on a bounded source, here are my WindowInto lines:
{code:java}
| beam.WindowInto(
window.GlobalWindows(),
trigger=trigger.Repeatedly(
trigger.AfterAny(
trigger.AfterCount(10),
trigger.AfterProcessingTime(1 * 60),
),
),
accumulation_mode=AccumulationMode.DISCARDING
)
{code}
If I comment out the AfterProcessingTime() then the error doesn't show (but windowing doesn't seem to work at all); after the first GroupByKey() I have an empty collection.
was (Author: cpriest):
The specific exception I'm getting is this:
{code:java}
File "C:\code\python\venv\beam\lib\site-packages\apache_beam\transforms\trigger.py", line 782, in get_current_time
return self._clock.time()
AttributeError: 'NoneType' object has no attribute 'time'
{code}
I traced this back a few steps, more during the setup/initialization and found this comment in `fn_api_runner.py:389`
{code:java}
# TODO(pabloem, BEAM-7514): Trigger driver needs access to the clock
# note that this only comes through if windowing is default - but what
# about having multiple firings on the global window.
# May need to revise.
{code}
The cause is related to using a WindowInto on a bounded source, here are my WindowInto lines:
{code:java}
| beam.WindowInto(
window.GlobalWindows(),
trigger=trigger.Repeatedly(
trigger.AfterAny(
trigger.AfterCount(10),
trigger.AfterProcessingTime(1 * 60),
),
),
accumulation_mode=AccumulationMode.DISCARDING
)
{code}
If I comment out the AfterProcessingTime() then the error doesn't show (but windowing doesn't seem to work at all); after the first GroupByKey() I have an empty collection.
> Support streaming on the Python fn_api_runner
> ---------------------------------------------
>
> Key: BEAM-7514
> URL: https://issues.apache.org/jira/browse/BEAM-7514
> Project: Beam
> Issue Type: Bug
> Components: sdk-py-core
> Reporter: Pablo Estrada
> Assignee: Pablo Estrada
> Priority: Major
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)